Superbly Synchronized Servos Swaying Softly

LEDs and blinky projects are great, and will likely never fade from our favor. But would you look at this sweeping beauty? This mesmerizing display is made from 36 micro servos with partial Popsicle sticks pasted on the arms. After seeing a huge display with 450 servos at an art museum, [Doug Domke] was inspired to make a scaled-down version.

What [Doug] didn’t scale down is the delightful visuals that simple servo motion can produce. The code produces a three-minute looping show that gets progressively more awesome, and you can stare at that after the break. Behind the pegboard, a single, hardworking Arduino Uno controls three 16-channel PWM controllers that sweep the servos. We like to imagine things other than Popsicle sticks swirling around, like little paper pinwheels, or maybe optical illusion wheels for people with strong stomachs.

You won’t see these in the video, but there are five ultrasonic sensors mounted face-up on the back of the pegboard. [Doug] has optional code built in to allow the servo sticks to follow hand movement. We hope he’ll upload a demo of that feature soon.

Servos can be hypnotic as well as helpful, as we saw in this 114-servo word clock.

Continue reading “Superbly Synchronized Servos Swaying Softly”

Frequency Counting A Different Way

Counting frequency is one of those tasks that seems simple on the face of it, but actually has quite a bit of nuance. There are two obvious methods, of which the first is to count zero crossings for some period. If that period is one second you are done, otherwise it’s a simple enough case of doing the math. That is, if you count for half a second, multiply the result by 2, or if you count for 10 seconds, divide by 10. The other obvious method is to measure the period of a single cycle as accurately as you can. Then there’s this third method.from [WilkoL], which simultaneously counts a known reference clock alongside the frequency to be measured.  You can see the result in the video, below.

The first method is easy but the lower the frequency you want to measure, the longer you have to count to get any real resolution. Also, you need the time base to be exact. For the second method, you need to be able to make a highly precise measurement. The reason [WikolL] chose the third method is that it doesn’t require a very precise time base — a moderately accurate reference oscillator will do. The instrument gets good resolution quickly at both high and low frequencies.  Continue reading “Frequency Counting A Different Way”

Does Your Home Assistant Know When You Are Sleeping?

It always gives us a sense of wonder when we realize that what would be a simple task for a human child is a big deal for a computer. For example, if you asked someone if you or someone else was in bed, that’s a pretty simple thing to check. For you, that is. For a computer, it requires some sort of sensor. [Lewis] used load cells to tell if someone is in a particular bed or not. He uses Home Assistant and has a great post about how he created and interfaced the sensors. Of course, the sensors really only tell you if something heavy is in the bed. It doesn’t know who it is or even that it isn’t an overstuffed suitcase.

Load cells aren’t exactly high tech. There are several different types that use hydraulic pressure or pneumatics to measure force. However, the most common that we encounter use strain gauges. A strain gauge is a resistor that changes value when it deformed and a load cell usually has several strain gauges wired in a bridge configuration so that small forces create larger output changes.

Continue reading “Does Your Home Assistant Know When You Are Sleeping?”

Core Rope Memory Makes One Of The Oddest LED Flashers We’ve Ever Seen

If you’ve heard of core rope memory, it will probably be in the context of vintage computing equipment such as Apollo-era NASA hardware. A string of magnetic cores and sense wires form a simple ROM arrangement, which though long-ago-superceded by semiconductor memory remains possible to recreate by the experimenter. It’s a path [Nicola Cimmino] has trodden, as he’s not only made a few nibbles of core rope memory, but incorporated it with an Arduino as part of one of the most unusual LED flashers we’ve ever seen. The memory holds a known sequence of bits which is retrieved in sequence by the Arduino, and the LED is kept flashing as long as the read values conform to those expected.

The memory itself is simple enough (and not to be confused with magnetic core memory). The cores are ferrite rings that form a sequence of small transformers that become the bits of the memory. Individual bits are set high or low by either passing a sense wire through a core to create a primary, or bypassing it. Multiple sense wires can be used for separate nibbles in the same cores, so for example his four nibbles all share the same four cores. Pulses are sent down the wires, either passing through a core or not, and equivalently picked up or not on sense lines.

In this case the sense wire is driven directly to ground by Arduino pins which means that the circuit is relying upon the current limiting of the ATmega328 to avoid destroying itself, it’s possible we’d add a driver transistor. The bits are read meanwhile from the secondary windings through a diode rectifier and capacitor to an Arduino analogue pin.

Core memory has been paired with an Arduino before on these pages, though of the RAM variety.

Kinetic Lamp Sheds Light On Scientific Principles

This thing right here might be the coolest desk toy since Newton’s Cradle. It’s [Stephen Co]’s latest installment in a line of mesmerizing, zodiac-themed art lamps that started with the water-dancing Aquarius.  All at once, it demonstrates standing waves, persistence of vision, and the stroboscopic effect. And the best part? You can stick your finger in it.

This intriguing lamp is designed to illustrate Pisces, that mythological pair of fish bound by string that represent Aphrodite and her son Eros’ escape from the clutches of Typhon. Here’s what is happening: two 5V DC motors, one running in reverse, are rotating a string at high speeds. The strobing LEDs turn the string into an array of optical illusions depending on the strobing rate, which is controlled with a potentiometer. A second pot sweeps through eleven preset patterns that vary the colors and visual effect. And of course, poking the string will cause interesting interruptions.

The stroboscopic effect hinges on the choice of LED. Those old standby 2812s don’t have a high enough max refresh rate, so [Stephen] sprung for APA102Cs, aka DotStars. Everything is controlled with an Arduino Nano clone. [Stephen] has an active Kickstarter campaign going for Pisces, and one of the rewards is the code and STL files. On the IO page for Pisces, [Stephen] walks us through the cost vs. consumer pricing breakdown.

We love all kinds of lamps around here, from the super-useful to the super-animated.

TinyGo Brings Go To Arduino

Go — a modern programming language with roots at Google — is one of the new generation languages that would like to unseat C (and C++) for what we think of as traditional programming. It is only for PCs, though, right? Not so fast! TinyGo provides a compiler that — in their words — is for small places. How small? They can target code for the Arduino Uno or the BBC micro:bit. It can also produce code for x86 or ARM Linux (both 32- and 64-bit) as well as WebAssembly. They claim that a recent project to add ESP8266 and EPS32 support to LLVM will eventually enable TinyGo to target those platforms, too.

As you would expect, there are some subtle differences between TinyGo and the full-blown version. The compiler handles the entire program at once which is slower but offers more for optimization. Certain optimizations for interface methods are not used in TinyGo, and global variable handling changes to accommodate moving data from flash to RAM efficiently. TinyGo passes parameters in registers.

Continue reading “TinyGo Brings Go To Arduino”

An Arduino Pro Micro With USB-C

USB-C versus USB Micro connectors are turning into one of the holy wars of our time. Rather than be left on the wrong side of the divide [Stefan S] has come up with his own USB-C version of of an Arduino Pro Micro to avoid having to always find a different cable.

Home made Arduinos come in all shapes and sizes from the conventional to the adventurous, and from the pictures it seems that this one is firmly in the former camp. The USB-C is present in connector form alone as the device is only capable of talking at the much slower speed of the ATMEGA32U4 processor, but having the newer connector should at least make cabling more accessible.

This is one of the most practical Arduino clones we’ve ever seen, but one of our other favourites is also a bit impractical.