Rooting An Amazon Echo Dot

The Amazon Echo Dot is one of Amazon’s so-called ‘smart speaker’ offerings that tie into their larger Alexa-fueled ecosystem, designed to be a pretty minimalistic device that gives you access to this voice assistant and also the Amazon AWS cloud access to your home. If that latter part isn’t really your jam, you can always try to unshackle the device from the Amazonian cloud by rooting the device, as [Andy] recently did with a 2018 Echo Dot 3.

In addition to the video there is also a blog post in which the steps required to root the device are covered. This is then used to turn the device into a Home Assistant voice satellite, using a Claude-vibecoded project created by [Julian Imhof]. As [Andy] notes, this code seems to work, but it’s completely unaudited so YMMV. Device support is also limited to only certain Echo Dot and Echo Show devices as listed on the project page.

The first step is to gain USB access to the board inside the device, which for USB-less devices like the Dot in question requires opening the device to solder a USB connector onto the test pads that are available on the PCB. For other Echo devices you can just use the existing USB port, which makes this first step slightly easier.

These devices run Fire OS, so basically Android, which means a fairly standard process of unlocking the bootloader and installing the hassmic application that replaces Alexa. During testing [Andy] noticed that voice processing was rather slow, requiring switching from Whisper to Speech-to-Phrase to make simple things like turning a light on not take a minute.

Overall it seems like a pretty decent way to repurpose these devices as ESPHome devices, with a few gotchas when it comes to the resources required for local voice processing.

Continue reading “Rooting An Amazon Echo Dot” →

Radio-Gaga Is A Toddler Friendly Remote In A Radio

Humans of all ages like music, but you can’t exactly pass a toddler the aux cable. That’s not to say the younger set don’t have their own particular tastes– they absolutely do, and they absolutely love to take control and inflict them on the rest of us. [nbr23] has a toddler who loves both music and tactile controls, and decided to combine the two for them with a project he calls Radio-Gaga, which is a gutted Panasonic radio that calls up tunes via Home Assistant.

Interestingly enough the radio is now just a remote control– the speaker has been removed along with the rest of the radio hardware. The buttons and dials are still there, though, letting the toddler control what tunes are on offer and at what volume via couple of potentiometers hooked to an ESP32. The sound itself is being served up from the homelab to a USB speaker. There’s one notable flaw with this architecture: if the batteries die on the remote, “Let it Go” does not until an adult intervenes manually or recharges the remote.

One interesting lesson [nbr23] wanted to share was that he was able to improve an unsatisfactorily slow startup time by assigning the device a static IP on his network– apparently the single longest step in getting the tunes going was negotiating a DHCP lease. Skipping that gets the tunes playing in under a second, which is fast enough even for the most impatient of tiny humans.

If you prefer a more self-contained device, we’ve seen toddler jukeboxes that keep storage and speaker built-in, many with NFC control. 

Connecting Your Car To Home Assistant

With how much time many of us spend in our cars, it makes perfect sense to consider them a second home. Yet even if that’s not the case, there are still good reasons to connect a car to one’s smart home solution like Home Assistant, such as to keep track of certain parameters for easy monitoring and reminders. This is what [The Stock Pot] channel recently demonstrated using a widget that connects to the OBD-II port inside the car, as not every car comes with its own app yet.

The used dongle is the ESP32-S3-based WiCAN from Australian company MeatPi. This device runs the open source WiCAN firmware. After plugging the dongle into the OBD-II port of the car, the device powers on and can be configured via Wi-Fi like any other smart device these days. After that it’s just another Wi-Fi device on the network.

Since each car’s ECU will represent data differently, you need a car-specific configuration, which can take some tweaking. The idea of integrating with Home Assistant is directly supported by MeatPi, with a handy documentation page. Of course [The Stock Pot] shared their configuration if you want to feel inspired. Among the parameters monitored you get things like fuel level, days to service and coolant temperature.

Although you could make the argument that it mostly saves you from having to waddle over to the car to check the data there, being able to remotely access the OBD-II port of a car does seem rather practical even outside of home automation concepts, such as gathering performance statistics and early failure warnings, especially for aspects like tire pressure and unhappy engine or BEV battery conditions that can quickly go from an inconvenience to very expensive.

Continue reading “Connecting Your Car To Home Assistant” →

Automating Window Shades With Home Assistant

Most people love window shades, but many dislike the tedium of having to open and close them over the course of each day. While there are automation options here, if you’re in a rental place like [Rooster Robotics], then you’d prefer something less intrusive, as well as less cloud-bound. This is basically why he opted to build his own solution from scratch to open and close roller shades via Home Assistant.

The comments to the video helpfully point out that technically his point about there not being commercial options with a forced remote account ‘feature’ is false, as the Aqara Roller Shade Driver E1 for example is just a regular Zigbee device which can be used with a wide range of home automation ecosystems. That said, it’s always nice to have your own device that you fully control.

