Posts with «arduino hacks» label

Interactive Plant Lamps for Quiet Spaces

If you’ve spent any serious time in libraries, you’ve probably noticed that they attract people who want or need to be alone without being isolated. In this space, a kind of silent community is formed. This phenomenon was the inspiration [MoonAnchor23] needed to build a network of connected house plants for a course on physical interaction and realization. But you won’t find these plants unleashing their dry wit on twitter. They only talk to each other and to nearby humans.

No living plants were harmed during this project—the leaves likely wouldn’t let much light through, anyway. The plants are each equipped with a strip of addressable RGB LEDs and a flex sensor controlled by an Arduino Uno. Both are hot glued to the undersides of the leaves and hidden with green tape. By default, the plants are set to give ambient light. But if someone strokes the leaf with the flex sensor, it sends a secret message to the other plant that induces light patterns.

Right now, the plants communicate over Bluetooth using an OpenFrameworks server on a local PC. Eventually, the plan is use a master-slave configuration so the plants can be farther apart. Stroke that mouse button to see a brief demo video after the break. [MoonAnchor23] also built LED mushroom clusters out of silicone and cling wrap using a structural soldering method by [DIY Perks] that’s also after the break. These work similarly but use force-sensing resistors instead of flex-sensing.

Networking several plants together could get expensive pretty quickly, but DIY flex sensors would help keep the BOM costs down.

Glorious Body of Tracked ‘Mad Mech’ Started as Cardboard

[Dickel] always liked tracked vehicles. Taking inspiration from the ‘Peacemaker’ tracked vehicle in Mad Max: Fury Road, he replicated it as the Mad Mech. The vehicle is remote-controlled and the tank treads are partly from a VEX robotics tank tread kit. Control is via a DIY wireless controller using an Arduino and NRF24L01 modules. The vehicle itself uses an Arduino UNO with an L298N motor driver. Power is from three Li-Po cells.

The real artistic work is in the body. [Dickel] used a papercraft tool called Pepakura (non-free software, but this Blender plugin is an alternative free approach) for the design to make the body out of thin cardboard. The cardboard design was then modified to make it match the body of the Peacemaker as much as possible. It was coated in fiberglass for strength, then the rest of the work was done with body filler and sanding for a smooth finish. After a few more details and a good paint job, it was ready to roll.

There’s a lot of great effort that went into this build, and [Dickel] shows his work and process on his project page and in the videos embedded below. The first video shows the finished Mad Mech being taken for some test drives. The second is a montage showing key parts of the build process.

Paper and cardboard are very versatile and accessible materials for making things. It’s what was used to do some target practice with this working paper and cardboard gun. With the right techniques foam core can be worked into an astonishing variety of shapes, and we also made a case for the value of a desktop vinyl cutter on any well-equipped hacker’s workbench.

RGB Disk Goes Interactive with Bluetooth; Shows Impressive Plastic Work

[smash_hand] had a clear goal: a big, featureless, white plastic disk with RGB LEDs concealed around its edge. So what is it? A big ornament that could glow any color or trippy mixture of colors one desires. It’s an object whose sole purpose is to be a frame for soft, glowing light patterns to admire. The disk can be controlled with a simple smartphone app that communicates over Bluetooth, allowing anyone (or in theory anything) to play with the display.

The disk is made from 1/4″ clear plastic, which [smash_hand] describes as plexiglass, but might be acrylic or polycarbonate. [smash_hands] describes some trial and error in the process of cutting the circle; it was saw-cut with some 3-in-1 oil as cutting fluid first, then the final shape cut with a bandsaw.

The saw left the edge very rough, so it was polished with glass polishing compound. This restores the optical properties required for the edge-lighting technique. The back of the disc was sanded then painted white, and the RGB LEDs spaced evenly around the edge, pointing inwards.

