Kolibri and Balena

Hi Kolibri community,

Over at balena.io there is a new Kolibri addition: balenaHub: an easier way to find and publish fleets, apps, and blocks for edge devices

It can be a difficult needle to thread getting apps to run on Pi’s, but the balena platform allows for quick deployment to Raspberry Pi’s and other hardware with auto updates if someone wanted to manage it as a fleet, delta updates so only the required changes are sent to the devices and a hardened OS based on Yocto Linux to keep the size really small.

There tends to be a lot of converting apps for Raspberry Pi’s in to Balena apps but it is only as useful as how must it gets used or gets input. It is all free, so really only wanted to raise some awareness of the option and see if anyone might want to take it on.

Thanks for all the work on Kolibri and keeping it open source. Many decades in education and still my go to example of how edtech can work in the open!

Hi @maggie,

Thanks - it seems like the installation path chosen here is to pip install Kolibri into a Docker container and then just run it in the foreground? For Raspberry Pis we have found that some additional tweaks could be helpful for ensuring smooth, reliable, and performant use of Kolibri.

To see some recent discussion about optimizing deployment of Kolibri on Raspberry Pi, this thread might be of interest! Optimisation of mp4 videos - #6 by tgillett (in spite of the slightly misleading title).

Very happy to hear how additional tweaks can be pulled into the Balena image to help provide performant deployment of Kolibri!

Kind Regards,

Hi Richard,

Wow, the link you shared is a very relevant and recent post that seems to be aligned quite well with what I was thinking. I think best thing to do is to drop this ping here to @tgillett and hope they don’t mind. It would be great to get some input and thoughts, you have done some really thorough testing, and maybe this installation pathway will also be of interest.

Yes, at the moment this is docker container using PPA to install. We could certainly look to put NGINX in front if it is felt that adds noticeable benefits of caching. It’s interesting to see Redis employed too, I hadn’t realise there was so much writing going on in Kolibri for each device, although with SD card speeds perhaps it makes more sense.

We could also drop in a WiFi hotspot if it is helpful, although it seems not so relevant to @tgillet’s use case. The app is built out of ‘Blocks’ so could include the WiFi block alongside Kolibri: balenaHub: an easier way to find and publish fleets, apps, and blocks for edge devices

Based on the use case I wonder if the fleet management, ability to deploy updates and connect to the devices through SSH remotely for maintenance might be particularly helpful @tgillett.

Hi @maggie
Thanks for the ping.
The Baleno approach looks interesting for fleet management.

Our deployments are typically at remote locations where there is no Internet access - hence we are using Digital Library and Kolibri devices to provide content that is stored locally.
So remote fleet management is not on our agenda at present for this project.

As you have seen from our discussions with Richard et al, we are having a little fun at present getting the system to be performant and stable with some of the advanced features enabled.
As well as having no Internet access, the deployment sites are also generally devoid of technical assistance, so simplicity and robustness are key aspects of these systems.