Make A DIY E-ink Faceplate For Valve’s Steam Machine

Valve has always designed hacker-friendly hardware, and in that spirit, [NaKyle Wright] released Inkterface, a design for an E-ink faceplate to fit the recently released Steam Machine. As far as projects go, this one is meticulously documented, so give it a peek.

The system uses a selection of components that include a 5.83″ E-ink panel and driver board, a small lithium-polymer battery, and an ESP32-based controller board. A cleverly-designed 3D printed frame and bezel hold everything just so, creating a snug assembly with minimal wiring hassles.

A small service can be easily configured to control how the display updates.

The faceplate is wireless and self-contained, attaching with the help of four magnets. On the software side, the host machine communicates over Bluetooth, and a service takes care of pushing updates. An app for configuring and talking to the display will be available on Steam eventually, but in the meantime one can install that part manually.

[NaKyle]’s bill of materials calls for specific components, but the underlying design is very modular. Should one wish to make hardware or component changes, alterations to the 3D printed parts might be needed as well. Fortunately, [NaKyle] includes the .step files alongside the .stl models. We love to see that, because it makes tweaking or customizing so much more accessible. A homebrewed version of this E-ink panel might be just the thing to complement a homebrewed Steam machine.

Be sure to also check out the repository of Steam hardware, which contains drawings and 3D models of the Steam Deck and Steam Controller, useful for designing holders or custom brackets or whatever else one may need.

Phone Stand Aims To Fight Addiction

Sometimes, it’s hard to stop picking up your phone every few minutes to check on notifications and scroll endlessly through the slop of the day. [PushpendraC2] has been working on a solution to this problem that would ideally discourage such behavior —  a nifty little smartphone stand!

The concept is straightforward enough—the smartphone stand uses a simple tactile button to determine if your smartphone is sitting on the little 3D printed shelf, or not. However, the smarts inside do a bit more than that, too. An ESP32-S3 is charged with monitoring whether the smartphone is sitting in place, and starts counting “focus time” while it’s there. If the phone is picked up, the OLED display on the shelf starts ticking down a 5-second timer to encourage you to put it back. If you don’t, the focus time is reset and you lose your streak.

It’s also possible to tap a touch sensor on the device which sets a reminder timer, prompting you to put your phone back after a set period of time, between 2 to 30 minutes. A buzzer will then start going off to prompt you to put the phone down. If you want to track the devices impact, you merely need to log in to the web server hosted by the ESP32, which shows your current focus session time, along with a heatmap of your daily productivity.

It’s a simple idea, but one that uses a few neat psychological hooks to encourage compliance and behavioral change. We’ve featured similar projects in this vein before, No surprise, as phone addiction is a problem experienced by many.

Continue reading “Phone Stand Aims To Fight Addiction”

A Custom Zigbee Touch Keypad

[Dominic Buchstaller] wanted a neat, tidy entryway keypad that actually looked good. Prime goals were something slim, wireless, and with no visible screws. Dependency on the cloud was also a no-go. With few ready-to-go options available on the market, he set about whipping up his own.

The heart of the build is an ESP32-C6 microcontroller devboard. This device has the benefit of including Zigbee communication functionality baked right into the chip. It’s hooked up to an MPR121 capacitive touch controller, which allows different segments of the touchpad PCB to act as capacitive buttons for numerical entry. The number labels are directly printed on the PCB solder mask, so there’s no overlay or other label required on top. Power is courtesy of a 1300 mAh lithium-polymer cell which gives a useful lifespan of six months between recharges. A simple 3D-printed case holds everything together and completes the clean and simple look. [Dominic] notes that it’s possible to also use the device via Matter or Thread without a lot of changes, as the ESP32-C6 can easily handle those protocols, too.

If you’re looking for a cheap, handsome keypad for your Home Assistant setup or similar, you might find this useful. We’ve explored DIY keypad entry systems before, too. If you’ve come up with some other creative way to get into your house, car, or bank vault, be sure to notify us via the tipsline.

A GUI Solution For ESP32 Web Development

These days, a lot of embedded projects feature some sort of screen, and a screen often creates a desire for a nice user interface. [Geoffrey Wells] has created a tool for developing web interfaces for the ESP32, named ESP-GenUI.