The physical build is almost always the difficult part in a project like this — achieving good diffusion of LEDs is a topic we talk about often. [smash_hands] did an impressive job and there are never any “hot spots” where an LED sticks out to your eye. With this taken care of, the electronics came together with much less effort. An Arduino with an HC-05 Bluetooth adapter took care of driving the LEDs and wireless communications, respectively. A wooden frame later, and the whole thing is ready to go.

[smash_hands] provides details like a wiring diagram as well as the smartphone app for anyone who is interested. There’s the Arduino program as well, but interestingly it’s only available in assembly or as a raw .hex file. A video of the disk in action is embedded below.

Making LED lighting interactive comes in many different shapes and forms, and as the disk above shows, shifting color patterns can be pleasantly relaxing.

You Don’t Need to be Tony Stark to Afford This Hand Controller

Proving that duct tape really can do anything, [StudentBuilds] uses it to make a workable controller out of a glove. To be fair, there are a few more bits too, including paper coated with pencil graphite and tin foil, which forms a variable resistor you can read with an Arduino analog input. You can see the entire thing in the video below.

The source code is simple at this point — eventually, he plans to control a robotic hand with the controller, but that’s later. However, there’s no promised link to the code in the description, so you’ll have to freeze frame and type. However, it is pretty simple — just read the analog pin values to determine the specific values for each finger.

There was a slight issue with the build. At first, all the sensors read the maximum (1023). That necessitated changing the fixed resistor to a much higher value. Also, be sure to read the notes on the screen as the original schematic has a small error corrected with a note. One end of the voltage divider needs to go to 5 V. The schematic shows both ends going to ground.

Is this going to be wildly accurate? No. It isn’t even going to be repeatable if you build multiples and the calibration will probably even change with age. Still, it is cool that you can take a few pieces of scrap material and do something with it. Also, the homemade sensor approach might spur your imagination to make other pencil-based sensors.

If you want something a bit more mechanical, try Lego. If you can’t think of anything you want to control with such a glove, maybe try your hand at music.

Automated Syrup System is Sweet Sweet Madness

Here at Hackaday we are big fans of the TV show, “How It’s Made”. It’s not much of a stretch to assume that, as somebody who is currently reading this site, you’ve probably seen it yourself. While it’s always interesting to see the behind the scenes process to create everyday products, one of the most fascinating aspects of the show is seeing how hard it is to make things. Seriously, it’s enough to make you wonder how companies are turning a profit on some of these products when you see just how much technology and manual work is required to produce them.

That’s precisely the feeling we got when browsing through this absolutely incredible overview of how [HDC3] makes his maple syrup. If that’s not a sentence you ever thought you’d see on Hackaday, you aren’t alone. But this isn’t a rusty old pail hanging off of a tap, this is a high-tech automated system that’s capable of draining 100’s of gallons of sap from whole groves of trees. We’ll never look at a bottle of syrup in the store the same away again.

It all starts with hundreds of tiny taps that are drilled into the trees and connected to a network of flexible hoses. The plumbing arrangement is so complex that, in certain, areas high tension support wires are necessary to hold up the weight of the hoses and their sweet contents. The main hose leads to an Arduino-powered collection station which maintains a 100 kPa (29 inHg) vacuum throughout the entire system.

The sap is temporarily held in a 250 gallon container, but at this point it’s still just that: sap. It needs to be refined into something suitable for putting on your pancakes. The first step of that process utilizes a reverse osmosis filtration system to pull the water out of the sap and increase its sugar concentration. [HDC3] says the filtration system is built from eBay scores and parts from the home improvement store, and it certainly looks the part of something that would be under a kitchen sink. This system is able to increase the sugar concentration of the sap from around 2% as it comes out of the trees to 8%. But it’s still a far way off from being ready to use.

Interestingly enough, the last steps of the process are about as old-school as they come. The semi-concentrated sap is placed in a long low metal pan, and heated over a wood fire to drive off more of the water. This process continues until the sap is roughly 60% sugar, at which point it is filtered and moved into the house to finish boiling on the stove.

