Posts with «arduino» label

An experimental game with a conductive rubber band controller

RubberArms is an experimental rubber band game, created by Robin Baumgarten at the Global Game Jam 2017 in Yverdon-les-Bains, Switzerland.

The controller uses a conductive rubber cord from Adafruit that changes resistance as it’s stretched. This resistance is measured by an Arduino Micro/Leonardo (or a Teensy 3.2), which acts as a USB joystick sending signals to Unity3D. (The game is coded in Unity3D using Spring Joints and Line Renderers.)

At this point, the game is a simple prototype where you control the distance of two characters whose arms stretch whenever you stretch the rubber band, throwing little ‘Bleps’ around. You can read more about RubberArms on Baumgarten’s page, as well as his earlier project “Line Wobbler” here.

The Soda Locker

With books being replaced by electronic alternatives and sugary drinks in short supply, this custom locker has come to the rescue.

After a conversation with a few friends about an idea he had for a vending machine that fit entirely inside of a locker, high school student Blake Hawkins decided to actually make it a reality. His setup crams dispensing hardware for two types of highly-caffeinated soda, including an Arduino-connected coin acceptor and a spring to keep the locker closed between sales. The C-shaped cylindrical device that physically doles out the cans is quite clever as well.

No word on how school staff have reacted to his new in-school business, but the students have naturally been quite entertained and pleased about the new locker hardware. Hawkins even got to ask his girlfriend to the prom using the contraption with a custom can for her!

You can check out more of this build on its page. You may also enjoy these two DIY vending machines as well, which can be found here and here.

Build an automatic cat treat dispenser with Hummingbird

The Hummingbird by BirdBrain Technologies is an Arduino AtHeart microcontroller designed to enable beginners to create robots from craft materials. Hummingbird kits include LEDs, motors, and sensors that connect directly to the board. This eliminates the need for soldering or breadboarding and ensures that users have the parts they need to build their first robots. All of the components are reusable, so the same kit can be used to build many different robots.

In addition, the Hummingbird supports a variety of programming options, making it appropriate for beginning programmers as well as those who are more advanced. Some programming languages, such as Scratch and Snap!, can only be used when the board is connected to the computer. We will concentrate here on programming alternatives that enable users to upload a program onto the board’s Arduino.

Classrooms all over the world have used the Hummingbird from elementary to high school for projects ranging from Shakespeare dioramas to the physics of amusement park rides. In the following project, the BirdBrain Technologies team will show how they used the Hummingbird to build an automatic cat treat dispenser and demonstrate how the Hummingbird can be utilized to construct robots from everyday materials.

Building with the Hummingbird
Beginners can easily get started building Hummingbird robots with cardboard and craft materials. Motors, sensors, and LEDs can be connected directly to the Hummingbird board, and these elements can be added to the robot with hot glue. Hot glue peels off the components so that they can later be reused.

The example project uses one servo motor, one single color LED, and a light sensor. The dispenser consists of a servo motor attached to craft sticks that block the bottom of a chute containing cat treats. The position of the servo motor can be changed in software to release treats.

To receive a treat, the cat must cover a light sensor in front of the chute. When the cat covers the sensor, the servo motor briefly moves to open the chute and dispense a treat. The LED was included to show our test cat the location of the light sensor.

Programming with the Hummingbird
One unique feature of the Hummingbird is that it supports three different programming options for producing an Arduino program. These options provide steps of increasing difficulty to support learners as they transition from programming novices to Arduino experts.

Beginners can start with the CREATE Lab Visual Programmer. This software option is based on storyboarding. Users can select the motors and LEDs that they are using on a schematic of the Hummingbird board. Then they can create expressions by using sliders to set the values of these outputs. The expression below sets a servo motor to 100°.

Expressions can be combined to create sequences. For example, the sequence below controls our automatic cat treat dispenser. This sequence is controlled by a sensor block. If the light level is low, the three expressions on the left are executed. If the light level is high, the three expressions on the right are executed. The user can then convert this sequence to an Arduino program by simply clicking the “Export Sequence” button (shown outlined in red). The Hummingbird can then be placed into Arduino mode and the program uploaded to the microcontroller.

