A pair of RP2040-based USB microphones

Mico Is A USB Microphone Based On A Pi Pico

When [Mahesh Venkitachalam] was experimenting with machine learning for audio applications on a Raspberry Pi, he found himself looking for a simple USB microphone. A cheap one was easy to find, but the sound quality and directionality left much to be desired. A large, studio-quality mic would be overkill, so [Mahesh] decided to simply build exactly what was needed: a compact, yet high-quality USB microphone that he called Mico.

The sensing device is a MEMS microphone that outputs a pulse density modulated (PDM) signal. There are chips available to directly interface such a microphone to a USB port, but [Mahesh] found them difficult to work with and therefore settled on something he knew already: the Raspberry Pi Pico platform. Luckily, someone had already figured out how to read out a microphone and present a USB device to a PC, so all that was needed was to put all the bits together into a convenient form factor.

The great thing about the Pico platform is that its main controller chip, the RP2040, is available as a separate component. [Mahesh] designed a sleek little PCB that holds the RP2040 along with the MEMS microphone and a USB connector. The end result looks tidy enough that it might have come out of a mass-produced gizmo. Those don’t usually come with full schematics and source code, but the Mico does: everything is available on its GitHub page for anyone to re-use and improve.

You can judge the sound quality for yourself in the video embedded below. If you like DIY USB microphones, you’re in luck: we’ve featured one based on an STM32 as well as a beautiful recreation of a studio-quality mic.

Continue reading “Mico Is A USB Microphone Based On A Pi Pico”

A world map with a small magetic plane sitting on Japan

“Window To The World” Brings Far-Off Places To Your Home

For those who love travelling around the world, life hasn’t been great for the past two years. World-wide lockdowns and travel restrictions have kept many people stuck inside their own homes when they would rather be jetting off to distant cities. If you’re one of those bothered by Wanderlust, [Alex Shakespeare] might have a solution for you: a window that shows a live image from another location around the world.

A window showing a live webcam feed
The Window, showing a live feed from Tokyo.

To make the experience as lifelike as possible, [Alex] used an actual window in his London home and mounted a large TV behind it. A wall-mounted map enables him to choose any of five locations by moving a little magnetic plane across the map. LEDs show the available spots, while magnetometers detect the motion of the aircraft. An ESP8266 then instructs a media server to connect to the appropriate livestream, which is subsequently displayed on the TV screen.

All of this is clever enough already, but [Alex] decided to go one step further and added a thermal sensor that detects the location of any persons standing near the display and shifts the image a little when they move. This simulates the perspective of looking out a real window, and should give the image a more life-like quality than if it were simply static.

The whole design is available on [Alex]’s GitHub page, ready to be replicated by anyone who wants to look out over some exotic location. If, instead, you want a way to reminisce about the places you’ve visited in the past, check out this cool souvenir globe. We’ve also seen a neat Google Maps based one a few years back.

Continue reading ““Window To The World” Brings Far-Off Places To Your Home”

Building MS-DOS From Scratch Like It’s 1983

Building a complete operating system by compiling its source code is not something for the faint-hearted; a modern Linux or BSD distribution contains thousands of packages with millions of lines of code, all of which need to be processed in the right order and the result stored in the proper place. For all but the most hardcore Gentoo devotees, it’s way easier to get pre-compiled binaries, but obviously someone must have run the entire compilation process at some point.

What’s true for modern OSes also holds for ancient software such as MS-DOS. When Microsoft released the source code for several DOS versions a couple of years ago, many people pored over the code to look for weird comments and undocumented features, but few actually tried to compile the whole package. But [Michal Necasek] over at the OS/2 Museum didn’t shy away from that challenge, and documented the entirely-not-straightforward process of compiling DOS 2.11 from source.

The first problem was figuring out which version had been made available: although the Computer History Museum labelled the package simply as “MS-DOS 2.0”, it actually contained a mix of OEM binaries from version 2.0, source code from version 2.11 and some other stuff left from the development process. The OEM binaries are mostly finished executables, but also contain basic source code for some system components, allowing computer manufacturers to tailor those components to their specific hardware platform.

Compiling the source code was not trivial either. [Michal] was determined to use period-correct tools and examined the behaviour of about a dozen versions of MASM, the assembler likely to have been used by Microsoft in the early 1980s. As it turned out, version 1.25 from 1983 produced code that most closely matched the object code found in existing binaries, and even then some pieces of source code required slight modifications to build correctly. [Michal]’s blog post also goes into extensive detail on the subtle differences between Microsoft-style and IBM-style DOS, which go deeper than just the names of system files (MSDOS.SYS versus IBMDOS.COM).

The end result of this exercise is a modified DOS 2.11 source package that actually compiles to a working set of binaries, unlike the original. And although this does not generate any new code, since binaries of DOS 2.11 have long been available, it does provide a fascinating look into software development practices in an age when even the basic components of the PC platform were not fully standardized. And don’t forget that even today some people still like to develop new DOS software.

A wooden device with an LED display and speakers

The Inspirer Keeps Your Mood Up With Inspirational Quotes And Soothing Music

While some people enjoy the cold weather and long, dark nights in the Northern Hemisphere these days, others may find it hard to keep a positive mindset all through the winter. [Michael Wessel] decided he needed to do something about that and came up with The Inspirer, a desktop display that shows inspirational quotes and plays soothing music.

The design is deliberately bare-bones: a strip of wood, standing upright thanks to two metal brackets, onto which a bunch of components have been screwed, glued and taped. The actual display consists of a row of 14-segment LED modules that can show basic alphanumeric characters; these displays emit white light, but [Michael] added a red color filter in front to give them a more “retro” look.

