Friday Hack Chat: Tenaya Hurst From Arduino

Join us this Friday at noon PDT for a Hack Chat with Tenaya Hurst of Arduino. If you’ve been one of the big Maker Faires over the last few years (or innumerable other live events) and stopped by the Arduino area you’ve probably met Tenaya. She is the Education Accounts Manager for Arduino and loves working with wearable electronics.

Come and discuss maker education and the role Arduino is playing in getting our students excited about electronics, and STEAM education in general. Tenaya will also be discussing a new wearable tech kit she’s been working on. We hope to see the gear in person at Bay Area Maker Faire next week.

Here’s How To Take Part:

join-hack-chatOur Hack Chats are live community events on the Hackaday.io Hack Chat group messaging.

Log into Hackaday.io, visit that page, and look for the ‘Join this Project’ Button. Once you’re part of the project, the button will change to ‘Team Messaging’, which takes you directly to the Hack Chat.

You don’t have to wait until Friday; join whenever you want and you can see what the community is talking about.

OBDII to Speed Pulse: Atmel ICE

Building An OBD Speed Pulse: Behold The ICE

I am a crappy software coder when it comes down to it. I didn’t pay attention when everything went object oriented and my roots were always assembly language and Real Time Operating Systems (RTOS) anyways.

So it only natural that I would reach for a true In-Circuit-Emulator (ICE) to finish of my little OBDII bus to speed pulse generator widget. ICE is a hardware device used to debug embedded systems. It communicates with the microcontroller on your board, allowing you to view what is going on by pausing execution and inspecting or changing values in the hardware registers. If you want to be great at embedded development you need to be great at using in-circuit emulation.

Not only do I get to watch my mistakes in near real time, I get to make a video about it.

Getting Data Out of a Vehicle

I’ve been working on a small board which will plug into my car and give direct access to speed reported on the Controller Area Network (CAN bus).

To back up a bit, my last video post was about my inane desire to make a small assembly that could plug into the OBDII port on my truck and create a series of pulses representing the speed of the vehicle for my GPS to function much more accurately. While there was a wire buried deep in the multiple bundles of wires connected to the vehicle’s Engine Control Module, I have decided for numerous reasons to create my own signal source.

At the heart of my project is the need to convert the OBDII port and the underlying CAN protocol to a simple variable representing the speed, and to then covert that value to a pulse stream where the frequency varied based on speed. The OBDII/CAN Protocol is handled by the STN1110 chip and converted to ASCII, and I am using an ATmega328 like found on a multitude of Arduino’ish boards for the ASCII to pulse conversion. I’m using hardware interrupts to control the signal output for rock-solid, jitter-free timing.

Walk through the process of using an In-Circuit Emulator in the video below, and join me after the break for a few more details on the process.

Continue reading “Building An OBD Speed Pulse: Behold The ICE”

DIY Lap Counters For Drone Racing

Drone racing is a very exciting sport, in which there is a lot of room for hackers and makers to add that special sauce into the mix. Usually the aerial finish line requires special race-timing hardware to do the lap counting, and there are timing gate transponders available for around $40. In his project CoreIR and CoreIR-Uplink, [Michael Rickert] decided to reverse engineer the IR Protocol that goes into these beacons and made a homebrew version that mimics the original. The transponders send a 7-digit number out repeatedly to a receiver at the finish line as the UAV passes by and that helps track how fast drone pilots flew around a race track. The hack involves flipping an IR LED ON and OFF with the correct timing, and [Michael Rickert] confesses that it was not as easy as he had imagined.

Using a logic analyser he was able to capture the modulated 38Khz carrier signal and extract the timing from the original beacon, but it took a number of iterations to get the code just right. The IRRemote library has a ‘sendRaw’ function which is quite helpful in these situations and was employed for the task. He experimented with a number of Arduino boards to power the project, before finally going with the Arduino Pro Mini. He has shared the code on github, along with photos of the finished hack which replaces the original circuit. The final sketches include functions to generate the 7-digit code to uniquely identify the quadcopter, which completes the hack in itself.

If that was not enough, he’s gone a step further by coding and sharing a desktop client as well, which turns this hack into a full-fledged project and should prove quite useful for drone racers on a budget. The app is written in NodeJS and packaged using the electron framework, a choice that makes for a very simple way to create cross-platform desktop applications.

A build tutorial is available for you to get started, and if drone racing seems a bit tame, check out Drone Wars for a little more carnage.

Mission Control For Kerbal

[Niko1499] had a plan. He’d built a cool hardware controller for the game Kerbal Space Program (KSP). He got a lot of positive reaction to it and decided to form a company to produce them. As many people have found out, though, that’s easier said than done, and the planned company fell short of its goals. However, [Niko1499] has taken his controller and documented a lot about its construction, including some of the process he used to get there.

If you haven’t run into it before, KSP is sort of half simulator, half game. You take command of an alien space program and develop it, plan and execute missions, and so on. The physics simulation is quite realistic, and the game has a large following.

When we first saw the photos, we thought it was an old Heathkit trainer, and–indeed–the case is from an old Heathkit. However, the panel is laser cut, and the software is Arduino-based. [Niko1499] covers a few different methods of letting the Arduino control the game by emulating a joystick, a keyboard, or by using some software to take serial data and use it to control the game.

