LoRa Air Quality Monitor Raises The Bar On DIY IoT

We’ve seen an incredible number of homebrew environmental monitors here at Hackaday, and on the whole, they tend to follow a pretty predicable pattern. An ESP8266 gets paired with a common temperature and humidity sensor, perhaps a custom PCB gets invited to the party, and the end result are some values getting pushed out via MQTT. It’s a great weekend project to get your feet wet, but not exactly groundbreaking in 2022.

Which is why we find the AERQ project from [Mircea-Iuliu Micle] so refreshing. Not only does this gadget pick up temperature and humidity as you’d expect, but its Bosch BME688 sensor can also sniff out volatile organic compounds (VOCs) and gases such as carbon monoxide and hydrogen. The datasheet actually claims this is the “first gas sensor with Artificial Intelligence (AI)”, and while we’re not sure what exactly that means in this context, it’s a claim that apparently warrants a price tag of $15+ USD a pop in single quantities.

There’s an AI hiding in there someplace.

But the fancy sensor isn’t the only thing that sets AERQ apart from the competition. Instead of a member of the ubiquitous ESP family, it’s using the Wio-E5, a relatively exotic STM32 package that integrates a long-range LoRa radio. [Mircea-Iuliu] has paired that with a Linx USP-410 chip antenna or, depending on which version of the four-layer PCB you want to use, a u.Fl connector for an external antenna. The whole thing is powered by a simple USB connection, and its Mbed OS firmware is setup to dump all of its collected data onto The Things Network.

All told, it’s a very professional build that certainly wouldn’t look out of place if it was nestled into some off-the-shelf air quality monitor. While the high-end detection capabilities might be a bit overkill for home use, [Mircea-Iuliu Micle] points out that AERQ might provide useful insight for those running indoor events as COVID-19 transitions into its endemic stage.

Share Screen To RGB Panel With Pi Pico W

RGB LEDs are great for adding a bit of color to your life, and it’s even more satisfying to use a matrix of them as a graphic display. [bitluni] built an RGB LED display with Pi Pico to which you can share a pixelated version of your PC’s screen.

[bitluni] wanted to gain some experience with MicroPython on the Raspbery Pi Pico W, and had previously used WebSockets to transmit display data over WiFi. Unfortunately, the available MicroPython WebSockets implementation didn’t leave enough RAM for the rest of the code. Instead, he set up a simple HTTP server on the Pico that receives the pixel data as a POST request. This makes for a slow refresh rate but still looks great, especially with the 3D printed rear-projection frame.

To send display data from the computer, [bitluni] uses a simple locally hosted HTML page that takes the Pico’s IP address, and prompts you to select the display or window you want to share. It uses JavaScript to grab the display data, generate the required low-res pixel values, and send the POST request.

This looks like a fun weekend project to add to your lab or home and only costs about $20 in parts. It’s basically a scaled-down version of his giant ping pong ball wall display.

Continue reading “Share Screen To RGB Panel With Pi Pico W”

Sleep Posture Monitor Warns You Away From Dangerous Positions

Age, we’re told, is just a number, but that number seems to be the ever-increasing count of injuries of a ridiculous nature. Where once the younger version of us could jump from a moving car or fall out of a tree with just a few scrapes to show for the effort, add a few dozen trips around the sun and you find that just “sleeping funny” can put you out of service for a week.

Keen to avoid such woes, [Elite Worm] came up with this sleep posture alarm to watch for nocturnal transgressions, having noticed that switching to a face-down sleeping position puts a kink in his neck. He first considered using simple mechanical tilt switches to detect unconscious excursions from supine to prone. But rather than be locked into a single posture, he decided to go with an accelerometer instead. The IMU and an ATtiny85 live on a custom PCB along with a small vibrating motor, which allows for more discrete alerts than a buzzer or beeper would.

Placed in a 3D printed enclosure and clipped to his shorts, the wearable is ready to go. The microcontroller wakes up every eight seconds to check his position, sounding the alarm if he’s drifting into painful territory. [Elite] did some power analysis on the device, and while there’s room for improvement, the current estimated 18 days between charging isn’t too shabby. The video below has all the details; hopefully, design files and code will show up on his GitHub soon.

Considering that most of us spend a third of our life sleeping, it’s little wonder hackers have attacked sleep problems with gusto. From watching your brainwaves to AI-generated nonsense ASMR, there’s plenty of hacking fodder once your head hits the pillow.

Continue reading “Sleep Posture Monitor Warns You Away From Dangerous Positions”

The Pi Pico board on top of a white box with an Ethernet jack, with a sensor module plugged onto the Pico's pin headers. A black MicroUSB and a green Ethernet cable are connected to this device.

An Elegant Ethernet Library For Your Next RP2040 Project