Another option for beginners is ArduBlock, which provides a visual introduction to the Arduino language. The Hummingbird extension for ArduBlock includes a block for each Hummingbird component. A program in ArduBlock to control the treat dispenser is shown below. This program is equivalent to the CREATE Lab Visual Programmer sequence shown above.

The Arduino code generated by this ArduBlock program is shown below. Individuals moving from the CREATE Lab Visual Programmer or ArduBlock to Arduino can start by modifying the generated code. For example, in the video we modified the commands inside the else to make the LED blink to attract the cat’s attention.

Once individuals are comfortable with the Arduino programming language, they can create more complex programs in Arduino. For instance, the video shows how we modified our robot and our code to incorporate three lights and three sensors. To get a treat, the cat must cover the sensor when the corresponding light is on.

The cat treat dispenser is only one example of a Hummingbird robot using the power of the Arduino at its core. The parts can be used and reused to construct an unlimited number of robots with low-cost materials such as cardboard, pipe cleaners, recycled materials, and even paper mache!

uArm Swift is an open-source robotic assistant for your desktop

Need a hand? The UFACTORY team has got you covered with the uArm Swift, an open-source robotic assistant for your desktop.

The four-axis uArm Swift is a smaller and sleeker version of the company’s original device from 2014. Based on an Arduino Mega, the robot is capable of lifting 500 grams (1.1 pounds) with a working range of 5 to 32 centimeters (2 to 12.6 inches).

UFACTORY has launched two different models of the consumer-friendly arm on Indiegogo. Whereas the basic model is perfect for beginners and those looking to tinker around with robotics, the Swift Pro is designed for a more experienced Maker crowd with a stronger motor, more precision, and greater versatility. It also boasts position repeatability down to 0.2mm.

With a little programming, the Pro can perform a wide range of tasks from 3D printing to laser engraving to picking up and moving game pieces. You can even create your own actions through the team’s Blockly-based graphical software, uArm Studio, as well as control your Swift either directly from a keyboard-and-mouse setup, by making gestures, or over Bluetooth from the uArm Play mobile app.

The Swift is extendable with three different end-effectors (suction cup, metallic gripper, and universal holder) and a built-in socket for selected Seeed Grove modules. But that’s not all. Attach an OpenMV Cam and the robotic arm can detect faces, colors, and markers.

If you’re looking for an affordable and portable robotic arm, be sure to check out UFACTORY’s Indiegogo campaign.

Make your reflex punching bag interactive with Arduino

A traditional reflex bag is meant to help improve your punch accuracy and timing. However, Carl Gordon decided to make his a bit more interactive and gamified using an Arduino Uno.

As you can see in the video below, his setup adds four LEDs to the device to tell the user which side of the bag to punch, and an accelerometer to let the Arduino in the base of the stand know when it is actually hit. This means that the person using it has to further work on his or her movement skills, adding a whole new dimension to the workout.

Gordon claims that it’s “10x more fun to use and now feels like more of a game than an exercise!” You can find out how to build your own on the project’s Instructables page.

Slow Motion Frame Will Be the New Magic Mirror

[Paul] created a frame that uses an Arduino and LEDs to create a slow motion illusion of a delicate item (like a flower or a feather). The effect is striking as you can see in the video below.

[Paul] had seen similar projects (both one-offs and sold as a product), but wanted to do his own take on it. The principle is simple: The device vibrates the objects at one frequency and strobes LEDs at a slightly different frequency (80 and 79.5 Hz, in this case). The difference between the frequencies (the beat frequency) is what your eye perceives as a very slow (0.5 Hz, here) motion.

Once you know the secret behind the device, it is not very complicated to create. The woodworking for the frame is the bulk of the work. An Arduino excites an electromagnet to vibrate the subject items. It also pulses the LED strips to achieve the strobe effect. It’s simple, striking, and a show piece. It seems like everyone has been building their own magic mirror project, but we proffer this awesome concept as the next big thing everyone should try on their own workbench. Let’s check out a few other examples to get you thinking.

One of [Paul’s] inspirations was Time Frame, which appears in the second video, below. You can find its code on GitHub. It also uses an Arduino to create the same effect. The other inspiration was Slow Dance, which we covered earlier. We’ve also seen a similar trick played with water droplets.


Filed under: Arduino Hacks, led hacks

