Custom Home Assistant dashboard for a Kobo Clara e-reader

For a while now I’ve been using a couple of Kobo Clara HD e-readers with HADashboard as remotes for my Home Assistant setup. Unfortunately the Kobo browser doesn’t support Lovelace and recent updates broke full-screen so I was looking for something better.

I looked at running something on top of the Linux system already running on the e-reader but it was a bit of a mess and the versions of all the software were ancient. So in a terrible case of yak shaving I ended up using Yocto Linux to build my own Linux distribution and writing a Python dashboard application to run on that.

The code is now in a state where it’s working for everyday use for my husband and I and not too embarrassing to let other people look at. The dashboard application is called HAslate and it looks like this:

At the moment it supports simple sensors and switches, since that’s pretty much all we use these for. I’m planning to add graphs and maybe support for setting light colours, as well as support for multiple pages in the UI.

The underlying Yocto Linux layer is also on github.

6 Likes

Hi Kevin! Nice work, this looks pretty cool. Could it possibly run on an old Kobo touch so I could benefit from all this yak shaving as well?

Cheers,

If you can find (or build) a Linux system for the Kobo Touch that can run Python, pygame and SDL then it should work. You’ll probably have to edit SCREEN_SIZE in haslate.py for the screen size of the device.

Something like this maybe? MobileRead Wiki - Debian Linux on a Kobo

Probably, if it’s a reasonably recent Debian version. As long as it has Python version 3.8 or higher you should be able to use pip install -r requirements.txt to install the other stuff.

Yes the project is pretty old (so is the device). I’ll give it a shot.

Hm. No luck; my Kobo Touch is an early version that doesn’t have an internal SD and I can’t find much information on how to run stuff of the external SD. ! got there: External Booting for Kobos (aka boot from external SD card) - MobileRead Forums but the last post in there doesn’t look good (and I’m in the same situation). Too bad, I have this Kobo I’m no longer using and would have loved to give your project a try :confused:

That’s a shame. The internal SD card on the Clara makes it easy to work with and easy to revert back to stock.

I had unused Kobo Touch N905B, which has internal SD. So I installed the only “alive” linux image I found, Debian with KoboWm window system.
Wrote a python3 script that connects to MQTT and reads sensors, all hardcoded, no yaml. Right now I’m testing of using wifi only once every 15 minutes, to save battery. Transmits battery level to MQTT (and HA). UI is tkinter, which means it’s possible to turn it to landscape mode, but then KoboWm also needs some changes ( it’s also python)

2 Likes

The Kobos battery lasted only 44 hours so I’ll have to plug this to usb permanently.

1 Like

Now in GitHub: GitHub - MarkoMarjamaa/HA_Kobo: Kobo Touch N905B as Home Assistant Dashboard

1 Like