The aim was to make UI development as easy as possible for this platform. ESP-GenUI allows the creation of a website by dragging various nodes on to a canvas and linking them up to create the desired web interface. There are nodes for GPIO control, camera feeds, gauges, and all sorts of other common elements for quickly putting together dashboards and control panels. All this is done from within the browser, and the code generated by the tool can even be flashed without having to open any external tools. Alternatively, it can spit out Arduino code that you can open and flash from within the IDE. You can try the tool out yourself right here.

We’ve featured some other great resources for developing embedded user interfaces, like this highly-flexible display library for the ESP32. Feel free to espouse on your own favorite tools and techniques in the comments.

Continue reading “A GUI Solution For ESP32 Web Development”

CSS On The ESP32

There are lots of graphics libraries available for the ESP32, and lots of ways to program one to boot. Even still, most of us wouldn’t immediately think to CSS when it comes to embedded products — yet that’s now a thing on the Espressif platform, apparently.

The Gea stack allows one to compose CSS and TypeScript code that is then turned into generated C++ code that compiles to native firmware. The team behind Gea have demoed this ability by running a 3D cube animation on an ESP32 at up to 60 FPS. This isn’t some ugly, low-res wireframe demo, either. It’s a full-color animation running on a 410×502 AMOLED screen. It’s very fluid, and can even handle transparency on the cube faces (albeit with a performance penalty).

It’s worth noting that this isn’t a full browser engine. As you might expect, some concessions had to be made to get it running on the ESP32. Namely, it doesn’t handle “:hover” states because it’s designed for touchscreen use, fonts are rasterized, and the UI tree is limited to just 512 nodes. Regardless, it shows that using CSS and TypeScript to develop for the ESP32 is entirely possible without some crazy loss of performance. If you want to build easy interfaces on an ESP32 while leaning on web dev experience, this could be very useful indeed.

There are lots of fun ways to write code for the ESP32; you can even try MicroPython if you like.

Continue reading “CSS On The ESP32”

A More Convenient IButton Reader

iButtons are microchips housed in small, round, metal containers, and are similar to coin cell batteries in appearance. Among other things, they’re used for logging data in industrial contexts, particularly where it’s desirable to track parameters like temperature over time. [Geoffrey Wells] has worked with these sensors, and decided that the aging solutions for reading these devices are too cumbersome and out-of-date. Thus, he designed ChillPoint as a more modern solution.

As you might have guessed by the name, [Geoffrey] was inspired to build a rig specifically for inspecting iButton data loggers in cold chain logistics applications. It’s built around an ESP32-C6, which has a 1-Wire probe on the front for communicating with the target device. On contact, the reader dumps all the data, storing it on its own flash storage. The data can then further be accessed by connecting to the ChillPoint handheld device over its own WiFi access point, upon which it hosts a web UI for access. The handheld can be used for scanning iButtons single-handed, while a smartphone, tablet, or laptop can be used as a screen to monitor the results live.

The project is nearing completion, and [Geoffrey] says both the hardware and software will be open source once it’s all said and done. Anyone interested in adding a ChillPoint to their toolbox should keep an eye out for its upcoming CrowdSupply campaign.

If you find yourself working with these devices on the regular, this project may be appealing to you. We’ve looked at iButtons many times over the years. The Java Ring was probably the coolest.

This Alarm Clock Has The Capacity To Wake You

Every now and then a project comes into the Hackaday feed that has so many levels of wrong about it that you really shouldn’t do it at home, but is amusing enough to feature anyway with a warning. So it is with [ArcaEge]’s Capacitor Alarm Clock, which wakes up its unfortunate owner by blowing up electrolytic capacitors with reverse voltage. If you survive, you’ll certainly be awake!

It’s inspired unsurprisingly by an [ElectroBoom] video, and the premise is simple enough. An ESP32 serves as the clock, and triggers a relay for the alarm, which in turn overloads a suitably low-voltage electrolytic capacitor in a socket. The resulting explosion which appears in a video we’ve placed below the break, wakes the slumberer.

We don’t have to tell you that this is not the safest of hacks, and is presented here only for your entertainment. But it does provide a few points of interest, for example in identifying the difference between capacitors with a vent, and those without.

This isn’t the first time we’ve seen a project based around exploding capacitors, and that one maybe was a don’t-do-this-at-home too.

Continue reading “This Alarm Clock Has The Capacity To Wake You”