A Pocket-Sized Terminal For Mobile Python Hacking

Inspired by the good old days when your computer would boot directly into BASIC, [Le Roux Bodenstein] has created a handheld device he calls “DumbDumb” that can drop you into a MicroPython environment at a moment’s notice. If that doesn’t interest you, think of it this way: it’s a (relatively) VT100 compatible serial terminal with a physical keyboard that can fit in your pocket.

Being essentially just a dumb terminal (hence the name), there’s actually not a lot of hardware on the board. Beyond the 320×240 NewHaven 2.4 inch LCD, there’s just an STM32G071R8 microcontroller and a handful of passives. Plus the 57 tactile buttons that make up the keyboard, of course.

The MicroPython part comes in thanks to the spot on the back of the board that accepts an Adafruit Feather Wing. In this case, it’s the HUZZAH32 with an ESP32 on board, but it could work with other variants as well. With the wide array of Feather boards available, this terminal could actually be used for an array of applications.

So even if fiddling around with MicroPython isn’t your idea of a good time, there’s almost certainly some interesting software you could come up with for a tiny network-attached terminal like this. For example, it might be just what you need to start working on that LoRa pager system.

Escher: Etch-a-Sketch As A Service

For better or for worse, the tech world has fully committed to pushing as many of their products into “The Cloud” as possible. Of course, readers of Hackaday see right through the corporate buzzwords. It’s all just a fancy way of saying you have to poke some server over the Internet every time you want to use the service. In a way, [Matt Welsh] has perfectly demonstrated this concept with Escher. It’s a normal Etch-a-Sketch, but since somebody else owns it and you’ve got to have an active Internet connection to use it, that makes it an honorary citizen of the Cloud.

Escher takes the form of a 3D printed mount and replacement knobs for the classic drawing toy that allow two NEMA 17 steppers to stand in for human hands. Thanks to the clever design, [Matt] can easily pull the Etch-a-Sketch out and use it the old fashioned way, though admittedly the ergonomics of holding onto the geared knobs might take a little getting used to. But who wants to use their hands, anyway?

In terms of the electronics, the star of the show is the the Adafruit Feather HUZZAH32 development board, paired with a motor controller that can provide 12 V to the steppers. [Matt] even went through the trouble of making a custom voltage regulator PCB that steps down the stepper’s voltage to 5 V for the Feather. Totally unnecessary, just how we like it.

For the software folks in the audience, [Matt] goes into considerable detail about how he got his hardware talking to the web with Google Firebase. Even if the Internet of Sketches doesn’t quite tickle your fancy, we imagine his deep-dive on pushing G-Code files from the browser into the Feather will surely be of interest.

It probably will come as little surprise to hear this isn’t the first automatic Etch-a-Sketch that’s graced these pages over the years, but this might be the most fully realized version we’ve seen yet.

This WiFi Spoofing Syringe Is For External Use Only

A browse through his collected works will tell you that [El Kentaro] loves to build electronics into interesting enclosures, so when he realized there’s enough room inside a 150 ml plastic syringe to mount an ESP8266, a battery, and a copious amount of RGB LEDs, the “Packet Injector” was the inescapable result.

Granted, the current incarnation of this device doesn’t literally inject packets. But [El Kentaro] wasn’t actually looking to do anything malicious, either. The Injector is intended to be a fun gag for him to bring along to the various hacker cons he finds himself at, like his DEAUTH “bling” necklace we saw at DEF CON 26, so having any practical function is really more icing on the cake than a strict requirement.

In the end, the code he came up with for the Adafruit Feather HUZZAH that uses the FakeBeaconESP8266 library to push out fictitious networks on demand. This is a trick we’ve seen used in the past, and makes for a relatively harmless prank as long as you’re not pumping out any particularly unpleasant SSIDs. In this case, [El Kentaro] punctuates his technicolor resplendency with beacons pronouncing “The WiFi Doctor is Here.”

But the real hack here is how [El Kentaro] controls the device. Everything is contained within the syringe chamber, and he uses a MPL3115A2 I2C barometric pressure sensor to detect when it’s being compressed. If the sensor reads a pressure high enough over the established baseline, the NeoPixel Ring fires up and the fake beacon frames start going out. Ease up on the plunger, and the code detects the drop in pressure and turns everything back off.

If this build has piqued your interest, [El Kentaro] gave a fascinating talk about his hardware design philosophy during the WOPR Summit that included how he designed and built some of his “greatest hits”; including a Raspberry Pi Zero enclosure that was, regrettably, not limited to external use.

Remember When Scratch-Built Robots Were Hard?

Even simple robots used to require quite a bit of effort to pull together. This example shows how far we’ve come with the tools and techniques that make things move and interact. It’s a 3D printed rover controlled by the touchscreen on your phone. This achieves the most basic building block of wheeled robotics, and the process is easy on you and your pocketbook.

We just can’t stop loving the projects [Greg Zumwalt], aka[gzumwalt], is turning out. We just saw his air-powered airplane engine and now this little rover perks our ears up. The design uses the familiar trick of two powered wheels with a ball bearing to avoid problems with differential turning. But the simplicity is all in the implementation.

