Posts with «arduino» label

A Buzzing, Flashing Phone Ringer For the Elderly

For a lonely person, elderly or otherwise, the sound of a ringing phone can be music to the ears, unless of course it’s another spam call. But what good is a phone when you can’t hear it well enough to answer?

[Giovanni Aggiustatutto] was tasked with building an additional ringer for a set of cordless landline phones belonging to an elderly friend. Rather than try to intercept the signal, [Giovanni] chose to simply mic up the phone base that’s connected to the phone port on the router and send a signal over Wi-Fi to a second box which has a loud piezo buzzer and a handful of LEDs.

At the heart of this build is a pair of ESP8266 Wemos D1 minis and an Arduino sound sensor module inside a pair of really nice-looking 3D printed boxen that may or may not have been inspired by an IKEA air quality sensor. On the receiving side, a green LED indicates the system is working, and the red LEDs flash as soon as a call comes in.

All the code, schematics, and STL files are available for this build, and between the Instructable and the build video after the break, you should have no trouble replicating it for the hard-of-hearing in your life.

Smart Coffee Replaces Espresso Machine Controller With Arduino, Sensors

A common hacker upgrade to an espresso machine is to improve stability and performance with a better temperature controller, but [Schematix]’s Smart Coffee project doesn’t stop there. It entirely replaces the machine’s controller and provides an optional array of improvements for a variety of single-boiler machines (which is most of them).

Smart Coffee isn’t free, it costs 16 NZD (about 10 USD) but there is a free demo version. There is no official support, but there are wiring guides and sources aplenty from which to purchase the various optional parts. It runs on an Arduino MEGA 2560 PRO (or similar microcontroller) and supports a wide array of additional hardware including pressure transducer, water level sensor, flow meter, OLED display, and more.

Modification of one’s espresso machine is a rewarding endeavor, but the Smart Coffee project provides a way for one to get straight to the hacking and function modifying, instead of figuring out the wiring hardware interfacing from scratch.

We’ve seen [Schematix]’s work before with a DIY induction heater which showed off thoughtful design, and it’s clear he takes his coffee at least as seriously. Check out the highly comprehensive overview and installation video for Smart Coffee, embedded just below the page break.

Thanks to [X-Cubed] for the tip!

2023 Halloween Hackfest: Treat Trough of Terror Is Actually Pretty Cute

Even though it seems the worst of COVID has passed, October generally kicks off cold and flu season, so why not continue to pass out Halloween treats in a socially-distanced fashion?

That is, of course the idea behind [Gord Payne]’s Halloween Treat Trough of Terror. Lay a treat at the top of the trough and it will activate the LED strips that follow the treat down to the end, as well as some spooky sounds. The treat in question is detected by an SR-04 ultrasonic distance sensor connected to an Arduino Nano.

All in all this was a highly successful build as far as neighborhood entertainment value goes. Toddlers stared in awe at the blinkenlights, teenagers proclaimed it ‘sick’, and we can only assume that the adults were likely happy to see something aimed at kids that’s not scary.

[Gord] has a nice how-to if you want to build your own, and of course, the Arduino sketch is available. Be sure to check it out in action after the break.

Don’t have room to build a treat slide? Here’s a socially-distanced dispenser that lets them stomp a giant button.

 

Investigating The Fourth Passive Component

When first learning about and building electronic circuits, the first things all of us come across are passive components such as resistors, capacitors, and inductors. These have easily-understandable properties and are used in nearly all circuits in some way or another. Eventually we’ll move on to learning about active components like transistors, but there’s a fourth passive circuit component that’s almost never encountered. Known as the memristor, this mysterious device is not quite as intuitive as the other three, so [Andrew] created an Arduino shield to investigate their properties.

