SLAM Navigation For An Arduino Powered Car

There are plenty of “robot” projects out there that are really just a small remote control platform of some sort. We often like to think of robots of having some sort of autonomy though. [Luca Fagioli] demonstrates a great example of this with his explorer robot that uses Simultaneous Localization and Mapping (SLAM) to navigate its environment.

The robot is a built on a small plastic chassis, with one gear motor per drive wheel. Running the show is an Arduino Uno R4 Wi-Fi, paired with the Sensor Shield 5.0 and an L298N motor driver board. There’s also an HC-SR04 ultrasonic sensor module onboard, mounted atop an SG-90 servo motor so it can be panned around. The ultrasonic sensor determines the range between the robot and surrounding walls, and a map is constructed at the same time as the robot is localizing itself within it. There are also infrared sensors on the bottom of the robot for detecting tape marks on the floor for checkpointing purposes.

Often, SLAM mapping is done with advanced laser rangefinders or time of flight sensors, but there are many ways to go about it as this project demonstrates. We’ve even seen it done in a distributed manner with coordinated drones combining their efforts. Overall, it’s a highly useful technique for robot navigation and wayfinding.

Continue reading “SLAM Navigation For An Arduino Powered Car” →

Birduino Plays Bird Calls On Demand With NFC-enabled Cards

All [Hannah Robertson]’s Birduino needs is for one to tap an NFC-enabled card to the reader, and the device plays one of the vocalizations associated with the bird shown on the card. It ties together a few different components into a whole, and acts as a good reference design for similar work. There are a few time-saving construction tips worth keeping in mind, too.

The major components are an Arduino Nano, an RC522 RFID reader, and an MP3 player module. Using hardware modules and breakout boards means simpler wiring and being able to take advantage of existing libraries and sample code. There are also a few other things in this build that avoid re-inventing the wheel.

A deck of bird cards plus a roll of NFC stickers equals a ready-to-scan assortment without having to design it oneself.

Rather than design, print, and cut a set of bird cards, [Hannah] found a set of bird-themed playing cards with a different North American bird on each. The back of each card gets an NFC sticker off a big roll purchased online. The result? A set of NFC-enabled bird cards with a minimum of work and fuss. The RC522 RFID reader doesn’t fully support NFC, but it works well enough to read the ID off the stickers.

When the user touches a card to the reader, the device plays one of the vocalizations from a collection of sounds for each bird. Creating the manifests and linking each card’s ID to them was a lot of manual work, but the result is great. The sound themselves come from the Cornell Guide to Bird Sounds of the United States and Canada, a $20 USD curated compilation of vocalizations from a staggering 908 bird species of North America. In a way, the biggest bottleneck is the card deck itself. At 52 cards plus two Jokers, it contains only a small subset of the total birds in the Cornell collection.

The enclosure is laser-cut clear acrylic, and here [Hannah] offers some time- and money-saving advice for anyone looking to glue acrylic to acrylic in a way that doesn’t frost or cloud the clear acrylic: Clear Gorilla Glue Gel. There are of course other glues made for this purpose, but Clear Gorilla Glue Gel (the one in a squeeze tube) is something one should be able to find in just about any hardware store. Another tip: double-check before buying, because many Gorilla Glue products are very similarly named despite being significantly different products.

Watch (and listen to) the video embedded below. If birds and their vocalizations are something that intrigues and inspires you, Cornell also has a resource for identifying birds by sound alone — we’ve seen it implemented with a Raspberry Pi and USB microphone.

Continue reading “Birduino Plays Bird Calls On Demand With NFC-enabled Cards” →

Two-Component H-shifter For Racing Sims

Flying and driving simulators can go as far as money will take you, and at some point it might end up being cheaper to buy a plane or race car than to keep adding capabilities to some of the sim rigs we’ve seen. But it can also be a fairly affordable hobby as well, with entry-level components being within reach for many. The price can drop precipitously from there too, provided some parts can be sourced and a 3D printer is made available, and [Jason] is demonstrating one of the lowest-cost H-shifters we’ve seen which only uses two parts at its core.

The two components only cover the electronics for the build, but this gets almost everything needed for the shifter squared away. A joystick like those found inside many game controllers is paired with an Arduino Pro Micro, with a very straightforward wiring configuration between them. These components are paired with a prototype 3D printed case and shift knob which provides the H pattern of choice. From there it’s as simple as uploading some readily-available firmware, which [Jason] also demonstrates, and which has many options for various configurations of shifters.

Although this was just a prototype, it shows was just a few off-the-shelf components and a 3D printer can provide to an affordable driving sim setup. Even then a 3D printer is not always necessary, like this three-pedal setup using extruded aluminum frame as a base. From there, all kinds of other features can be added like force feedback on the steering wheel.