IR thermometer hacked into an IR camera

Using several clever hacking techniques, Niklas Roy can make thermal images using a “simple” thermometer.

True IR (infrared) cameras are still too expensive for many of us, but if you’d just like to know the temperature of something at a distance, IR thermometers aren’t that costly. In theory, if you were to take readings in a grid, color code them, and overlay these readings on an image, you would have a manual IR picture. If you can accomplish this manually, the obvious next step is, why can’t a computer?

Per Roy’s clever hack, yes, this is absolutely possible. His device uses a computer along with an Arduino and two servos to trace a grid with a thermometer. It reads the display at these different points using a webcam, then resolves everything into a nice picture. When overlaid with an actual image, it becomes a low (70 x 44 pixel) resolution thermal image.

You can find out more about this project on Roy’s homepage!

MalDuino — Open Source BadUSB

MalDuino is an Arduino-powered USB device which emulates a keyboard and has keystroke injection capabilities. It’s still in crowdfunding stage, but has already been fully backed, so we anticipate full production soon. In essence, it implements BadUSB attacks much like the widely known, having appeared on Mr. Robot, USB Rubber Ducky.

It’s like an advanced version of HID tricks to drop malicious files which we previously reported. Once plugged in, MalDuino acts as a keyboard, executing previous configured key sequences at very fast speeds. This is mostly used by IT security professionals to hack into local computers, just by plugging in the unsuspicious USB ‘Pen’.

[Seytonic], the maker of MalDuino, says its objective is it to be a cheaper, fully open source alternative with the big advantage that it can be programmed straight from the Arduino IDE. It’s based on ATmega32u4 like the Arduino Leonardo and will come in two flavors, Lite and Elite. The Lite is quite small and it will fit into almost any generic USB case. There is a single switch used to enable/disable the device for programming.

The Elite version is where it gets exciting. In addition to the MicroSD slot that will be used to store scripts, there is an onboard set of dip switches that can be used to select the script to run. Since the whole platform is open sourced and based on Arduino, the MicroSD slot and dip switches are entirely modular, nothing is hardcoded, you can use them for whatever you want. The most skilled wielders of BadUSB attacks have shown feats like setting up a fake wired network connection that allows all web traffic to be siphoned off to an outside server. This should be possible with the microcontroller used here although not native to the MalDuino’s default firmware.

For most users, typical feature hacks might include repurposing the dip switches to modify the settings for a particular script. Instead of storing just scripts on the MicroSD card you could store word lists on it for use in password cracking. It will be interesting to see what people will come up with and the scripts they create since there is a lot of space to tinker and enhanced it. That’s the greatness of open source.

You can watch the prototype in action in the video:


Filed under: Arduino Hacks, peripherals hacks, security hacks

Arduino Video isn’t Quite 4K

Video resolution is always on the rise. The days of 640×480 video have given way to 720, 1080, and even 4K resolutions. There’s no end in sight. However, you need a lot of horsepower to process that many pixels. What if you have a small robot powered by a microcontroller (perhaps an Arduino) and you want it to have vision? You can’t realistically process HD video, or even low-grade video with a small processor. CORTEX systems has an open source solution: a 7 pixel camera with an I2C interface.

The files for SNAIL Vision include a bill of materials and the PCB layout. There’s software for the Vishay sensors used and provisions for mounting a lens holder to the PCB using glue. The design is fairly simple. In addition to the array of sensors, there’s an I2C multiplexer which also acts as a level shifter and a handful of resistors and connectors.

Is seven pixels enough to be useful? We don’t know, but we’d love to see some examples of using the SNAIL Vision board, or other low-resolution optical sensors with low-end microcontrollers. This seems like a cheaper mechanism than Pixy. If seven pixels are too much, you could always try one.

Thanks [Paul] for the tip.


Filed under: Arduino Hacks, video hacks

I finally figured out automated builds… for Arduino!

Currently I’m the main maintainer of node-hid, the Node.js package that lets you talk to USB HID devices like blink(1).  I recently cribbed automated build config from node-serialport so now node-hid is automatically built for Mac, Linux, & Windows and Node 4.x,6.x,7.x.   It’s pretty amazing to have these robots doing my bidding.  But did [...]
Todbot 23 Jan 22:56
arduino