This bot is 3D printed using eight very simple pieces: four gears, two axles, a cap and a single tray to mount everything. The cap captures the ball bearing which pokes out a hole in the bottom of the tray to form an omnidirectional wheel. Two 9G servos modified for continuous rotation. The mating teeth of the gears are found on the wheel sections which have grooves for neoprene O-rings to provide traction. The entire thing is driven by an ESP8266 in the form of an Adafruit Feather Huzzah. This is programmed using the Arduino IDE and your phone can connect directly or through a WiFi router.

We’re not crazy, right? Robots didn’t used to be this easy to pull together? This goes for the power of 3D printing versus traditional basement fabrication methods, but in the availability of powerful yet inexpensive embedded systems and the available tools and libraries to program them. Kudos to you [Greg] for showing us how great the currently available building blocks are in the hands of anyone who wants to channel their engineering creativity. He certainly has… this chassis ultimately powers Santa’s sleigh.

Need a bigger printing challenge? Here’s a 3D printed rover that goes all-in with the suspension system.

Continue reading “Remember When Scratch-Built Robots Were Hard?”

Joe Activation With A WiFi-Controlled Electrical Outlet

[Mike] is the only one in his house who drinks coffee, and uses a simple single-serving brewer with no auto-on feature. And since no one really wants to have to stand around making coffee in the morning, [Mike]’s solution was to IoT-ize his electrical socket.

MQTT Dash is an Android app “for nerds only ;)”

The project consists of a relay board controlled by an ESP8266-packing Adafruit Huzzah. It’s all powered by a 9V power supply with a regulator supplying the relay coil and Huzzah with 5V. [Mike]’s using CloudMQTT to communicate with the outlet.

We often see these automation projects hit a wall when it comes to adding a user-side dashboard. [Mike] is using a free Android app called MQTT Dash which allows for a number of different UI components and even had coffee maker icons already built in. It’s certainly worth a look for your own projects. [Mike] uses it to turn on the outlet for 10 minutes, and by the time he grabs half-and-half the outlet is already off again.

It turns out that connecting coffee pots to the Internet is a driving force among out readers. This one alerts the whole office when the coffee is done, while another one is controlled by Alexa. Then again, sometimes all you can do is reverse engineer the Internet of coffee.

Forgot About Valentine’s Day? A Quick IoT Valentine

Did you forget about Valentine’s Day? Do you need a quick project to get ready for Valentine’s Day? [Becky Stern] has you covered. She’s whipped up a neat Internet-enabled Valentine project which should be pretty quick to put together.

At its heart (pun intended) is an ESP8266 microcontroller, in this case an Adafruit Feather Huzzah. Several layers of tissue paper heart are stitched together and cut out into a heart shape and then attached to a spring. A vibrating pager motor is used to shake the it when a signal comes in. Two buttons are used to send the message and a red LED is used to light the heart up. The whole thing is enclosed in a shadow box. [Becky] also put together another controller with a similar setup in a plastic enclosure. When the buttons are pressed on either controller, the other gets a signal and the heart shakes and lights up.

These projects send and receive Valentines, but they could be programmed to send whatever information you’d like. If you’re looking for a quick Valentine’s Day project, this is a great one, and you might have all you need already in your component drawer. Break out the soldering iron and send your Valentine a message! If you’re still looking for a quick Valentine’s Day project, check out this animated heart or this PCB Valentine.

Continue reading “Forgot About Valentine’s Day? A Quick IoT Valentine”

Jenkins And Slack Report Build Failure! Light The Beacons!

When you have a large software development team working on a project, monitoring the build server is an important part of the process. When a message comes in from your build servers, you need to take time away from what you’re doing to make sure the build’s not broken and, if it’s broken because of something you did, you have to stop what you’re doing, start fixing it and let people know that you’re on it.

[ridingintraffic]’s team uses Jenkins to automatically build their project and if there’s a problem, it sends a message to a Slack channel. This means the team needs to be monitoring the Slack channel, which can lead to some delays. [ridingintraffic] wanted immediate knowledge of a build problem, so with some software, IoT hardware, and a rotating hazard warning light, the team now gets a visible message that there’s a build problem.

An Adafruit Huzzah ESP8266 board is used as the controller, connected to some RF controlled power outlets via a 434MHz radio module. To prototype the system, [ridingintraffic] used an Arduino hooked up to one of the RF modules to sniff out the codes for turning the power outlets on and off from their remotes. With the codes in hand, work on the Huzzah board began.

An MQTT broker is used to let the Huzzah know when there’s been a build failure. If there is, the Huzzah turns the light beacon on via the power outlets. A bot running on the Slack channel listens for a message from one of the developers saying that problem is being worked on, and when it gets it, it sends the MQTT broker a message to turn the beacon off.

There’s also some separation between the internal network, the Huzzahs, and the Slack server on the internet, and [ridingintraffic] goes over the methods used to communicate between the layers in a more detailed blog post. Now, the developers in [ridingintraffic]’s office don’t need to be glued to the Slack channel, they will not miss the beacon when it signals to start panicking!