Connecting the Kolibri Android app to a central server


I work for a Community-Driven Development (CDD) organisation that offers grants and ‘project management’ training to rural communities in Africa to undertake projects of their choosing. Currently, all our training is undertaken face-to-face, but we are looking to transition to a hybrid model whereby roughly half our training material will be turned into mobile-based self-study modules.

The plan is that during the initial face-to-face training, learners will be given smartphones that are pre-loaded with the Kolibri app. Once the face-to-face training is over, they will then go off to their villages. At times they will have internet coverage and at times they won’t. We would like them to be able to study in both cases. These learners would all be part of a class and will be allocated course material to study and assessments to complete. Over time, we would push out updates.

Given our operating environment, Kolibri is of interest because of its robust offline working/sync model and, now, its Android App.

I understand from @laura that for our use case, we are best to pair a server-based instance of Kolibri with the app. To test this, I have installed Kolibri (Ver. 0.15.12) on a VPS (DimeVPS) and am running the beta of the Kolibri Android app (Ver. 0.15.6-92dd435-official). I have created a facility on the server with a group of users.

My understanding is that I now need to set the Android instance of Kolibri as a learn-only device (Advanced Setup > Select a facility setup for this device > Learn-only device). However, when I try to do this, there is no option to add a network address to connect to my server. Under full-device (Advanced Setup > Select a facility setup for this device > Full device > Import all data from an existing facility) I can enter the address of my server and the app does connect.

I have seen in the Kolibri documentation ‘The central server and learner device automatically sync every 2 minutes when connected to the same network’. I also noticed this question, Accessing Kolibri tool from server as a learner.

So … to my questions:

  • Am I pursuing the right configuration, i.e. central server and connected learner-only apps?
  • If so, is the reason I can’t connect to the central server because it is on the internet and not a LAN? If so, how can I get this to work?


Hi @rtandoh,

The configuration you’ve laid out makes sense, but there is one gotcha in regards to your second question:

If so, is the reason I can’t connect to the central server because it is on the internet and not a LAN? If so, how can I get this to work?

In Kolibri v0.15, the learner-only syncing mechanism depends on being able to discover instances over a local network (LAN), so this is indeed the reason why it doesn’t connect to the central server.

We’re preparing to release Kolibri v0.16 in the coming few weeks, which will remove this limitation. Until then, you may use third-party tools such as ZeroTier, or a VPN (specific capabilities are required), to mimic connectivity over a local network, which will allow the learner-only device to connect to the central server. Learning Equality is a fully-remote organization and our team is spread out all over the world, and because of that, we actually use ZeroTier for testing Kolibri’s local discovery and syncing mechanism during development.

Stay tuned for the Kolibri v0.16 release!


Hi @blaine,

Thanks for the response.

I was wondering if there was any update re. Kolibri v0.16 and the public release of the Andriod app?


Hi @rtandoh,

0.16 is currently feature complete, and we are in the last rounds of quality assurance testing to be able to release. Our main concern at this point is assuring a seamless syncing experience on the Android App, but we hope to release towards the end of the month or early November.

Thanks for your patience as we push forward on this, we are excited to be able to share the big changes in 0.16 and make the Android App more widely available!

Kind Regards,

Thanks @richard.

I am pleased to hear both releases are imminent.



How are you?

Any update on the release of 0.16 and the Android App?


Hi @rtandoh,

We’re nearing ever closer to the final release, but we’re not there yet. We expect to have a release candidate very soon, which means the final release will be immediately after that.

You can monitor our progress on Kolibri’s Github Releases page