Back To Reality With The Time Brick

There are a lot of distractions in daily life, especially with all the different forms of technology and their accompanying algorithms vying for our attention in the modern world. [mar1ash] makes the same observation about our shared experiences fighting to stay sane with all these push notifications and alerts, and wanted something a little simpler that can just tell time and perhaps a few other things. Enter the time brick.

The time brick is a simple way of keeping track of the most basic of things in the real world: time and weather. The device has no buttons and only a small OLED display. Based on an ESP-01 module and housed in a LEGO-like enclosure, the USB-powered clock sits quietly by a bed or computer with no need for any user interaction at all. It gets its information over a Wi-Fi connection configured in the code running on the device, and cycles through not only time, date, and weather but also a series of pre-programmed quotes of a surreal nature, since part of [mar1ash]’s goals for this project was to do something just a little bit outside the norm.

There are a few other quirks in this tiny device as well, including animations for the weather display, a “night mode” that’s automatically activated to account for low-light conditions, and the ability to easily handle WiFi drops and other errors without crashing. All of the project’s code is also available on its GitHub page. As far as design goes, it’s an excellent demonstration that successful projects have to avoid feature creep, and that doing one thing well is often a better design philosophy than adding needless complications.

Simple Antenna Makes For Better ESP32-C3 WiFi

We’ve seen tons of projects lately using the ESP32-C3, and for good reason. The microcontroller has a lot to offer, and the current crop of tiny dev boards sporting it make adding a lot of compute power to even the smallest projects dead easy. Not so nice, though, is the poor WiFi performance of some of these boards, which [Peter Neufeld] addresses with this quick and easy antenna.

There are currently a lot of variations of the ESP32-C3 out there, sometimes available for a buck a piece from the usual suspects. Designs vary, but a lot of them seem to sport a CA-C03 ceramic chip antenna at one end of the board to save space. Unfortunately, the lack of free space around the antenna makes for poor RF performance. [Peter]’s solution is a simple antenna made from a 31-mm length of silver wire. One end of the wire is formed into a loop by wrapping it around a 5-mm drill bit and bending it perpendicular to the remaining tail. The loop is then opened up a bit so it can bridge the length of the ceramic chip antenna and then soldered across it. That’s all it takes to vastly improve performance as measured by [Peter]’s custom RSSI logger — anywhere from 6 to 10 dBm better. You don’t even need to remove the OEM antenna.

The video below, by [Circuit Helper], picks up on [Peter]’s work and puts several antenna variants to further testing. He gets similarly dramatic results, with 20 dBm improvement in some cases. He does note that the size of the antenna can be a detriment to a project that needs a really compact MCU and tries coiling up the antenna, with limited success. He also did a little testing to come up with an optimal length of 34 mm for the main element of the antenna.

There seems to be a lot of room for experimentation here. We wonder how mounting the antenna with the loop perpendicular to the board and the main element sticking out lengthwise would work. We’d love to hear about your experiments, so make sure to ping us with your findings.

Continue reading “Simple Antenna Makes For Better ESP32-C3 WiFi”

Octet Of ESP32s Lets You See WiFi Like Never Before

Most of us see the world in a very narrow band of the EM spectrum. Sure, there are people with a genetic quirk that extends the range a bit into the UV, but it’s a ROYGBIV world for most of us. Unless, of course, you have something like this ESP32 antenna array, which gives you an augmented reality view of the WiFi world.

According to [Jeija], “ESPARGOS” consists of an antenna array board and a controller board. The antenna array has eight ESP32-S2FH4 microcontrollers and eight 2.4 GHz WiFi patch antennas spaced a half-wavelength apart in two dimensions. The ESP32s extract channel state information (CSI) from each packet they receive, sending it on to the controller board where another ESP32 streams them over Ethernet while providing the clock and phase reference signals needed to make the phased array work. This gives you all the information you need to calculate where a signal is coming from and how strong it is, which is used to plot a sort of heat map to overlay on a webcam image of the same scene.

The results are pretty cool. Walking through the field of view of the array, [Jeija]’s smartphone shines like a lantern, with very little perceptible lag between the WiFi and the visible light images. He’s also able to demonstrate reflection off metallic surfaces, penetration through the wall from the next room, and even outdoor scenes where the array shows how different surfaces reflect the signal. There’s also a demonstration of using multiple arrays to determine angle and time delay of arrival of a signal to precisely locate a moving WiFi source. It’s a little like a reverse LORAN system, albeit indoors and at a much shorter wavelength.

There’s a lot in this video and the accompanying documentation to unpack. We haven’t even gotten to the really cool stuff like using machine learning to see around corners by measuring reflected WiFi signals. ESPARGOS looks like it could be a really valuable tool across a lot of domains, and a heck of a lot of fun to play with too.

Continue reading “Octet Of ESP32s Lets You See WiFi Like Never Before”

38C3: Towards An Open WiFi MAC Stack On ESP32

