I just wanted to shout out TRMNL.
They have an interesting product, and they’re trying to build a business that includes a lot of open source aspects.
The device that they sell is proprietary, but it’s also just an ESP32, screen, enclosure, and battery, with a custom PCB for convenience. They plan to add instructions to build your own device, and their firmware is open source under a GPLv3 license.
By default, their device connects to their servers, and they have a slick web configuration tool for people who don’t care about having smart devices call home, but you can easily modify the firmware to connect to your own self-hosted server instead. As of this evening, both the Phoenix and Sinatra server implementations are open source under an MIT license after I pointed out that they had no license in an issue, and they pretty much immediately updated the repositories.
There are two other repositories that they have not added a license to, but given their swift response, I’ll give them the benefit of the doubt, and I would expect them to be updated shortly.
They have not shared all of the plugins that are available on their hosted service for use on a self-hosted instance, but a few are available for use and there are many plugins made by others available as well!
As soon as they update those last two repositories, I plan to pre-order one (unlike the conceptually cool VU Dials who’s creators still have not added a license even after being called out by the co-creator of Rocky Linux).
There are no endpoints running on the device. The API endpoints are hosted on their server. The device just sends requests to their server (or yours if you change one line in the firmware) for a bitmap image and a time it should wait until the next refresh. Then it goes to sleep until the response said it should make it’s next request.
No teardown necessary. Just plug in a usb cable and connect it to your pc.