All told, the syrup is boiled for eight hours to bring its sugar content up to 66%. Even with the improvements [HDC3] has made to the system, he reveals that all this hard work only results in slightly more than a half-gallon of final syrup. Talk about dedication.

It probably comes as no surprise that this is the first time Hackaday has ever run a story about producing maple syrup. However we’ve seen a number of automated beer brewing systems that seem to have been tackled with similar zeal. There’s probably a conclusion to be drawn there about the average hacker’s diet, but that’s a bit outside our wheelhouse.

[via /r/DIY]

Definitive Dog Feeding with Arduino

Some dogs have no sense of self-preservation. Given the opportunity, they will eat until they’re sick. It’s up to us humans to both feed them and remember doing it so they aren’t accidentally overfed. In a busy household with young children, the tricky part is the remembering.

[Bryan]’s family feeds their dog Chloe once a day, in the mornings. She was a rescue who spent a few years scrounging for meals on the street, so some part of her is always interested in finding food, even if she just ate. Each morning, the flurry of activity throughout the house is compounded by Chloe’s repeated requests for food, so [Bryan] got his kids involved and built a simple circuit that lets everyone know—at a glance—whether Chloe was fed.

Chloe’s kibble is kept in a touch-top wastebasket that flips open at the press of a button. [Bryan]’s dog-fed detector uses a reed switch and an Arduino clone to detect when the lid is opened. When the reed switch goes, low, the Arduino lights up an LED. The light stays on for two hours and then shuts off automatically to get ready for the next day. You don’t have to beg for a demo video, because it’s waiting for you after the break.

Since Chloe devours a bowl of food in about two minutes flat, maybe the next project for [Bryan]’s family could teach her to slow down a bit.

Arduino BabyTV is Big Fun at Low Resolution

What kind of TV do you have? An older 720p model, or the now standard 1080p? Perhaps you’ve made the leap to the next generation, and are rocking a 4K display in the living room. All those are are fine and dandy if you just want to watch the local sportball contest, but where’s the challenge in that? With all the technology and modular components we have access to anymore, nowadays all the real hackers are making their own TVs.

Of course, when [Nikolai] built his very own LED TV, he did have to make a few concessions. For one thing, there’s no tuner on this model. Oh, and there’s the small issue of only having a 16×16 resolution. It might not be your idea of the perfect display, but it’s just perfect for his newborn son.

That’s right, [Nikolai] got his entry for the “Hacker Parent of the Year” award in early, and built an LED display for his son that he’s calling “BabyTV”.

Rather than the shows, trash, advertisements that they play on the kid channels, this TV only shows animated characters from retro games. We’ll concede that this project might be an elaborate Clockwork Orange style attempt at hypnotizing his son to instill an appreciation for classic gaming. But we’ll allow it.

To make his BabyTV go, [Nikolai] used a 16×16 WS2812B LED panel and an Arduino Nano. Two rotary encoders are used to allow adjusting brightness and change the character currently being shown on the screen. As a particularly clever hack, the Arduino has an IR sensor attached and is constantly watching for any signals. If an IR signal is detected, the BabyTV switches to the next image. So if Junior has a standard IR remote in his hands, any button he presses will cause the display to change to the next “channel”.

Historically speaking we haven’t seen much stuff for children here at Hackaday, but 2018 seems to be changing that. Recent projects like the incredible scratch built mini excavator and gorgeous AT-ST high chair would seem to indicate we’re currently witnessing a generation of hackers become parents. Don’t panic folks, but we might be getting old.

Moltoduino: Arduinos All the Way Down

It is getting difficult to find a desktop or laptop computer with only a single CPU. Even a typical ARM-based computer now probably has multiple cores. Of course, there’s nothing to stop you from using multiple microcontrollers — like the Arduino — together. To make the process neater, [Dimitris Platis] put together Moltoduino, essentially an Arduino on a shield made to plug into another Arduino. And, yes, they will stack. You can see a video about the open source boards, below.

