Announcing The Next Round Of Remoticon Talks

It’s coming up fast — Hackaday Remoticon 2021 is just a few weeks away, and we’re working around the clock to load up the weekend with awesome and inspiring talks that are bound to get the creative juices racing through your crazy straw brain.

Come and practice your neuroplasticity with us on November 19th and 20th. Remoticon is free-as-in-beer this year, unless you want a t-shirt. Even then, $25 is peanuts, because we’re sure that you’ll find a few talks that are priceless, and you’ll have a cool shirt to remember them by. Grab your ticket right now! We’ll wait.

A few days ago we announced mechanical engineering marvel Jeremy Fielding as our second keynote speaker. Passion is paramount to all projects, and Jeremy’s passion is making things move. He’s a renaissance man with a quiver full of self-taught skills, and is sure to bring enthusiasm to his keynote talk, which focuses on building hardware that moves, and how to handle the mechatronic mysteries that arise when trying to scale things up.

For now, let us indulge you with a preview of the second round of talks and speakers that we’ll be showcasing on November 19th and 20th. There’s plenty more where these came from, and we’ll be serving up fresh samples all the way until Remoticon weekend.

Continue reading “Announcing The Next Round Of Remoticon Talks”

A robot playing tic-tac-toe against a human

TICO Robot Plays Tic-Tac-Toe By Drawing On A Tiny Whiteboard

Tic-tac-toe (or “Noughts and Crosses”) is a game simple enough to implement in any computer system: indeed it’s often used in beginner’s programming courses. A more challenging project, and arguably more interesting and useful, is to make some kind of hardware that can play it in real life. [mircemk] built a simple yet elegant machine that can play tic-tac-toe against a human player in a way that looks quite similar to the way humans play against one another: by drawing.

The robot’s design and programming were developed at PlayRobotics, who named the project TICO. The mechanical parts are available as STL files, to be printed by any 3D printer, and a comprehensive manual explains how to assemble and program the whole thing. Since it’s all open source, anyone can build it from scratch and modify it to their liking. The pictures show the original design by PlayRobotics, while the video (embedded after the break) shows [mircemk]’s version, which includes a wooden frame that gives it a bit more presence.

Continue reading “TICO Robot Plays Tic-Tac-Toe By Drawing On A Tiny Whiteboard”

Smooth Servo Motion For Lifelike Animatronics

Building an animatronic robot is one thing, but animating it in a lifelike fashion is a completely different challenge. Hobby servos are cheap and popular for animatronics, but just letting it move at max speed isn’t particularly lifelike. In the video after the break, [James Bruton] demonstrates how to achieve natural motion with a simple animatronic head and a few extra lines of code.

Very little natural body movement happens at a constant speed, it’s always accelerating or decelerating. When we move our heads to look at something around us, our neck muscles accelerate our head sharply in the chosen direction and then slows down gradually as it reaches its endpoint. To do this in Arduino/C code, a new intermediate position for the servo is specified for each main loop until it reaches the final position. The intermediate value is the sum of 95% of the current position, and 5% of the target position. This gives the effect of the natural motion described above. The ratios can be changed to suit the desired speed.

The delay function is usually one of the first timing mechanisms that new Arduino programmers learn about, but it’s not suited for this application, especially when you’re controlling multiple servos simultaneously. Instead, the millis function is used to keep track of the system clock in the main loop, which fires the position update commands at the specified intervals. Adafruit wrote an excellent tutorial on this method of multitasking, which [James] based his code on. Of course, this should be old news to anyone who has been doing embedded programming for a while, but it’s an excellent introduction for newcomers.

Like most of [James]’s projects, all the code and CAD files are open source and available on GitHub. His projects make regular appearances here on Hackaday, like his mono-wheel balancing robot and mechanically multiplexed flip-dot display.

Continue reading “Smooth Servo Motion For Lifelike Animatronics”

Pulling the Google logo off of a smartphone

Pining For A De-Googled Smartphone

Last summer in the first swings of the global pandemic, sitting at home finally able to tackle some of my electronics projects now that I wasn’t wasting three hours a day commuting to a cubicle farm, I found myself ordering a new smartphone. Not the latest Samsung or Apple offering with their boring, predictable UIs, though. This was the Linux-only PinePhone, which lacks the standard Android interface plastered over an otherwise deeply hidden Linux kernel.

As a bit of a digital privacy nut, the lack of Google software on this phone seemed intriguing as well, and although there were plenty of warnings that this was a phone still in its development stages it seemed like I might be able to overcome any obstacles and actually use the device for daily use. What followed, though, was a challenging year of poking, prodding, and tinkering before it got to the point where it can finally replace an average Android smartphone and its Google-based spyware with something that suits my privacy-centered requirements, even if I do admittedly have to sacrifice some functionality.

Continue reading “Pining For A De-Googled Smartphone”

Fetch ferrofluid display

Ferrofluid Display Gets New, Better Driver Circuitry

In 2019 [Simen] and [Amud], two students from the University of Oslo, set out to design a unique open-source display. The result was Fetch, a display that uses electromagnets to suspend ferrofluid on 252 “pixels” across the screen. After some delays due to COVID, they have recently unveiled version 2.0 of the display on their project’s page.

