ESP-Osito Eschews Retrocomputing For Modern Code On Modern, Equivalent Hardware

If you’re of a certain vintage, you have probably looked at some of the microcomputers on the market these days and thought “that would have been a decent workstation back in the day!”. We certianly have, and so did [Roberto Alsina]. Rather than allow himself to contemplate his age and threfore rapidly approaching mortailty, [Roberto] wrote a useful operating system called ESP-Osito for the Cheap Yellow Display, which he refers to as “the cheapest computer”. He’s not wrong, and it’s certainly a better use of time than an existential crisis.

He explains some of his reasoning behind the project in an accompanying blog post, but on the project page he compares it to a Palm Pilot– it’s on quick, apps load quick, and the API is simple enough for easy app creation in a few hundred lines of C, unlike certain pocket computers we won’t name. Sure, there’s no multitasking, but when apps jump from SD card to run in memory in microseconds, who cares? Saving the current state of the app back to SD means the experience is virtually identical from a user perspective anyway.

DOS knew what time it was, but how many of us wasted phone time for weather reports?

As this is a one-man show for now, the app store won’t quite rival your smart phone– but there’s everything you’d expect on the 90s-era computer this has the horsepower of: a serial terminal, a text editor, a file explorer, a calculator, a clock, but also some things that aren’t so retro. The clock app gives weather info via futuristic wireless networking, the reader app takes Markdown text, and the chat app connects to an LLM somewhere instead of your friends on IRC. The blackberry keyboard option gives it a feel of a slightly different vintage. You can also play snake, because no computer is complete without games. The OS and all its applications are released under the MIT license on GitHub, and [Roberto] is actively looking for collaborators.

If you doubt the workstation comparison at the start of this article, this CYD runs Macintosh System 3 via a 68k emulator. That’s got old-school cred, but there’s something great about having retro constraints with modern code on modern hardware. In that way, ESP-Osito is similar to the 3D graphics engine behind this Wipeout clone.

Bring Back Your Bose With An ESP32

It’s become a familiar theme over the last couple of decades — hardware is rendered useless when its manufacturer pulls the cloud service on which it depends. This is particularly annoying when the device is something which shouldn’t need a cloud service to run in the first place, and several manufacturers have found themselves in hot water because of this.

Somewhere in between is the Bose SoundTouch speaker system, which includes a set of six internet radio preset buttons. In early May the service behind them was shuttered, and now here’s [Tostmann] with an ESP32 firmware to bring them back.

As you might imagine, it’s a device that emulates just enough of the now-defunct Bose cloud service to keep the speaker happy, but it has a clever trick up its sleeve. Normally these hacks rely on DNS redirects at the router, but this one avoids that thanks to a diagnostic interface on the Bose unit that allows the rewriting of the server address. The ESP32 does this with its own address, and the speaker is none the wiser.

We like this hack, because of its ingenuity, and because it saves yet another orphaned cloud product from becoming e-waste. This isn’t the first time we’ve seen a manufacturer on the naughty step for these practices.


Header image: TAKA@P.P.R.S, CC BY-SA 2.0.

A black-and-white clock face is shown. The numerals are ranged around the right edge of the clock. One pointer extends from the center of the clock, and one is on the left side of the face.

A Clock Inspired By Failed Cognitive Tests

One simple screening tool for cognitive impairment is the clock-drawing test (CDT): the patient is provided with a printed circle and asked to draw a clock face with the hands pointing to a certain time. Depending on how the clock is drawn, this could indicate a variety of different disorders, particularly dementia, with a particular deformity in the drawing sometimes pointing to a specific issue. These failed tests inspired [John Silvia] to create a clock with a unique, disordered face.

The numerals in this clock face are placed exclusively along the right half of the clock (in the test, this can be a sign of damage to the right parietal lobe, or of executive dysfunction caused by dementia), and out of order. The hour hand is controlled by a servo motor, and the minute hand is mounted on a separate, commercially-purchased clock mechanism on the left-hand side of the face.

The frame for the clock and the face are 3D-printed, and the servo motor is controlled by an ESP32-C3 with an RTC module. To minimize power draw, a MOSFET disconnects the servo motor from power except for the once-per-hour position update. Once per month, the ESP32 connects to Wi-Fi to synchronize to NTP time, otherwise remaining in a low-power state – even its indicator LEDs are disconnected to save power. These efforts paid off: when the servo isn’t active, it draws only about 160 µA, and a set of three AA NiMH cells lasts about a year.