Continue reading “Mission Control For Kerbal”

Hack Your Hike With This Arduino Puzzle Geocache

For those who love to hike, no excuse is needed to hit the woods. Other folks, though, need a little coaxing to get into the great outdoors, which is where geocaching comes in: hide something in the woods, post clues to its location online, and they will come. The puzzle is the attraction, and doubly so for this geocache with an Arduino-powered game of Hangman that needs to be solved before the cache is unlocked.

The actual contents of a geocache are rarely the point — after all, it’s the journey, not the destination. But [cliptwings]’ destination is likely to be a real crowd pleaser. Like many geocaches, this one is built into a waterproof plastic ammo can. Inside the can is another door that can only be unlocked by correctly solving a classic game of Hangman. The game itself may look familiar to long-time Hackaday readers, since we featured it back in 2009. Correctly solving the puzzle opens the inner chamber to reveal the geocaching goodness within.

Cleverly, [cliptwings] mounted the volt battery for the Arduino on top of the inner door so that cachers can replace a dead battery and play the game; strangely, the cache entry on Geocaching.com (registration required) does not instruct players to bring a battery along.

It looks like the cache has already been found and solved once since being placed a few days ago in a park north of Tucson, Arizona. Other gadget caches we’ve featured include GPS-enabled reverse caches, and a puzzle cache that requires IR-vision to unlock.

Continue reading “Hack Your Hike With This Arduino Puzzle Geocache”

Flooded house

Honey, When Did We Get An Indoor Pool?

Is it too much to ask for a home to have a little ‘smart’ built-in? If you’ve ever woken up (or come home) to your dwelling being flooded, you’ll know how terrible it feels, how long it can take to recover from, and how stressful it can be. Yeah, it’s happened to us before, so we really feel for [David Schneider]. He woke up one Sunday morning to a whole lot of water in his house. The inlet valve for his washing machine somehow got stuck in the open position after putting a load of laundry in the previous night.

[David] took progressively complex measures to prevent a broken water feed flood from happening in the future. First, he lined the entire floor of his laundry closet with a steel tray. OK, that’s a good start but won’t prevent another disaster unless it is caught very quickly. How about a simple audible water alarm? That’s good and all if you’re home, but what if you’re not?

Next, he installed a valve with a mechanical timer on the water line for the washing machine which closes automatically after 2 hours of being opened. Much better, but what about all the other thirsty appliances around the house? After searching online a little, he found plenty of whole house systems that would work for him, but there were 2 problems with these. First, most were network-based and he didn’t want to IoT-ify his house’s water system. Second, they were overpriced.

Of course the solution was to put together his own system! First, he purchased a few mostly inexpensive things — a wireless alarm, some water sensors, and a motorized ball valve. Then he collected the last few things he needed from what he had on hand around the house, and got to work connecting the 4 LEDs on the alarm to 4 analog input pins on his Arduino. Next, he added a relay between the Arduino and the motorized ball valve.

If a sensor detects water, it tells the alarm about it (wirelessly), which triggers the Arduino to energize a relay that is connected to the motorized ball valve, causing it to shut off the main water line for the entire house. Disaster averted! Sure, it’s a fairly simple hack, but it works, meets his requirements, and now he sleeps better at night knowing he won’t wake up (or come home) to an indoor swimming pool.

It’s surprising that we haven’t seen more hacks like this given it’s such a common problem. The closest thing we can remember is an overflow sensor for an aquarium. If homes came standard with a water main shutoff system, it would remove a stressful event from our lives and maybe even lower our insurance premium.

Portable Bluetooth Speaker Reacts To Sound

[IanMeyer123] should be working on his senior design project. Instead, he’s created a sound-reactive Bluetooth speaker that may not earn him an A grade but will at least keep the team entertained.

[Ian] started with the amp and power. The amp is a 15 watt, 12 volt model based on the popular TDA7297 chip. Power comes from a portable laptop battery rated at 185 Wh. [Ian] himself said that is absolute overkill for this project. While [Ian] hasn’t run any longevity tests on his setup, we’re guesstimating it would be rated in days.

Every Bluetooth speaker needs a sweet light show, right? [Ian] wrapped his 2″ full range speakers in Neopixel rings from Adafriut. The WS2812’s are driven by an Arduino. When music is playing, MSGEQ7 allows the Arduino to play a light show in time to the beat. When the stereo is off, a DS3231 real-time clock module allows the Arduino to display the time on the two rings. If you’re curious about the code for this project, [Ian] posted it on his Reddit thread. Reddit isn’t exactly a great code repository, so please, [Ian] setup a GitHub account, and/or drop your project on Hackaday.io!

[Ian] didn’t realize how many wires would be flying around inside the speaker. That may be why the wiring looks a bit scary. All the chaos is hidden away, underneath a well-built wooden case.

If you want to see another take on a Bluetooth speaker with a Neopixel display, check [Peter’s] project here. Interested in more portable power units? This one’s for you!

Continue reading “Portable Bluetooth Speaker Reacts To Sound”