Posts with «arduino hacks» label

Hang Ten With Help From the Surf Window

Unless you live in a special, unique place like Hawaii or Costa Rica it’s unlikely you’ll be able to surf every day. It’s not easy to plan surf sessions or even surf trips to most locations because the weather conditions will need to be just right. Not only the wave height (swell) but also the wind speed and direction, tide, water and air temperature, and even amount and type of marine life present can all impact your surf session. You’ll want something which can easily tell you right away if conditions are good.

This project from [luke] is called the Surf Window shows the surf conditions at the local beach with just one glance. Made out of various pieces of wood, each part represents one of the weather conditions at the beach. A rotating seagull gives the wind direction, for example, and the wave height is represented by 3D, moving waves. All of the parts are connected with various motors and linkages to an Arduino Mega +WiFi R3 which grabs all of its information from Magicseaweed, a surf forecasting site.

The Surf Window can show the current conditions at virtually any surfable beach in the world, so if you really want to know how Jaws, Mavericks, or even Reef Road is breaking right now, you could use this to give you a more nuanced look. Don’t forget to take the correct board for the conditions!

Steering By Touch And Haptic Feedback

Scribble is a haptic interface lets you draw your way through traffic. In an environment where fully automated vehicles are becoming the expectation for the next step in transportation, Scribble provides a friendly alternative that allows you to guide your car around, while the automation makes decisions on how to actually steer the car around obstacles.

The driver is guided by haptic feedback that alerts them about the road conditions or obstacles ahead. The project was conceived by [Felix Ros] for his master’s thesis at Eindhoven University, featured a five bar linkage that moves with two lateral degrees of freedom, commonly used for drawing robots.

The code run on an Arduino DUE control over serial by a program made in Open Frameworks that communicates with a Unity 3D driving simulator over UDP. Fellow graduate student [Frank van Valeknhoef]’s Haptic Engines are used as the actuators, outputting the position and a variable force.

The forward kinematics algorithms were based on a clock and weather plotter by SAP, sharing the same servo and drawing arm assembly. The left and right actuators update based on the desired angle, calculating the proper angles needed to achieve the correct position.

While automated vehicles may be able to travel efficiently from one destination to the next, they can’t necessarily wander off course to explore new places. Scribble takes back some of that freedom and allows drivers to decide for themselves where they want to be. It’s an interesting take at inserting the human back into the driver’s seat in automated cars.

The Arduino IDE Finally Grows Up

While the Arduino has a very vocal fan club, there are always a few people less than thrilled with the ubiquitous ecosystem. While fans may just dismiss it as sour grapes, there are a few legitimate complaints you can fairly level at the stock setup. To address at least some of those concerns, Arduino is rolling out the Arduino Pro IDE and while it doesn’t completely address every shortcoming, it is worth a look and may grow to quiet down some of the other criticisms, given time.

For the record, we think the most meaningful critiques fall into three categories: 1) the primitive development environment, 2) the convoluted build system, and 3) the lack of debugging. Of course, there are third party answers for all of these problems, but now the Pro IDE at least answers the first one. As far as we can tell, the IDE hides the build process just like the original IDE. Debugging, though, will have to wait for a later build.

We were happy to see a few things with the new IDE. There’s some autocompletion support, Git is integrated, and there’s still our old friend the serial monitor. The system still uses the Arduino CLI, so that means there isn’t much danger of the development getting out of sync. The actual editor is Eclipse Theia. People typically either love Eclipse or hate it, however, it is at least a credible editor. However, Theia uses Electron which makes many people unhappy because Electron applications typically eat a lot of resources. We’ll have to see how taxing using the new Pro IDE is on typical systems with normal workloads.

On the future feature list is our number one pick: debugging. They are also promising support for new languages, third party plugins, and synchronization with the Web-based editor. All good features.

This is just an alpha preview release, but it is a great start. Our only question is will existing users really care? Most people already write code in another editor. Many use an external build system like PlatformIO. Eclipse already has a plug in for Arduino that supports debugging with the right hardware. So while new users may appreciate the features, advanced users may be wondering why this is so late to the party.

 

Hack a Day 21 Oct 12:00

Arduino Wire Bender Probably Won’t Kill All Humans

Do you want to make your own springs? Yeah, that’s what we thought. Well, blow the dust off of that spare Arduino and keep reading. A few months ago, we let you know that renowned circuit sculptor [Jiří Praus] was working on a precision wire-bending machine to help him hone his craft. Now it’s real, it’s spectacular, and it’s completely open source.

Along with that ‘duino you’ll need a CNC shield and a couple of NEMA 17 steppers — one to feed the wire and one to help bend it. Before being bent or coiled into springs, the wire must be super straight, so the wire coming off the spool holder runs through two sets of rollers before being fed into the bender.

