A little over a a year ago, we covered an impressive battery monitor that [Timo Birnschein] was designing for his boat. With dedicated batteries for starting the engines, cranking over the generator, and providing power to lights and other amenities, the device had to keep tabs on several banks of cells to make sure no onboard systems were dipping into the danger zone. While it was still a work in progress, it seemed things were progressing along quickly.
Certainly the biggest issue that was preventing [Timo] from actually using the monitor previously was the lack of an enclosure and mounting system for it. He’s now addressed those points with his 3D printer, and in the write-up provides a few tips on shipboard ergonomics when it comes to mounting a display you’ll need to see from different angles.
The printed enclosure also allowed for the addition of some niceties like an integrated 7805 voltage regulator to provide a solid 5 V to the electronics, as well as a loud piezo beeper that will alert him to problems even when he can’t see the screen.
Under the hood he’s also made some notable software improvements. With the help of a newer and faster TFT display library, he’s created a more modern user interface complete with a color coded rolling graph to show voltages changes over time. There’s still a good chunk of screen real estate available, so he’s currently brainstorming other visualizations or functions to implement. The software isn’t using the onboard NRF24 radio yet, though with code space quickly running out on the Arduino Nano, there’s some concern about getting it implemented.
Volos Projects educator [Danko Bertović] had a TTGO ESP32 board looking for a project, so he implemented a surprisingly functional weather station for such a small screen. Presumably that was too boring for him, so he decided to write a version of the classic Atari game Breakout instead. [Danko] prefers using the Arduino IDE for ESP32 projects, and has made the Breakout software available as an Arduino sketch. We hope the weather station sketch will be released soon, too. The TTGO is a small ESP32 board with an ST7789V 1.14 in (29 mm) TFT color display, available from your favorite Shenzhen market supplier. This platform is perfect for all kinds of niche applications. We’d love to hear how you are using, or plan to use, these modules in your projects.
We wrote about one such project last summer, where a similar TTGO module was used to display 50-year broadcast delayed transcripts of the Apollo 11 mission. [Danko] is no stranger to Hackaday — he has made several Arduino-based calculator projects. Perhaps the most remarkable being the circuit sculpture binary number calculator from last year, another project that morphed into a computer game (Pong).
xorSprite() plots an 8×8 sprite, moveSprite() moves a given sprite by one pixel without any flicker, and hitSprite() checks a sprite for collision with any screen elements in a given color. That is all it takes to implement a simple game, and [David] makes them easy to use, even providing a demo program in the form of the rolling ball maze shown here.
While those of us stuck sailing desks might not be able to truly appreciate the problem, [Timo Birnschein] was tired of finding that some of the batteries aboard his boat had gone flat. He wanted some way to check the voltage on all of the the batteries in the system simultaneously and display the information in a central location, and not liking anything on the commercial market he decided to build it himself.
Even for those who don’t hear the call of the sea, this is a potentially useful project. Any system that has multiple batteries could benefit from a central monitor that can show you voltages at a glance, but [Timo] is actually going one better than that. With the addition of a nRF24 module, the battery monitor will also be able to wireless transmit the status of the batteries to…something. He actually hasn’t implemented that feature yet, but some way of getting the data into the computer so it can be graphed over time seems like a natural application.
The bill of materials is pretty short on this one. Beyond the aforementioned nRF24 module, the current version of the monitor features an Arduino Nano clone, a 128×160 SPI TFT display, and a handful of passives.
Knowing that a perfboard wouldn’t last long on the high seas, [Timo] even routed his own PCB for this project. We suspect there’s some kind of watertight enclosure in this board’s future, but it looks like things are still in the early phases. It will be interesting to follow along with this one and see how it eventually gets integrated in to the boat’s electrical system.
We can race against the clock when assembling jigsaw puzzles online but what about competing against each other in the real world? [HomeMadeGarbage] came up with the simplest of solutions with his jigsaw puzzle timer that stops only when the puzzle’s completely assembled.
His simple solution was to attach copper foil tape to the back of the pieces, with overlap. He did this in a serpentine pattern to ensure that all pieces had a strip of the tape. The puzzle he used comes with a special container to assemble it in. At two corners of that container, he put two more pieces of copper foil, to which he soldered wires. Those two act as a switch. Only when the puzzle is completed will those two pieces be connected through the serpentine strip on the back of the puzzle.
Next, he needed a timer. The two wires from the puzzle container go to an Arduino UNO which uses an ILI9325 touch panel TFT display for both the start, stop, and reset buttons, and to show the time elapsed. Press the touch screen when it says START and begin assembling the puzzle. When the last piece is inserted, the serpentine strip of copper tape completes the circuit and only then does the Arduino program stop the timer. As you can see from the video below, the result makes doing the puzzle lots of fun.
The ESP32 is the successor to the wildly popular ESP8266. There seems to be no end to what the chips can do. However, despite all the wireless communication capabilities, the module doesn’t have a display. [G6EJD] wanted to connect an ILI9341 TFT display and he put the code and information on GitHub. You can also see a video of his work, below.
Since the display uses a serial interface, there isn’t much wiring required. The Adafruit GFX library does the heavy lifting, utilizing the SPI library for the actual communications. The first demo shown on the hardware can pull weather data decoded. If you want more details on the display’s operation, check out [G6EJD’s] YouTube channel and you’ll find other videos that go into more detail.
Reader [Jasper] writes in with glowing praise for the TFT_eSPI library for the ESP8266 and the various cheap 480×320 TFT displays (ILI9341, ILI9163, ST7735, S6D02A1, etc.) that support SPI mode. It’s a drop-in replacement for the Adafruit GFX and driver libraries, so you don’t need to rework your code to take advantage of it. If you’re looking to drive an LCD screen with an ESP8266 and Arduino, check this out for sure.
As a testbed, [Jasper] ported his Tick Tock Timer project over to the new library. He got a sevenfold increase in draw speed, going from 500 ms to 76 ms. That’s the difference between a refresh that’s visibly slow, and one that looks like it happens instantly. Sweet.
Improving software infrastructure isn’t one of the sexiest or most visible hacks, but it can touch the lives of many hackers. How many projects have we featured with an ESP8266 and a screen? Thanks, [Bodmer] for the good work, and [Jasper] for bringing it to our attention.