The key is how the board brings the pins out to connections that are easy to jumper between boards. There are several obvious use cases, but one that [Dimitris] is particularly interested in is hardware-in-the-loop testing. The idea is that you can use a simulated I/O device in one computer to exchange fake data with the software under test.

For example, you might be working on a sous vide cooker that reads a temperature and controls a heater. A second computer could stand in for the temperature sensor and heater. You could log outputs and also control the inputs. This is really nice when you want to set up repeatable test cases.

Of course, you don’t have to stack the boards to make that work. In fact, you don’t have to use another Arduino. A PC or some other controller could be the surrogate test device. But having it all in a stack is handy. There are several examples of doing testing using simulated hardware on the project’s GitHub page. The test subjects are a robot car and an ultrasonic device.

One neat feature is that each board has a switch to enable the master Arduino to ISP program it. So while you might not need to stack boards to use any of the proposed techniques, it does make for a nice and compact package.

Usually, when we see a cluster it uses Raspberry Pis. Or, sometimes, PCs.

Debugging with Serial Print at 5333333 Baud

Debugging with printf is something [StorePeter] has always found super handy, and as a result he’s always been interested in tweaking the process for improvements. This kind of debugging usually has microcontrollers sending messages over a serial port, but in embedded development there isn’t always a hardware UART, or it might already be in use. His preferred method of avoiding those problems is to use a USB to Serial adapter and bit-bang the serial on the microcontroller side. It was during this process that it occurred to [StorePeter] that there was a lot of streamlining he could be doing, and thanks to serial terminal programs that support arbitrary baud rates, he’s reliably sending debug messages over serial at 5.3 Mbit/sec, or 5333333 Baud. His code is available for download from his site, and works perfectly in the Arduino IDE.

The whole thing consists of some simple, easily ported code to implement a bare minimum bit-banged serial communication. This is output only, no feedback, and timing consists of just sending bits as quickly as the CPU can handle, leaving it up to the USB Serial adapter and rest of the world to handle whatever that speed turns out to be. On a 16 MHz AVR, transmitting one bit can be done in three instructions, which comes out to about 5333333 baud or roughly 5.3 Mbit/sec. Set a terminal program to 5333333 baud, and you can get a “Hello world” in about 20 microseconds compared to 1 millisecond at 115200 baud.

He’s got additional tips on using serial print debugging as a process, and he’s done a followup where he stress-tests the reliability of a 5.3 MBit/sec serial stream from an ATMega2560 at 16 MHz in his 3D printer, and found no missed packets. That certainly covers using printf as a debugger, so how about a method of using the debugger as printf?

This 3D-Printed Robotic Vacuum Sucks

After you’ve taken a moment to ponder the turn of phrase used in the title, take a look at this scratch-built robotic vacuum created by [theking3737]. The entire body of the vacuum was 3D printed, and all of the internal electronics are off-the-shelf modular components. We can’t say how well it stacks up against the commercial equivalents from iRobot and the like, but it doesn’t look like it would be too hard to build one yourself to find out.

The body of this rather concerned-looking robot was printed on a DMS DP5 printer, which is a neat trick as it only has a build platform of 200 mm x 200 mm. Once all the pieces were printed, a 3D pen was used to “weld” the sections together. The final result looks a bit rough, but should give a bond that’s just as strong as the printed parts themselves.

The robot has four sets of ultrasonic range finders to detect walls and obstacles, though probably not in the positions you would expect. The right side of the robot has two sets of sensors, while the left side only gets one. We aren’t sure the reasoning behind the asymmetrical layout, but presumably the machine prefers making right turns.

Control is provided by an Arduino Mega and the ever-reliable HC-05 Bluetooth module. A companion Android application was written which allows configuring the robot without having to plug into the Arduino every time you want to tweak a setting.

We can’t say we’ve seen that many DIY robotic vacuums here at Hackaday, but we’ve certainly featured our fair share of hacks for the commercially available models.