Today the first TP-Link MR3040 arrived so I’m about to follow the awesome instructions prepared by Jason Griffey over at Librarybox.us who forked the Piratebox project that David Darts initially setup and made available to anyone to build on.
Jason’s Librarybox project really captured what we have been trying to develop with a tool for easily sharing over wifi digital Bible resources. We have explored the Airstash and Seagate’s Satellite harddrive (with built-in wifi). These and other devices are becoming more sought after by users of iPads and tablets as they enable large media files to be stored on them and accessed over wifi by the tablet, rather than storing them on the actual tablet.
Initially for me, the user interface for these devices wasn’t what I was looking for. I don’t want people to have to download an app to simply access files. I don’t want an interface which isn’t mobile friendly. Any interface needs to be simple and absolutely intuitive. Finding Jason’s Librarybox project has been fantastic, so Im about to see what it’s like.
Jason has released it under a licensing model known as GPLv2, see http://www.gnu.org/licenses/gpl-2.0.html. In a nutshell this means
The hardware that I’m using to setup:
- TP-Link MR3040
- 8GB USB memory stick
- Download the new firmware (openwrt) for the MR3040 (I used the version 2 firmware)
- Download Librarybox v2 software (zip file)
- Unzip the install_librarybox.zip file, so that you are left with an install folder, and copy both the install folder AND the firmware file onto the FAT 32 formatted USB stick. The only two things on the USB drive should be a folder called “install” copied from the unzipped install_librarybox.zip file and the openwrt firmware.
- Plug the FAT 32 formatted USB drive into the router’s USB port.
- While doing this firmware upgrade be sure NOT to unplug the router or disconnect the ethernet cable.
- If the router has a selection switch for mode ensure that it’s set to WISP.
- Connect the router via ethernet cable to your computer, connect it to a power source. If you are on a laptop, you may have to temporarily disable wi-fi to make sure that your computer connects directly to the router over Ethernet.
- Open a web browser, and type the address http://192.168.0.1 into the address bar.
- Enter the default username & password (admin & admin).
- Navigate to System Tools > Firmware Upgrade and select the OpenWRT firmware that you downloaded in Step 1.
As much as I was bursting to see things working I took Jason’s advice and waited 10 minutes for the firmware upgrade to fully complete. The MR3040 restarted and I started to think we were in business.
One problem I had though was the Librarybox install wasnt loading. I had a look at my network settings to see if I had an IP address and remembered I was still connected to the ethernet.
Once I disconnected that, connected the the devices wifi, things burst forth as they should have!
Once I was sure that the MR3040 had been upgraded and Librarybox running, I turned off the MR3040, unplugged the USB, put the USB into my laptop and copied a few files into the /LibraryBox/Shared folder.
I plugged the USB back into the router, turned the router on, waited a couple of minutes, then on my laptop joined the network SSID – LibraryBox – Free Content! (no password necessary)
I now see this webpage below…..
and on my iPhone….
I was really pleased with how easy this install went – obviously due to Jason Griffey’s work and solid instructions! Thanks mate! There’s a couple of cold ones on ice for your future visit to Cairns…..
Next step for me is to add a variety of file types and do some field testing of the device to see what happens. A great feature of the code is that it records a count on the number of times a file is downloaded. This is the only data the software records which is great. It confirms for me that people’s identity is being protected but it also gives me some feedback to see how many times files have been downloaded.
Ill also be looking at how I can customise the BibleBox interface and make sure I understand the licensing requirements of GPLv2 to comply with providing code and resources openly.