Continue reading “Two-Component H-shifter For Racing Sims” →

The Big Moon Plot

When you look into the night sky, you can’t help but wish to bring the outer worlds to your doorstep. One of the best ways to do that is to photograph the Moon’s surface to display in a frame. However, [Sebastian Lague] found a simple image too lackluster compared to something with a bit more style, such as a plotted image of the lunar terrain.

Why plotting? Well, the Moon is not defined in the same way with contrasting colors as Earth is. The Moon is peppered with craters and differing elevations that separate regions, so why not build an entire DIY plotter from scratch? [Sebastian Lague] did exactly this with a custom algorithm to take the elevation maps and create vector drawings which are plotted on his custom plotter.

Continue reading “The Big Moon Plot” →

A Keyboard With No Keys

For as capable as smartphone hardware is, the software running on them can be especially restrictive and cumbersome. Unlike a single-board computer with GPIO running a standard Linux operating system and some intuitive programming language like Python, smartphones are generally walled gardens where programming major overhead, and if a custom program can be run on them at all the user still has to figure out how to interface hardware with a USB-C port. To skip past all of this, [nicolas.ma] built an audio modem that can send keyboard input to a computer with nothing more than a browser.

The “keyboard” starts off in a browser running on a standard smartphone. A user can input text into the browser, which then gets converted into a series of audible audio pulses that can be sent to the keyboard. The keyboard itself listens to those pulses, decodes them, and then sends the text through to the computer as a standard USB device thanks to an Arduino Micro at the center. Arduino Micros are excellent choices for keyboard controllers because they have a built-in USB chip.

The protocol used here is designed and built by [nicolas.ma] as well. The words allow for variable length, with the device determining message length, and a word-ending scheme that automatically sends the message to memory when it’s detected that the message is finished. There’s also integrity checking and the ability to check on the link’s state. From hardware to software it’s an impressive build, and for anyone wondering what this might be used for [nicolas.ma] has already built a password manager from it.  Continue reading “A Keyboard With No Keys” →

Using Solar Air Heating To Dry Clothes

About a month ago, [Greenhill Forge] built a few solar panels to collect energy from the sun. Unlike solar photovoltaics, which turn sunlight directly into electricity, these were designed to gather solar thermal energy with air. These types of panels can gather a tremendous amount of energy for a very low cost, and although the first video only went into the theory of their operation, his latest video actually shows us how to use that energy in a practical way.

The video starts by building a new solar panel, using upgraded materials and building methods compared to the previous versions which should improve the efficiency. There’s some data analysis of the performance, but at the end of the video [Greenhill Forge] actually hooks one of these up to a clothes dryer to explore its real-world efficacy. This process involves disconnecting the electric heater, removing one of the blower fans, and building a new flange to accept the heated air from the solar panel. A microcontroller keeps an eye on the incoming air temperature and controls a fan to try to hit the target temperature.

After an hour of drying, the test clothing was completely dry, with the only electricity used to turn the drum in the dryer. This is more than an order of magnitude of reduction in the power needed to dry clothes, which is fairly impressive. [Greenhill Forge] also notes that systems like these could augment off-grid systems not only for clothes drying but for home heating, greenhouse heating, or drying out various crops and that they could reduce strain on an electrical system that otherwise relies on resistive heating methods. There are many ways of building these panels, so be sure to check out his first video for ideas. Continue reading “Using Solar Air Heating To Dry Clothes” →

Medication Reminder Uses Only One Button

As anyone who takes medicines regularly will attest to, the days have a tendency to blur together, making it hard to remember if you did something like take that day’s dose or not. There are plenty of products available to help keep track of medication reminders but many are overly complicated, so [Jeroen] built this one which keeps simplicity and usability as its core design principle.

[Jeroen] calls it the MedMinder, and it’s a small, compact, rectangular device with a four-character display meant to sit on a countertop. When it’s time to take a medicine, the display will show that medicine’s four-letter code until the user pushes the single button under the display, signalling that they’ve taken their dose. If many different medications have to be taken at the same time, it displays the first priority until the button is pushed, and then displays whichever one is next after that.

Programming is a little less straightforward, as the medications need to be added to the source code and uploaded to the Arduino that sits at the center of this build, but with the source code available this isn’t too difficult for someone with minimal experience with microcontrollers.

In an idealized world, technology should make our lives simpler or easier, and this small device goes a long way towards helping with that goal. Especially for an important but mundane task that can be surprisingly easy to lose track of. Although we glossed over the accuracy of this device’s clock in this article, we do have a comprehensive guide for selecting the right real-time clock for microcontrollers like this.