Rachel On alternate Hardware Platform

Hello All. Apologies if this has been asked/answered somewhere. I would be glad to be pointed to any answers on the forum if any.

So I am interested in deploying Rachel for a number of educational institutions over the next couple of months. I initially wanted to go with the Rachel Pi but was somewhat put off by a caveat on the store that insinuated that Rachel Pi wasn’t a robust solution. I assume that this is because of the SD card vulnerability. Given that the Pi 3 can boot from an external HDD would it be feasible to etch the RachelPi image on a HDD and have the PI boot from such HDD? Would this be a robust enough setup?

Also I am considering using an alternate single board computer (SBC) called the Odroid XU4 Home Cloud 1 which has considerably more processing power and RAM than the PI. However the Odroid only boots from an SD or eMMC although it natively supports access to a SATA HDD. Will it be possible to deploy Rachel on this Odroid such that it boots from say an eMMC/SD but have Rachel run of the SATA HDD?

Every idea and suggestions are welcome. Thanks in advance for all the suggestions and advice

Hello,

Booting from USB is available with Raspbian Stretch. The current Rachel-Pi image is from an older Raspbian version that doesn’t support USB booting. I’m working the bugs out of a new installer script that supports stretch. It should be available soon and Jeremy has mentioned they will create a new Stretch image afterwards. The MicroSD card is a huge bottleneck so it should run much faster and possibly increase the number of connected devices, but I can’t say for sure without proper testing. MicroSD cards are also prone to corrupting or simply ceasing to work. The Rachel device is still probably the most robust solution for a large number of connections. I have run Rachel off of a flash drive and also a 314GB PiDrive in a PiDrive enclosure with no problems, but the pi is limited to USB 2.0. There is a SATA expansion board for the Raspberry Pi for ~$30, but that introduces more variables for things to go wrong on deployment.

Theoretically you can run Rachel on anything. I have installed it on a $20 GL.iNet GL-MT300N-V2 router for instance. On a Raspberry Pi Zero W and Raspberry Pi 2, you can put bootcode.bin on a small 1gb MicroSD card, and then the operating system on a USB Device and it will boot and run Rachel from there. I assume that’s a similar situation with the Odroid. The advantage of using a Raspberry Pi is that it has been tested by others, the installation is ready and easy, there’s a large community around it for support, and they’re generally cheaper. Getting the installation stable on other devices is surprisingly time consuming.

My suggestion would be to wait for a new Rachel Pi image that supports stretch and then test it out to see if it meets your demands. If you have the funds, consider a Rachel device for situations with more connections. If you’re still interested in running it on an Odroid I can look into it. The extra ram and USB 3.0 might be a boost,

James

Hello @jamesk
Thanks a lot for the detailed response. The primary motivation for considering the Odroid HC1 was the increased RAM, Processing power and capability to support up to 1TB SATA HDD. I am a bit worried that video streaming on a Pi would be a huge demand on the Pi with 20 simultaneous users.

Interesting to hear that you have deployed Rachel on a router. This is something I had thought about. I’d be interested if you can provide pointers on most suited routers as well as installation process

No problem. The bandwidth and hardware requirements for streaming to 20 concurrent devices will probably depend on the resolution of the videos. I think this was taken into account when packages like Ka-lite-ess were made as the videos are low def at 692x392. The HC1 does have better specs, but it lacks WiFi so you’ll have to introduce a router. That is also something to consider with the Pi3 to increase the number of streams. The issue with that is you’re introducing extra hardware which means more things can go wrong and it increases the cost. If a Raspberry Pi 3B/3B+ can handle 10 or 15 streams, you could always get two and it might be cheaper.

Routers are pretty tricky to get anything running on. It requires available packages to set up a server with php and sql, a USB port so you can put the site on a USB drive, as well as other packages for acting as a hot spot. If those packages aren’t available, you need to compile them yourself and that is very time consuming.

I installed Rachel to a GL.iNet GL-MT300N-V2 after looking into a project called VillageTelco. They used to have a firmware that included Rachel available for other travel router models using the same chipset, but it didn’t work for me so I set up a server using the available packages using the default firmware. It is based on Lighttpd which has low overhead and the manufacturer had compiled the php, xml, sql and other mods for it so it was just a matter of installing those, pointing the server to the drive with rachel on it using a symbolic link, and setting up the hotspot which was a feature by default. The goal was to have a cheap, low power, and portable Rachel server that could be run off of a power brick so that it can be taken into a remote area with a few tablets or even taken home by students. It works very well at $20 but Wikipedia and Khan Academy must be the static version for now.

After the stretch install script is finished I will be doing some tutorials on installing Rachel to that as well as an alternate installation for the pi that uses Lighttpd which might make it faster than Apache2.

.

So I noticed the current Rachel Pi image is running on Jessie. And with Jessie you can’t boot from a USB HDD. If I do a sudo apt-get update && sudo apt-get upgrade to Stretch will Rachel still function?

How can I configure Rachel to run of the HC1. The HC1 boots only from SD card. So I’d like to set it up such that it boots from the SD card but all contents are pulled from the HDD

I wish it were that easy but upgrading did not work for me. It required a fresh install with a lot of changes. You can follow my changes and instructions on how to get Rachel running on stretch at this post. It is a work in progress and will likely be another few weeks before it is working properly

Running Rachel on the HC1 would require writing a new installer script and figuring out all of the differences with whatever linux distro comes with it.

Hello,

i’m not that savvy but how are you getting Rachel to run on the server? is it just a case of loading the scripts you mention onto a Rachel-USB and connecting it to a router?

Odroid runs the Armbian OS that I have written a RACHEL installation script for and shared with airsay in another post which i can link. I used that to install RACHEL on a Tinkerboard S running Armbian and it runs well. Using that installer should support all single board computers that have an Armbian image available here https://www.armbian.com/download/.

If you’re looking to run RACHEL on other hardware the best way to do it is by using an installation script tailored to that OS. Docker is not really suited to this project in my opinion as the hardware configurations vary so widely and you can install RACHEL directly with a script. People are generally looking to run RACHEL on older hardware where any overhead can be a performance hit.

1 Like