A few days ago we covered a project that brought Ethernet connectivity to the Raspberry Pi Pico using little more than some twisted pair and a RJ-45 connector. It was a neat trick, but not exactly ready for widespread adoption. Looking to improve on things a bit, [tvlad1234] has taken that project’s code and rewritten it into a friendly library you can use with any RP2040 board.

In case you missed it, the initial demo did 10BASE-T transmission by bit-banging with the PIO, and was able to send UDP messages to devices on the wired LAN. It was an impressive accomplishment, but its code didn’t make it easy to build your project around it. This new library makes UDP messaging as easy as a printf, offloading all non-PIO-managed Ethernet signal work onto the RP2040’s second CPU core. The library even generates a random MAC address out of your flash chip’s serial number!

As a demonstration of the new library, [tvlad1234] has put together a simple Ethernet-connected temperature monitor using the BMP085 or BMP180 sensor connect over I2C. If you feel like you could use an Ethernet transmit-only sensor in your life, browsing the source code would be a great start.

Pi Pico Gives Its Life For Overclocking

How fast can a Raspberry Pi Pico go? Well, apparently the answer is 1 GHz if you freeze it and give it over twice the voltage it normally gets. Oh, one catch. After a few minutes, the chip will fry itself.

That’s the results reported by [David] who took a Peltier cooler and a pretty serious over-voltage. The dhrystone scores went from around 200 to over 1100. Of course, there’s that pesky early death to worry about, so you probably won’t want to try this at home.

Even before the chip bites the dust, there are other problems to address. For example, once you get much over 250 MHz, the Pico’s SPI flash can’t keep up, so all the software you want to run has to be put in RAM first. You’ll also want to do some poking at the system clock parameters.

Honestly, we enjoy overclocking PCs or just about anything else. The good news is if you fry a Pico, it won’t make a sizable dent in your wallet. It is also a fun way to learn a bit more about the internals of the processor. According to [David], the cooler took the part to -40 C. We wonder how it would fare in a bath of LN2?

Of course, you can push a regular Pi, too. If you really need a 1 GHz overclocked microcontroller, maybe check out the Teensy.

An ASCII Terminal Like It’s 1974

It’s quite probable that any of you who have built a keyboard will have done so using a matrix of keys connected to a microcontroller, or if you are old-school, a microprocessor. A CPU can scan the keyboard matrix with ease, and pass whatever is typed either to whatever software it is running, or to a host computer. There was a time however when available CPUs were not considered powerful enough to do all this and also perform a useful task, so a keyboard would have its own decoder chip that would output ASCII over a parallel interface. It’s an era [John Calhoun] harks back to with Adam74, a little ASCII terminal which takes its input from that 7-bit parallel port.

In the place of a forest of TTL chips which might have graced the originals, within that attractive curved laser cut acrylic case is an LCD display and a Teensy microcontroller board. There’s a level shifter for the classic 5 volt logic, and of course a small buzzer for the essential BEL character. In these days when a parallel interface is relatively rare, he describes the rediscovery of alternate earth lines in a ribbon cable to minimize cross-talk. Should you wish to try your own, everything can be found on GitHub.

All in all it’s a fun way to rediscover an old idea.

Clover Computer: A Modern Z8000 CP/M Machine

Seeing some old Zilog 16-bit chips on eBay recently, [Scott Baker] was curious enough to snap them up and build himself a Z8000 computer. It started as a two-board solution, then he added a display module. Instead of layering the boards vertically à la a PC/104 stack, [Scott] decided to build them flat. His first backplane was triangular, but he opted for a square to accommodate one more expansion board in the future. The assembled contraption resembles a clover, hence the name Clover Computer.

The Z8000 was Zilog’s first 16-bit microprocessor, introduced in 1979. It was not hugely popular for a variety of reasons (the Z8000 Wikipedia article has some interesting details). The Z8000 was eclipsed in the marketplace by Intel’s 8088 and Motorola’s 32-bit 68000. One interesting point is that the Z8000 did not use microcode, and as a result, its transistor count was significantly less than its contemporaries. The Z8000 was used in some military applications, and despite its limited commercial success, it continued to be available from Zilog and licensed second sources up until 2012.

[Scott]’s design splits the system into a CPU board, a memory and serial board, and a display board. Along the way, he learns 1980’s era tricks from the Olivetti M20, one of the few computer systems designed around the Z8000. He also manages to find a recent Z8000 implementation of CP/M by GitHub user [], which [Scott] forked and adapted to his project (see project repo here). He succeeds in getting everything working, and ports a monitor, Tiny Basic, and Zork.

Check out his project write-up introductory link, and see it in action in the video below the break. Did you ever use or encounter the Z8000? Let us know in the comments!

Continue reading “Clover Computer: A Modern Z8000 CP/M Machine”