GUI Based Wifi Configuration

A project log for FLOSS Book Serving System

An open-source ereader that can display books from an open, self-hosted server

guyrandy-jean-gillesGuyrandy Jean-Gilles 02/29/2024 at 05:420 Comments


Despite the title, this is a hodge-podge update. The first concrete achievement I can boast is two new additions to the status bar: a clock and a Wifi menu.

The clock is self explanatory. The Wifi menu will list the available networks when tapped and will prompt a password entry once you select a network.

Behind the scenes, the code is using nmcli to connect to the aforementioned network. Right now the password is being sent in plain text over the command line, but I really should be inputting text via stdin. That'll change by the next revision.


I finally got around to troubleshooting with the TPS61165 evaluation kit. I'm still troubleshooting, but I can dim on the piEreader hardware, but things still aren't working exactly as I expect. I'll probably make a dedicated dev log to explain everything that's gone wrong. 

I don't want to do another board revision until I iron out the dimming problem, but I will absolutely have to fix the USB connector. Somehow I picked a connector who's pins don't sit flush on the PCB.

It may not show up well on camera, but there's no way to solder the connector onto the board. I couldn't have known until I tried to do so myself. A USB connector isn't enough to justify a board spin, so I'll leave things as is right now.

Next Steps

Last log I talked about supporting audiobooks and the need to switch from bcm2835 library to do so. I actually have a version of firmware using lgpio and it was sloooooooooow, so I don't want to rely on it. Also, after reading the documentation for the pigpio library, it seems like using PWM to dim will always block the Raspberry Pi from producing audio. So that gives me two options hardware wise: 1) Change hardware platforms 2) Use the TPS61165 (or some other chip's) serial protocol, EasyScale, to dim the backlight. It makes sense to at least try to implement EasyScale as that should be quicker than switching hardware.

I also still need to write firmware for the battery fuel guage but that will always be incomplete without the a USB connector. Either way, the decisions moving forward are focused on supporting audiobooks.

For the most recent software and hardware changes, please check the project's repository.