Even with the recent price reductions on stand-alone panels, picking up a used Kindle is still arguably the most cost effective way to get your hands on a large electronic paper display. Especially when you consider the Kindle includes a battery, case, and electronics to drive the display. Bending the Kindle software to your whims introduces its own unique challenges of course, but with a little tweaking, an old e-reader can live again as whatever you wish it to be.
Case in point, the OkMonitor project by [Brendan Sleight]. Using a somewhat dizzying combination of software and hardware, he’s figured out a way to turn an older Kindle Paperwhite into a plug-and-play HDMI monitor. Is it a great monitor? Far from it. As the name implies, the best you can hope to get from this solution is an OK monitor. But at least it’s something.
There’s quite a bit going on behind the scenes in OkMonitor, which [Brendan] describes through a slideshow on the project page. But the high-level idea is that a Raspberry Pi 4 with a simple USB HDMI capture device takes the video input and converts it on the fly to a scaled down Kindle-friendly format. The converted video is streamed over WiFi to the jailbroken Kindle with netcat, where it’s displayed by a native video player. In the video after the break you can see that the end result looks pretty impressive, even if there is a considerable delay involved.
Despite the demonstration [Brendan] has put together for OkMonitor, we can’t say we’d watch many films over this setup. But the fact that you can plug any HDMI device into the “base station” and have the video sent out to one or more Kindles is undeniably impressive. It’s definitely worth a close look, even if you just take some of the concepts of this project to get your own Kindle repurposing idea off the ground.
If you’re developing a performant IP-KVM based on the Raspberry Pi, an HDMI capture device that plugs into the board’s CSI port would certainly be pretty high on your list of dream peripherals. Turns out such devices actually exist, and somewhat surprisingly, are being sold for reasonable prices. Unfortunately the documentation for the chipset they use is a bit lacking, which is a problem if you’re trying to wring as much performance out of them as possible.
As the creator of Pi-KVM, [Maxim Devaev] needed to truly understand how the Toshiba TC358743 chip used in these capture devices worked, so he decided to build his own version from scratch. In the name of expediency, he didn’t have a proper breakout board made and instead decided to hand-solder the tiny BGA chip directly to some parts bin finds. The resulting perfboard capture device is equal parts art and madness, but more importantly, actually works as expected even with 1080p video signals.
Ultimately, the lessons learned during this experiment will lead to a dedicated KVM board that will plug into the Pi’s expansion header and provide all the necessary hardware in one shot. As [Maxim] explains in the Pi-KVM docs, the move to the CSI connected Toshiba TC358743 cuts latency in half compared to using a USB capture device. That said, USB capture devices will remain fully supported for anyone who just needs a quick way to get things working.
Remote access is great, but if the machine stops booting, ceases to connect to the network, or needs low-level interaction like BIOS settings or boot management, remote access is worthless because it’s only available once the host computer is up and running. The usual solution is to drag a keyboard and monitor to the machine in question for physical access.
For most people, swapping cables in this way is an infrequent task at best. But for those who work more closely with managing hardware or developing software, the need to plug and unplug a keyboard and monitor into machines that otherwise run headless can get tiresome. The modern solution is KVM (keyboard, video, mouse) over IP, but commercial options are expensive. [Michael Lynch]’s TinyPilot on the other hand clocks in at roughly $100 of parts, including a Raspberry Pi and USB HDMI capture device. It does have to drop the ‘M’ from KVM (meaning it does not support a mouse yet) but the rest of it hits all the bases, and does it all from a web browser.
What exactly does TinyPilot do? It provides remote access via web browser, but the device is an independent piece of hardware that — from the host computer’s point of view — is no different from a physical keyboard and monitor. That means keyboard and video access works before the host machine even boots, so even changing something like BIOS settings is no problem.
[Michael] demonstrates his design in the video embedded below, but we encourage you to check out the project page for a fascinating exploration of all the challenges that were part of TinyPilot’s development.