Memristors relate electric charge and magnetic flux linkage, which means that their resistance changes based on the current that passes through them. As their name implies, this means they have memory, and retain their properties even after power is removed. [Andrew] is testing three different memristors, composed of tungsten, carbon, and chromium, using this specialized test set. The rig is based on an Arduino Uno and has a few circuit components that can be used as references and generates data on the behavior of the memristors under various situations.

The memristors used here do exhibit expected behavior when driven with positive voltage signals, but did exhibit a large amount of variability when voltage was applied in a negative direction. [Andrew] speculates that using these devices for storage would be difficult and would likely require fairly bespoke applications for each type. But as the applications for these seemingly bizarre circuit components increase, we expect them to improve much like any other passive component.

Feed Your Fasteners in Line, With a Bowl Feeder

If you spend much time around industrial processes, you may have seen a vibrating bowl feeder at work. It’s a clever but simple machine that takes an unruly pile of screws or nuts and bolts, and delivers them in a line the correct way up. They do this by shaking the pile of fasteners in a specific way — a spiral motion which encourages them to work to the edge of the pile and align themselves on a spiral track which leads to a dispenser. It’s a machine [Fraens] has made from 3D printed parts, and as he explains in the video below the break, there’s more to this than meets the eye.

The basic form of the machine has a weighted base and an upper bowl on three angled springs. Between the two is an electromagnet, which provides the force for the vibration. The electromagnet needed to be driven with a sine wave which he makes with an Arduino and delivers as PWM via an H-bridge, but the meat of this project comes in balancing the force and frequency with the stiffness of the springs. He shows us the enormous pile of test prints made before the final result was achieved, and it’s a testament to the amount of work put into this project. The final sequence of a variety of objects making the march round the spiral is pure theatre, but we can see his evident satisfaction in a job well done.

Oddly this isn’t the first bowl feeder we’ve seen, though it may be one of the most accomplished. We particularly like this tiny example for SMD parts.

Hack a Day 27 Sep 00:00

Latency Meter For Accurate Gaming

The gaming world experienced a bit of a resurgence in 2020 that is still seen in the present day. Even putting aside the effects from the pandemic, the affordability and accessibility has arguably never been better. Building a gaming PC can have its downsides, though, and a challenging issue to troubleshoot is input lag or input latency. This is something that’s best measured with standalone hardware, and if this is an issue on your setup you may want to take a look at this latency meter.

Unlike other measurement devices that use the time between a mouse button input and the monitor’s display of a bullet or shooting event, this one looks at mouse movement and the change in the scene instead. This makes it much more versatile than other methods since it’s independent of specific actions, and can be used in any game without any specific events needed to perform the measurement. A camera is placed on the monitor’s top edge and the Arduino-based device sends mouse commands to the computer while measuring the time between those commands and the shift in the image on the monitor.

The project is open source, so with the right hardware it’s possible to build one to troubleshoot latency issues or just to learn more about a particular hardware configuration’s behavior. Arduinos and other microcontrollers have been doing all kinds of things by pretending to be human interface devices like this for a while now. One of our favorites of late was this effects pedal that replicates musical effects on mice and keyboards.

Kinetic Sculpture Intermittently Lights Up the Night

We absolutely love the impetus of this project, as it definitely sounds like something a Hackaday reader would go through. After finally deciding between a CNC router and a laser cutter, [Eirik Brandal] was planning to “Hello, World” the CNC with something quick and simple, like maybe a few acrylic plates with curves and some electronics. Instead, feature creep took over, “things escalated out of control”, and [Eirik] came up with this intriguing and complicated kinetic sculpture.

As you’ll see in the demo video below, this is a motor-driven sculpture with sound and intermittent light. It has an Arduino Nano Every, two motors, and eight gears with various cog counts to accommodate the project. The light comes from LEDs that are attached to the DIY gears with their legs bent and their little feet sliding around homemade slip rings in order to alight.

But what about the sound? There’s an affixed piezo disk that picks up the gears’ vibrations and chafing, and this gets amplified to augment the acoustic sounds of the sculpture. Be sure to check out the quite satisfying demo video after the break, and stick around for the build video.