[Jiří]’s main goal for this build was precision, which we can totally get behind. If you’re going to build a machine to do something for you, ideally, it should also do a better job than you alone. It’s his secondary goal that makes this build so extraordinary. [Jiří] wanted it to be easy to build with commonly-available hardware and a 3D printer. Every part is designed to be printed without supports. Bounce past the break to watch the build video.

You can also make your own springs on a lathe, or print them with hacked g-code.

Review: OSEPP STEM Kit 1, a Beginner’s All-in-One Board Found in the Discount Aisle

As the name implies, the OSEP STEM board is an embedded project board primarily aimed at education. You use jumper wires to connect components and a visual block coding language to make it go.

I have fond memories of kits from companies like Radio Shack that had dozens of parts on a board, with spring terminals to connect them with jumper wires. Advertised with clickbait titles like “200 in 1”, you’d get a book showing how to wire the parts to make a radio, or an alarm, or a light blinker, or whatever.

The STEM Kit 1 is sort of a modern arduino-powered version of these kits. The board hosts a stand-alone Arduino UNO clone (included with the kit) and also has a host of things you might want to hook to it. Things like the speakers and stepper motors have drivers on board so you can easily drive them from the arduino. You get a bunch of jumper wires to make the connections, too. Most things that need to be connected to something permanently (like ground) are prewired on the PCB. The other connections use a single pin. You can see this arrangement with the three rotary pots which have a single pin next to the label (“POT1”, etc.).

I’m a sucker for a sale, so when I saw a local store had OSEPP’s STEM board for about $30, I had to pick one up. The suggested price for these boards is $150, but most of the time I see them listed for about $100. At the deeply discounted price I couldn’t resist checking it out.

So does an embedded many-in-one project kit like this one live up to that legacy? I spent some time with the board. Bottom line, if you can find a deal on the price I think it’s worth it. At full price, perhaps not. Join me after the break as I walk through what the OSEPP has to offer.

What’s Onboard?

There are plenty of input and output devices:

  • 7 Push Buttons
  • Potentiometers (3 rotary and 1 slide)
  • Passive Infrared Sensor (PIR)
  • Light Sensor
  • Sound Sensor
  • LM35 Temperature Sensor
  • 10 LEDs (various colors)
  • Servo Motor
  • Stepper Motor
  • DC Motor
  • LCD Display
  • Buzzer
  • Speaker
  • RGB LED

In addition, the kit comes with an ultrasonic distance sensor in a little bracket that can connect to the stepper motor. That’s the only part that needs power and ground that isn’t already wired up.

Because the heart of the board is an Arduino UNO clone, you can do anything you like to program it. However, OSEPP touts their visual block diagram language that is basically Scratch. You can use it for free on most platforms and there is even a Web-based version although it can’t download code. It looks like Scratch or other block-oriented systems you’ve seen before.

I’m not usually fond of the visual block languages, but this one at least shows you the actual Arduino code it generates, so that isn’t bad. But you can still use any other method you like such as the standard IDE or PlatformIO.

You can see a video about the board, below.

The Good and the Bad

The board feels substantial and able to withstand a good bit of abuse. There’s a good range of components, and I like that the arduino is a real daughter board and not just built onto the PCB. Despite using the block language, I do like the tutorial booklet. It is very slick and has projects ranging from an IR doorbell to a mini piano. You can see a page below — very colorful and clear.

Of course, the suggested retail price of $150 is a bit offputting. You might think a breadboard with a handful of LEDs and other parts would be a much lower-cost option but just look around for arduino kits for beginners and you’ll find prices are all over the place. On the other hand, with a parts kit you would have to know how to wire up things like stepper motors or DC motors, so there is some value to having it already done for you. There’s also value in not having a bag of parts to misplace.

The jumper wires in the kit have pins on one side and sockets on the other. The pins go into the Arduino’s connector and the sockets go over pins on the components. These aren’t quite as reliable as a spring clip and not as versatile either.

In my mind the worst part of the kit design is that the pins are right next to each of the components. That’s good for understanding, but it makes a mess of wiring. For instance, there are ten LEDs, and connecting them all means stretching jumper wires to both edges of the board The jumpers aren’t very long either, so any complex project is going to have wires crisscrossing the sensors and LCD.

Granted, in this image I could have removed some of the wires from the bundles but that wouldn’t help that much, either. If you need to hook up more than a few of the available components you will have a mess. I would have put some sort of spring clip or even screw terminals and put them all on the top and bottom of the board with clear color-coded marking about where they connect. Then the wiring would all be out of the way. There are probably a few other ways they could have gone, and at this price, they could afford the few extra inches on the PCB.

There are a few other things that would have been nice touches to finish off this kit. I would have enjoyed a short chapter in the booklet about using the Arduino IDE directly so that people know it exists. And having even a small breadboard attached for your own exploration would make sense, but would then call for a different type of jumper wire.

