This Post-Apocalyptic Home Control Terminal Features ChatGPT Intelligence
OpenAI’s API now allows for function calling, which let Rick Pannen build this ChatGPT-powered home control terminal.
The IoT (Internet of Things) treatment can add a lot of convenience to your life, but it does force you to come up with some way to control everything. What good is a toaster that connects to the internet if you have to walk over to push a button? And though we all carry perfectly capable control devices in our pockets at all times, some people long for more purpose-built solutions. A few of those people are also fans of post-apocalyptic fiction, which is how we end up with projects like Rick Pannen’s ChatGPT-powered home control terminal that looks like it belongs in the wasteland.
This project is interesting for two reasons and the first is the style. Pannen created his own terminal design in Autodesk Fusion 360 and then 3D-printed all of the parts. From there, he glued them together, painted them, and then applied a lot of weathering. We don’t want to use the f-word here, but this sure looks like the kind of device that might sit on a desk next to a cold bottle of Nuka-Cola. Though the aesthetic is a little more sci-fi, so it might belong in a more cyberpunk universe.
Design inspiration aside, the purpose of this terminal is to control the connected devices in Pannen’s home. It can, for example, turn off the kitchen lights and play music. A few years ago, doing that from a terminal would require that the user type an explicit command with the proper syntax. But we have LLMs (large language models) today and they can understand less structured requests.
In this case, the terminal is built on Raspberry Pi 400 hardware and the display is a 7” Waveshare screen with a big Fresnel lens for magnification to increase the size. The Raspberry Pi runs a Python script that works with OpenAI’s API to implement function calling. That is very important, because it lets the LLM (such as GPT 4.0) trigger specific functions on the client device when it thinks that is what the user wants. Pannen programmed the called functions to integrate with ioBroker, which actually controls the connected devices (lights, thermostat, stereo, and so on).
The result is a very cool-looking terminal that can perform the correct action when the user types something like “set the thermostat to 72 degrees.” Of course, walking over to the terminal to type such commands defeats some of the purpose, but we’ll let that slide and give full credit for style.
Writer for Hackster News. Proud husband and dog dad. Maker and serial hobbyist. Check out my YouTube channel: Serial Hobbyism