This device is fully off-grid, so no Internet connection issues will disrupt your flow. A huge database of quotes and a selection of music tracks are stored on a pair of micro SD cards; an MP3 player module handles the music while an Arduino picks a quote, drives the display, and reads the buttons. You can select quotes based on a certain theme: examples include friendship, gardening, money, and love. But if you’re open to anything, you can just set it to “random” and get something from any of the 120 categories.

[Michael]’s simple and straightforward design should hopefully prove inspirational to many hardware enthusiasts. But if you’re looking for something more advanced, we featured a neat pomodoro timer that displays quotes a few weeks ago. Of course, this being Hackaday, we’ve also seen a clock based on literary quotes.

Continue reading “The Inspirer Keeps Your Mood Up With Inspirational Quotes And Soothing Music”

A robotic turret shooting plastic balls at a man

Automated Turret Keeps Dorm Clean, RoboCop Style

Students’ dorm rooms are not generally known to be the most orderly of places. Whether it’s mountains of dishes in the sink, piles of clothes waiting to be washed, or random bits and bobs strewn across the hallway, cleaning up is pretty low on the agenda for many dorm dwellers.

[Luis Marx] seems to have invented a useful solution to his (or his roommates’) sloppiness: a robotic turret that opens fire on anyone who leaves items unattended (video, in German, embedded below). This system uses a set of “clutter sensors” that can be placed in strategic locations around the house and will detect stray objects using ultrasonic sensors. If any are found, the main system is alerted through WiFi. The turret will then search for any persons in its vicinity and start shooting them with little plastic balls.

The turret in question is a beautifully-designed piece of kit made from 3D printed parts and controlled by an ESP32. It can swivel around its axis and tilt up and down using two servos, while its firing mechanism is driven by a DC motor. It tracks its target thanks to a camera-based object sensor that can recognize humans. The whole thing gives us a bit of a RoboCop vibe; we’d half expect it to shout Pick up those clothes. You have twenty seconds to comply.

While this might not be the definitive solution to messy dorm rooms, we like the creative thinking behind it. We’ve seen auto-targeting turrets before, but not in household applications like this. Of course there are plenty of other robots that can help you with domestic tasks.

Continue reading “Automated Turret Keeps Dorm Clean, RoboCop Style”

Anr air quality sensor mounted on a bike's handlebar

Measuring Air Quality Using Mobile Sensors For The Masses

Poor air quality is a major problem for city dwellers the world over. Dust, smoke, particles and noxious gases from vehicles, industry and agriculture makes many megacities downright hazardous to live in. Pinpointing the source of pollution and developing strategies for mitigation requires accurate data on pollutant levels, but obtaining these numbers is not always easy.

Enter CanAirIO, a citizen science project that aims to gather air quality data from around the world by putting sensors into the hands of as many people as possible. Its team has developed two different sensor nodes for this purpose: an indoor one that can measure CO2, and a mobile one that can measure particulate matter (PM) levels. Both versions are powered by an ESP32 microcontroller that reads out the air quality sensors and connects to the Internet using WiFi or BlueTooth. The data can then be shared online to create detailed maps showing local variations in air quality.

The design of the sensor nodes is fully open-source, allowing anyone with basic electronic skills to build them. The sensors are a Sensirion SCD30 for CO2 measurement and an SPS30 for PM levels. The mobile version comes with a neat 3D-printed enclosure that can be mounted on a bike’s handlebar, enabling the user to quickly gather data around their neighbourhood. A mobile app simplifies setting up the sensors and sharing the data.

The project has already been successful in gathering detailed data in the city of Bogotá, Colombia, and will no doubt prove useful in many other pollution hotspots around the world. We’ve seen similar community efforts to monitor air pollution and even radiation in various places, both showing how relatively simple devices can help to make a difference in people’s wellbeing. Continue reading “Measuring Air Quality Using Mobile Sensors For The Masses”

A home-made colorimeter

Classic Colorimeter Clone Calibrates Cuvettes’ Contents

For anyone dabbling in home chemistry, having access to accurate measurement equipment can mean the difference between success and failure. But with many instruments expensive and hard to find, what’s a home chemist to do? Build their own equipment, naturally. [Abizar] went ahead and built himself a colorimeter out of wood and spare electronic components.

A colorimeter (in a chemistry context) is an instrument that determines the concentration of a solution by measuring how much light of a certain wavelength is absorbed. [Abizar]’s design was inspired by the classic Klett-Summerson colorimeter from the 1950s, which uses a light bulb and color filters to select a wavelength, plus a photoresistor to measure the amount of light absorbed by the sample. Of course, a more modern solution would be to use LEDs of various colors, which is exactly what [Abizar] did, although he did give it a retro touch by using an analog meter as the readout device.

The body of the colorimeter is made from laser-cut pieces of wood, which form a rigid enclosure when stacked together. The color wheel holds eleven different LEDs and is made with a clever ratchet mechanism to keep it aligned to the cuvette, as well as a sliding contact to drive current into the selected LED. All parts are painted black to prevent stray reflections inside the instrument, but also make it look cool enough to fit in any evil genius’s lab. In the video embedded below, [Abizar] demonstrates the instrument and shows how it was put together.

While we haven’t seen anyone make their own colorimeter before, we have seen DIY spectrophotometers (which measure the entire absorption spectrum of a solution) and even building blocks to make a complete biochemistry lab.

Continue reading “Classic Colorimeter Clone Calibrates Cuvettes’ Contents”