Short Example Using the Distance Sensor

I wanted to do something with the board so I decided to play with the distance sensor and the servo. The distance sensor is a bit annoying both because you have to wire it all up and it has a tendency to fall off when you transport the board.

The demo (you can find it online) won’t win any originality prizes. The program moves the servo to scan from 0 to 180 degrees in 5 degree increments. It measures the distance of what’s in front of it. When it completes a scan, if it saw something close (you could adjust the sensitivity), it moves the sensor back to that position and waits 30 seconds. Otherwise, it keeps scanning.

Really, this is no different from any other Arduino program. That’s kind of the point. Despite the emphasis in the book on the point-and-click language, this is really just an Arduino.

In Summary

For the deep sale price I found, the board will work well for its intended audience of students or anyone starting out with Arduino or microcontrollers. Even a more advanced audience who just wants a way to hammer out a quick prototype might find it worth the $30 or $40 you can sometimes pay. But at full price, it is hard to imagine this makes sense because of the mess of wire routing and limited expansion options.

IoT Safe Keeps Latchkey Kids’ Phones on Lockdown

Phones are pretty great. Used as telephones, they can save us from bad situations and let us communicate while roaming freely, for the most part. Used as computers, they often become time-sucking black holes that can twist our sense of self and reality. Assuming they pick up when you call, phones are arguably a good thing for kids to have, especially since you can hardly find a payphone these days. But how do you teach kids to use them responsibly, so they can still become functioning adults and move out someday? [Jaychouu] believes the answer is inside of a specialized lockbox.

This slick-looking box has a solenoid lock inside that can be unlocked via a keypad, or remotely via the OBLOQ IoT module. [Jaychouu] added a few features that drive it out of Arduino lockbox territory. To prevent latchkey children from cheating the system and putting rocks (or nothing at all) in the box, there’s a digital weight sensor and an ultrasonic sensor that validate the credentials of the contents and compare them with known values.

Want a basic lockbox to keep your phone out of reach while you work? Here’s one with a countdown timer.

Custom Game Pad Can Reprogram Itself

In the heat of the moment, gamers live and die by the speed and user-friendliness of their input mechanisms. If you’re team PC, you have two controllers to worry about. Lots of times, players will choose a separate gaming keyboard over the all-purpose 104-banger type.

When [John Silvia]’s beloved Fang game pad went to that LAN party in the sky, he saw the opportunity to create a custom replacement exactly as he wanted it. Also, he couldn’t find one with his desired layout. Mechanical switches were a must, and he went with those Cherry MX-like Gaterons we keep seeing lately.

This 37-key game pad, which [John] named Eyetooth in homage to the Fang, has a couple of standout features. For one, any key can be reprogrammed key directly from the keypad itself, thanks to built-in macro commands. It’s keyboard-ception!

One of the macros toggles an optional auto-repeat feature. [John] says this is not for cheating, though you could totally use it for that if you were so inclined. He is physically unable to spam keys fast enough to satisfy some single-player games, so he designed this as a workaround. The auto-repeat’s frequency is adjustable in 5-millisecond increments using the up /down macros. There’s a lot more information about the macros on the project’s GitHub.

Eyetooth runs on an Arduino Pro Micro, so you can either use [John]’s code or something like QMK firmware. This baby is so open source that [John] even has a hot tip for getting quality grippy feet on the cheap: go to the dollar store and look for rubber heel grippers meant to keep feet from sliding around inside shoes.

If [John] finds himself doing a lot of reprogramming, adding a screen with a layout map could help him keep track of the key assignments.

Hack a Day 21 Sep 12:00

Homemade Wall Stops Roomba and Other Vacuum Tricks

If you have a Roomba, you know they are handy. However, they do have a habit of getting into places you’d rather they avoid. You can get virtual walls which are just little IR beacons, but it is certainly possible to roll your own. That’s what [MKme] did and it was surprisingly simple, although it could be the springboard to something more complicated. You can see a video about the build below.

As Arduino projects go, this could hardly be more simple. An IR LED, a resistor and a handfull of code that calls into an IR remote library. If that’s all you wanted, the Arduino is a bit overkill, although it is certainly easy enough and cheap.

We know that’s not much, but we were impressed with some of the other information associated with the project for future directions. For example, there’s this project that adds an ultrasonic sensor to a Roomba using the serial port built under the handle. The interface and protocol for that port is even nicely documented.

That got us thinking. You could probably use some ultrasonic sensors for two-way communication to do custom walls. For example, you could use one to send a set number of pulses per second and have another device on the Roomba to receive them and count. You could program rules like a particular wall is only really a wall between 8 AM and 5 PM, for example.

We’ve seen some people use the Roomba as a general-purpose robot platform. We still wish we could find a sensor in the DigiKey catalog to help avoid this common problem.

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.

Via Arduino blog

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.