Are you as fascinated by kinetic sculptures as we are? Here’s on that uses machine learning in order to bring balance to itself.

Machine Learning Robot Runs Arduino Uno

When we think about machine learning, our minds often jump to datacenters full of sweating, overheating GPUs. However, lighter-weight hardware can also be used to these ends, as demonstrated by [Nikodem Bartnik] and his latest robot.

The robot is charged with autonomously navigating a simple racetrack delineated by cardboard barriers. The robot is based on a two-wheeled design with tank-style steering. Controlled by an Arduino Uno, the robot uses a Slamtec RPLIDAR sensor to help map out its surroundings. The microcontroller is also armed with a Bluetooth link and an SD card for storage.

The robot was first driven around the racetrack multiple times under manual control, all the while collecting LIDAR data. This data was combined with control inputs to help create a data set that could be used to train a machine learning model. Feature selection techniques were used to refine down the data points collected to those most relevant to completing the driving task. [Nikodem] explains how the model was created and then refined to drive the robot by itself in a variety of race track designs.

It’s a great primer on machine learning techniques applied to a small embedded platform.

Clock Hack Gives DEC Rainbow a New Lease on Life

In retrocomputing circles, it’s often the case that the weirder and rarer the machine, the more likely it is to attract attention. And machines don’t get much weirder than the DEC Rainbow 100-B, sporting as it does both Z80 and 8088 microprocessors and usable as either a VT100 terminal or as a PC with either CP/M or MS-DOS. But hey — at least it got the plain beige box look right.

Weird or not, all computers have at least a few things in common, a fact which helped [Dr. Joshua Reichard] home in on the problem with a Rainbow that was dead on arrival. After a full recapping — a prudent move given the four decades since the machine was manufactured — the machine failed to show any signs of life. The usual low-hanging diagnostic fruit didn’t provide much help, as both the Z80 and 8088 CPUs seemed to be fine. It was then that [Joshua] decided to look at the heartbeat of the machine — the 24-ish MHz clock shared between the two processors — and found that it was flatlined.

Unwilling to wait for a replacement, [Joshua] cobbled together a temporary clock from an Arduino Uno and an Si5351 clock generator. He connected the output of the card to the main board, whipped up a little code to generate the right frequency, and the nearly departed machine sprang back to life. [Dr. Reichard] characterizes this as a “defibrillation” of the Rainbow, and while one hates to argue with a doctor — OK, that’s a lie; we push back on doctors all the time — we’d say the closer medical analogy is that of fitting a temporary pacemaker while waiting for a suitable donor for a transplant.

This is the second recent appearance of the Rainbow on these pages — [David] over at Usagi Electric has been working on the graphics on his Rainbow lately.

This Arduino Debugger Uses the CH552

One of the things missing from the “classic” Arduino experience is debugging. That’s a shame, too, because the chips used have that capability. However, the latest IDE has the ability to work with external debuggers and if you want to get started with a classic ATMega Arduino, [deqing] shows you how to get started with a cheap CH552 8-bit USB microcontroller board as the debugging dongle.

The CH552 board in question is a good choice, primarily because it is dirt cheap. There are design files on GitHub (and the firmware), but you could probably pull the same trick with any of the available CH552 breakout boards.

There was a time when having a god-eye view of your embedded system required an expensive in-circuit emulation system. These were expensive, difficult to deploy, and rare. Then, CPUs started adding debugging hardware right on the chip. A few spare pins on the CPU and some sort of adapter would give you most of what you wanted from an emulation system. Although these adapters are often proprietary, sometimes they aren’t, or they have been reverse-engineered. If you know the protocol, it is easy enough to get a processor to speak it for you. That’s why you often see, for example, Raspberry Pi Picos debugging other Picos. There’s nothing you can’t do a million other ways here, but it is an excellent step-by-step tutorial for getting started without breaking the bank.