Since the servo motor draws most of the power budget, it wouldn’t make much difference, but the ESP32’s co-processor can also be used for ultra-low-power projects. For a happier take on a drawing-related clock, check out one of these projects.

Drawing Videos On An Etch-a-Sketch

We’ve covered etch-a-sketch robots before, but usually they’re not quite as fast as [Every Flavor of Robot]’s “video” etch-a-sketch, capable of drawing a full portrait in as little as a minute.

The robot, nearly finished drawing a portrait of [William Osman]
The idea comes from the motivation to make something cool for Open Sauce. Of course, most projects with a deadline come very close to missing it, and–like many an Open Sauce project–this one is no exception. Arriving in California, they realize they couldn’t access their code! Fortunately, they get a demo working where your portrait is drawn just in time.
Continue reading “Drawing Videos On An Etch-a-Sketch”

Adorable ASCII Aquarium Lives On Your Desk

[Kert Gartner]’s ASCII Aquarium turns a cheap yellow display (CYD) into a tiny simulated aquarium, complete with ASCII sea creatures each with their own behaviors. There’s all kinds of options and even timekeeping functionality, so the miniature water world can also pull its weight as a desk clock.

The fish and other animal movements are not a series of canned animations; each creature has its own behaviors and responses to things like feeding, which is accomplished by tapping on the screen. A hidden menu offers a wide range of configuration and display options, and there’s even an option to export screen contents as bitmaps.

Add a 3D-printed enclosure and the whole thing looks like a pretty nice weekend project. There’s even a display flip mode, just in case you have a spare 50 mm beamsplitter kicking around.

It’s a very clever use of a CYD that shows how good color and graphics can look when one designs with the hardware’s capabilities (and limitations) in mind.

The CYD is an ESP32-based development board with integrated touchscreen display, and is known for its affordable price and wide availability. This one would look great next to a CYD electric jellyfish.

Passive Bug Zapper Tracks Its Kill Count

If it’s summer in a warm, humid climate, bugs can be the bane of your existence. A natural solution is to place a passive bug zapper to catch bugs at night. But what if that isn’t fancy enough? [Nicolas Boichat] spices it up with a passive bug zapper that tracks its kill count.

But how exactly do you detect a bug zap? With an antenna, of course! When a bug gets caught, it arcs, creating an electromagnetic pulse. A small loop antenna on the backside of the zapper receives the signal.
Continue reading “Passive Bug Zapper Tracks Its Kill Count”

Autonomous Submarine Relies On Color Detection

We talk about all kinds of autonomous vehicles here at Hackaday, from aerial drones to rugged rovers. A little less common are the submarine builds, likely due to their technical complexity. That said, though they perhaps benefit most from autonomy given they’re so hard to talk to while underwater. In any case, [Ayman] has built an impressive sub that uses some rudimentary techniques to navigate around while under the surface. 

The build uses typical construction techniques for DIY subs of this size, with a clear acrylic tube serving as the body of the craft. It’s carefully sealed to ensure water ingress doesn’t send it to the bottom, using nifty tricks like a magnetic coupling for the prop. Inside, there’s a Raspberry Pi 4, kitted out with an Arducam IMX708 camera with a wide angle lens. It’s joined by a BNO085 inertial measurement unit, along with two BMP280 pressure sensors for keeping track of motion and the sub’s vital signs, while a DRV8833 motor controller runs the main drive motor.

There’s also an ESP32 which helps out with motor and servo control for steering, and ballast control. Sinking and floating the sub is handled with a pair of two ballast tanks constructed out of 5 mL syringes that are driven in and out with high-torque output gear motors. The build uses an antenna buoy so that communication can be maintained with the sub when it’s within a certain range of the surface.

A neat addition to the sub is its autonomous navigation code. [Ayman] whipped up some simple object avoidance routines, which rely on the Raspberry Pi’s camera. The code uses HSV values to track specific colored objects and avoid them, which proves more reliable than RGB as it allows tracking color in a largely brightness-independent manner.

Although we’ve featured other builds that use similar construction techniques, seeing a transparent submarine gliding through the water will always make us think of the incredible Open Source Underwater Glider that won the 2017 Hackaday Prize.

Continue reading “Autonomous Submarine Relies On Color Detection”