While the duo managed to overcome the mechanical challenges associated with using ferrofluids fairly easily, they were quickly bottlenecked by their electronics. The use of electromagnets holding up a liquid presented a unique challenge; the magnets could not be switched off, even for a millisecond, or else the “pixel” would fall down to the bottom of the screen. That immediately ruled out any sort of multiplexing and meant everything would have to be driven in parallel. As if that wasn’t already difficult enough to work around, the effect of having multiple electromagnets activated next to each other would change how the ferrofluid flows. This meant that the strength of each electromagnet would have to be adjusted based on what is currently being displayed, rather than just being on or off.

The mess of connections were not helped with the layout of the old driver boards shown here. The new design puts the connections closer to each individual electromagnet.

All of this, paired with other overhead like generating pulse-width modulation for the inputs, was just too much for a single microcontroller to handle. So, the pair set out to design a better version of their electronics that would offload a lot of the hard work. At the same time, they decided a bit of mechanical optimization was in order; they redesigned the boards to be longer and thinner, allowing them to fit cleanly behind the row of electromagnets they controlled.

The new boards feature a PCA9685 IC, which allows for the control of up to 16 channels of 12-bit PWM over i2C, perfect for the size of the display. Since this IC can’t source enough current to drive the electromagnets, it was paired with a ULN2803 Darlington Transistor Array, capable of delivering up to 500mA to each electromagnet.

With prototypes in hand (and a few bodge wires here and there), [Simen] and [Amud] had the new driver boards running beautifully, displaying text in a mesmerizing way that no ordinary display could match. Watch the video after the break for a demonstration of the new controllers in action, as well as a deeper dive into the process of developing them.

Want to learn more? Check out our previous article about Fetch! Or if you’re looking for another cool way to use ferrofluids, how about making it dance in a custom speaker!

Continue reading “Ferrofluid Display Gets New, Better Driver Circuitry”

A Whole Lot Of Stepper Motors Make The Most Graceful 7-Segment Displays

Over the years we’ve seen many takes on the 7-segment display. Among the most interesting are the mechanical versions of what is most often an LED-based item. This week’s offering is from [John Burd], who published a very odd video showing off the clock he made. But look beyond YouTuber antics and you’ll see the stepper motors he used to turn the segments are dripping with graceful beauty. (Video, embedded below.)

Okay if you want to hear [Charlie Sheen] say “Raspberry P-eye”, this is the video for you. [John] used Cameo to get the (former?) star to talk about what was used to build the clock. Like we said, the video is weird. Let’s embrace that right away and then never talk about it again.

The thing is, the build is such a good idea. [John] went with some stepper motors you can source relatively cheaply from Ali Express and the like. Typically they’re around a buck or two each and have a couple of wings for screw mounting brackets. This builds on the segment displays we’ve seen that use hobby servos by allowing you finer control of how the segments move. Sure, the 90° rotation isn’t all that much to work with, but it will be much smoother and you can get fancy with the kinematics you choose. The only place we see room for improvement is the alignment of the segments when they are turned “off” as you can see the center segment in the video thumbnail below is not quite level. Maybe a linkage mechanism would allow for a hing mechanism that aligns more accurately while hiding the servos themselves behind the mounting plate? It’s in your hands now!

In the demo video you’ll also find some interesting test rigs built to proof out the project. One just endurance tests the mechanism, but the other two envision water-actuated segments. One pumps a hollow, transparent segment with colored liquid. The other tried to use water droplets sprayed in the air to illuminate laser segments. Both are cool and we’d like to see more of the oddball approaches which remind us of the ferrofluid clock.

Continue reading “A Whole Lot Of Stepper Motors Make The Most Graceful 7-Segment Displays”

Astronomic Patio Light Timer

Not satisfied with the handheld remote control for his outdoor patio lights, [timabram] decided to build an automatic timer using an ESP8266. He’s using a set of string lights from Costco, but as you dig into his project you’ll see the method he uses can be applied to almost any set of lights that have a remote.

He does this by connecting GPIO pins from the ESP8266 GPIO into the remote control in order to simulate a user pressing the button. Both boards are packaged together in a 3D-printed enclosure that utilizes the front portion of the remote control, so that manual operation is still possible.

His firmware gets the date and time from an NTP server, and then makes an API call to an online service that returns the local sunrise and sunset times for a specific location. He tries to minimize the power consumption by experimenting with different intervals to wakeup from deep sleep and ping the time server. But in the end, he realizes the RF remote control carries quite some distance, and installed the unit inside a closet where it could be powered by adaptors connected to the mains.

We wondered how the remote control knows if the lights are on or off, and [timabram] notes this is a shortcoming which could be addressed in a future version. If you’ve ever seen a mechanical version of an astronomic timer switch, packed full of gears and dials and setting pins, you can really appreciate a no-moving-parts solutions like this project. If you want to make one that doesn’t use the internet, check out this Arduino-based solution that we wrote about back in 2013.