At the 38th Chaos Communications Congress, [Frostie314159] and [Jasper Devreker] gave us a nice update on their project to write an open-source WiFi stack for the ESP32. If you’re interested in the ESP32 or WiFi in general, they’ve also got a nice deep dive into how that all works.

On the ESP32, there’s a radio, demodulator, and a media access controller (MAC) that takes care of the lowest-level, timing-critical bits of the WiFi protocol. The firmware that drives the MAC hardware is a licensed blob, and while the API or this blob is well documented — that’s how we all write software that uses WiFi after all — it’s limited in what it lets us do. If the MAC driver firmware were more flexible, we could do a lot more with the WiFi, from AirDrop clones to custom mesh modes.

The talk starts with [Jasper] detailing how he reverse engineered a lot of Espressif’s MAC firmware. It involved Ghidra, a Faraday cage, and a lucky find of the function names in the blob. [Frostie] then got to work writing the MAC driver that he calls Ferris-on-Air. Right now, it’s limited to normal old station mode, but it’s definite proof that this line of work can bear fruit.

This is clearly work in progress — they’ve only been at this for about a year now — but we’ll be keeping our eyes on it. The promise of the ESP32, and its related family of chips, being useful as a more general purpose WiFi hacking tool is huge.

Pushing 802.11ah To The Extreme With Drones

It might come as a surprise to some that IEEE, the Institute for Electrical and Electronics Engineers, does more than send out mailers asking people to renew their memberships. In fact, they also maintain various electrical standards across a wide range of disciplines, but perhaps the one most of us interact with the most is the 802.11 standard which outlines WiFi. There have been many revisions over the years to improve throughput but the 802.11ah standard actually looks at decreasing throughput in favor of extremely increased range. Just how far you can communicate using this standard seems to depend on how many drones you have.

802.11ah, otherwise known as Wi-Fi HaLow, operates in the sub-gigahertz range which is part of why it has the capability of operating over longer distances. But [Aaron] is extending that distance even further by adding a pair of T-Halow devices, one in client mode and the other in AP (access point) mode, on a drone. The signal then hops from one laptop to a drone, then out to another drone with a similar setup, and then finally down to a second laptop. In theory this “Dragon Bridge” could allow devices to communicate as far as the drone bridge will allow, and indeed [Aaron] has plans for future revisions to include more powerful hardware which will allow even greater distances to be reached.

While there were a few bugs to work out initially, eventually he was able to get almost two kilometers of distance across six devices and two drones. Something like this might be useful for a distributed network of IoT devices that are just outside the range of a normal access point. The Dragon Bridge borrowed its name from DragonOS, a Linux distribution built by [Aaron] with a wide assortment of software-defined radio tools available out of the box. He’s even put in on the Steam Deck to test out long-distance WiFi.

Continue reading “Pushing 802.11ah To The Extreme With Drones”

WiFi Status Indicator Keeps Eye On The Network

These days, most of us take the instant availability of a high-speed link to the Internet for granted. But despite all of the latest technology, things still occasionally go pear-shaped — meaning that blistering fiber optic connection you’ve got to the world’s collected knowledge (not to mention, memes) can still go down when you need it the most.

After suffering some connectivity issues, [Arnov Sharma] decided to put together a little box that could alert everyone in visual range to the status of the local router. It won’t fix the problem, of course, but there’s a certain value to getting timely status updates. Using a 3D printed enclosure and a couple of custom PCBs, the build is fairly comprehensive, and could certainly be pressed into more advanced usage if given the appropriate firmware. If you’ve been thinking of a Internet-connected status indicator, this is certainly a project worth copying studying closely.

Continue reading “WiFi Status Indicator Keeps Eye On The Network”

The Design Process For A Tiny Robot Brain

As things get smaller, we can fit more processing power into devices like robots to allow them to do more things or interact with their environment in new ways. If not, we can at least build them for less cost. But the design process can get exponentially more complicated when miniaturizing things. [Carl] wanted to build the smallest 9-axis robotic microcontroller with as many features as possible, and went through a number of design iterations to finally get to this extremely small robotics platform.

Although there are smaller wireless-enabled microcontrollers, [Carl] based this project around the popular ESP32 platform to allow it to be usable by a wider range of people. With that module taking up most of the top side of the PCB, he turned to the bottom to add the rest of the components for the platform. The first thing to add was a power management circuit, and after one iteration he settled on a circuit which can provide the board power from a battery or a USB cable, while also managing the battery’s charge. As for sensors, it has a light sensor and an optional 9-axis motion sensor, allowing for gesture sensing, proximity detection, and motion tracking.

Of course there were some compromises in this design to minimize the footprint, like placing the antenna near the USB-C charger and sacrificing some processing power compared to other development boards like the STM-32. But for the size and cost of components it’s hard to get so many features in such a small package. [Carl] is using it to build some pretty tiny robots so it suits his needs perfectly. In fact, it’s hard to find anything smaller that isn’t a bristlebot.

Continue reading “The Design Process For A Tiny Robot Brain”