Of course, these devices are deceptively simple, as you still have to somehow know how far open the curtain is, which is also useful if you just want to open the curtain a certain amount. The other issue is the need to have the motor parallel with the wall unless you enjoy having a big wart sticking out from the wall.

Solving the first issue was attempted with a Hall effect sensor, and the second with angled gearing. With some refinements this led to a functioning design, allowing the development of a custom PCB with an ESP32-S3 module for WiFi control. In the final design the Hall effect sensor and magnets were replaced with an AS5600 magnetic rotatory position sensor that requires just one magnet and offers a much higher resolution.

Currently the design files are not available, but [Rooster Robotics] has indicated that they are looking at open sourcing the files in the future.

Continue reading “Automating Window Shades With Home Assistant” →

Building A Monitor Light Bar For Better Productivity

If you’re intending to work at your desk for long periods of time, good lighting is a must, as it can help stave off eye strain and mental fatigue. It was a desire for more comfortable productivity that drove [Jade] to whip up a monitor-mounted lighting system for her workstation.

The build uses an ESP32 to run the show, with a rotary encoder for manual control and firmware that allows the monitor light to be neatly integrated with Home Assistant. The light itself comes from light strips that feature both warm white and cold white LEDs. Simple MOSFETs are used to control the brightness of the LEDs and which of the warm and cold LEDs are activated at any time. Everything is wrapped up in a 3D printed housing that neatly sits on top of the monitor with the aid of a simple printed clamp. The LED strips also have a nice soft glow thanks to a strip of diffuser material that [Jade] snatched from an old television.

We love a good lighting build, from the work-focused to the creative and beautiful.

Continue reading “Building A Monitor Light Bar For Better Productivity” →

Make Your Own ESP32-Based Person Sensor, No Special Hardware Needed

Home automation with high usefulness and low annoyance tends to rely on reliable person sensing, and [francescopace]’s ESPectre shows one way to do that cheaply and easily by leveraging hardware that’s already present on a common dev board.

ESPectre is an ESP32-based open source motion detector that detects movement without any cameras or microphones. It works similarly to millimeter-wave (mmWave) radar motion detectors in the sense that when a person moves, wireless signals are altered slightly as a result. ESPectre can detect this disturbance by watching and analyzing the Wi-Fi channel state information (CSI) and doing some very smart math and filtering. It’s cheap, easy to deploy and use, and even integrates with Home Assistant.

Combining a sensor like this with something else like a passive infrared (PIR) motion sensor is one way to get really robust results. But keep in mind that PIR only senses what it can see, whereas ESPectre works on WiFi, which can penetrate walls.

Since ESPectre supports low-cost ESP32 variants and is so simple to get up and running, it might be worth your time to give it a trial run. There’s even a browser-based ghost-dodging game [francescopace] put online that uses an ESPectre board plugged in over USB, which seems like a fun way to get a feel for what it can do.

A photo of the cats and the generated image

The Cutest Weather Forecast On E-Ink And ESP32

There’s a famous book that starts: “It is a truth universally acknowledged that a man in possession of a good e-ink display, must be in want of a weather station.” — or something like that, anyway. We’re not English majors. We are, however, major fans of this feline-based e-ink weather display by [Jesse Ward-Bond]. It’s got everything: e-ink, cats, and AI.

The generated image needs a little massaging to look nice on the Spectra6 e-ink display.

AI? Well, it might seem a bit gratuitous for a simple weather display, but [Jesse] wanted something a little more personalized and dynamic than just icons. With that in the design brief, he turned to Google’s Nano Banana API, feeding it the forecast and a description of his cats to automatically generate a cute scene to match the day’s weather.

That turned out to not be enough variety for the old monkey brain, so the superiority of silicon — specifically Gemini–was called upon to write unique daily prompts for Nano Banana using a random style from a list presumably generated by TinyLlama running on a C64. Okay, no, [Jesse] wrote the prompt for Gemini himself. It can’t be LLM’s all the way down, after all. Gemini is also picking the foreground, background, and activity the cats will be doing for maximum neophilia.

Aside from the parts that are obviously on Google servers, this is all integrated in [Jesse]’s Home Assistant server. That server stores the generated image until the ESP32 fetches it. He’s using a reTerminal board from SeedStudio that includes an ESP32-S3 and a Spectra6 colour e-ink display. That display leaves something to be desired in coloration, so on top of dithering the image to match the palette of the display, he’s also got a bit of color-correction in place to make it really pop.

If you’re interested in replicating this feline forecast, [Jesse] has shared the code on GitHub, but it comes with a warning: cuteness isn’t free. That is to say, the tokens for the API calls to generate these images aren’t free; [Jesse] estimates that when the sign-up bonus is used up, it should cost about fourteen cents a pop at current rates. Worth it? That’s a personal choice. Some might prefer saving their pennies and checking the forecast on something more physical, while others might prefer the retro touch only a CRT can provide.