Piezoelectric sensors are great for monitoring mechanical impacts with a microcontroller. Whether you’re monitoring knocks on a door or watching a heartbeat, they are a cheap way to get the job done. They do have their downsides, though, so when [Jeremy] wanted to build an electronic drum set, he decided to use more expensive accelerometers to measure the percussive impacts instead.
Even though piezo sensors are cheap, they require a lot of work to get them working properly. The ADXL377 3-axis accelerometer that [Jeremy] found requires much less work, plus provides more reliable data due to a 1kHz low-pass filter at the output. In his setup, a Raspberry Pi handles all of the heavy lifting. An ADC on each drum sends data about each impact of the drum, and the Raspberry Pi outputs sound via the native Alsa driver and a USB sound card.
This project goes a long way to show how much simpler a project like this is once you find the right hardware for the job. [Jeremy]’s new electronic drums are very well documented as well if you are curious about using accelerometers on your newest project rather than piezo sensors. And, if you’re into drums be sure to see how you can have drums anywhere, or how you can build your own logic drums.
Continue reading “RaspiDrums Uses Expensive Sensors”
If you live in New England (like me) you know that the roads take a pounding in the winter. Combine this with haphazard maintenance and you get a recipe for biking disaster: bumpy, potholed roads that can send you flying over the handlebars. Project Dekoboko 凸凹 aims to help a little with this, by helping you map and avoid the bumpiest roads and could be a godsend in this area.
The 2015 Hackaday Prize entry from [Benjamin Shih], [Daniel Rojas], and [Maxim Lapis] is a device that clips onto your bike and maps how bumpy the ride is as you pedal around. It does this by measuring the vibration of the bike frame with an accelerometer. Combine this with a GPS log and you get a map of the quality of the roads that helps you plan a smooth ride, or which could help the city figure out which roads need fixing the most.
The project is currently on its third version, built around an Arduino, Adafruit Ultimate GPS Logger shield, and a protoboard that holds the accelerometer (an Analog ADXL345). The team has also set up a first version of their web site, which contains live data from a few trips around Berlin. This does show one of the issues they will need to figure out, though: the GPS data has them widely veering off the road, which means that the data was slightly off, or they were cycling through buildings on the Prinzenstrasse, including a house music club. I’ll assume that it was the GPS being inaccurate and not them stopping for a rave, but they will need to figure out ways to tie this data down to a specific street before they can start really analyzing it. Google Maps does offer a way to do this, but it is not always accurate, especially on city streets. Still, the project has made good progress and could be useful for those who are looking for a smooth ride around town.
Continue reading “Hackaday Prize Entry: Project Dekoboko 凸凹 Maps Bumpy Roads On A Bike”
What do orchestra conductors, wizards, and Leap controller users have in common? They all control things by just waving their hands. [Saddam] must have wanted the same effect, so he created a robot that he controls over wireless using hand gestures.
An accelerometer reads hand motions and sends them via an RF module to an Arduino. This is a bit of a trick, because the device produces an analog value and [Saddam] uses some comparators to digitize the signal for the RF transmitter. There is no Arduino or other CPU on the transmit side (other than whatever is in the RF module).
Continue reading “Hand Controlled Robot uses Accelerometer”
Giant wristwatches are so hot right now. This is a good thing, because it means they’re available at many price points. Aim just low enough on the scale and you can have a pre-constructed chassis for building your own smartwatch. That’s exactly what [benhur] did, combining a GY-87 10-DOF module, an I²C OLED display, and an Arduino Pro Mini.
The watch uses one button to cycle through its different modes. Date and time are up first, naturally. The next screen shows the current temperature, altitude, and barometric pressure. Compass mode is after that, and then a readout showing your step count and kilocalories burned.
In previous iterations, the watch communicated over Bluetooth to Windows Phone, but it drew too much power. With each new hardware rev, [benhur] made significant strides in battery life, going from one hour to fourteen to a full twenty-fours.
Take the full tour of [benhur]’s smartwatch after the break. He’s open to ideas for the next generation, so share your insight with him in the comments. We’d like to see some kind of feedback system that tells us when we’ve been pounding away at the Model M for too long. Continue reading “It’s Time to Roll Your Own Smartwatch”
This month the popular “Thomas the Tank Engine” toy celebrated its 70 anniversary. As a fun project, [tinkermax] wanted to bring this traditional toy into the age of IoT, while preserving its physical appearance and simple charm.
He used a model called the “Diesel” which seemed big enough to house the electronics, but proved otherwise once he inspected the innards. He needed to fit in an ESP8266 module, an accelerometer breakout, some discrete parts, a nifty analog multiplexer, and a 14500 3.7V LiPo. Once done, he was able to control its speed remotely over WiFi, with an auto “throttle-boost” that kicks in when the accelerometer senses that the train is going uphill, and has remote monitoring of battery state, engine load, inclination and track vibration – all in real-time using MQTT over WiFi. It’s quite a demonstration of the power of these super-cheap WiFi modules that are powering the current wave of IoT innovation.
The train motor works off a single 1.5V battery, so [tinkermax] tried a couple of boost converters to get the ESP-12 to work. But the modules were a tad bigger, and couldn’t provide the high peak current needed by the ESP-12. So he used a 14500 3.7V LiPo battery instead. A series diode drops the LiPo voltage to a circuit friendly 2.9V ~ 3.6V range. The ADXL345 accelerometer is used to measure “pitch” to detect going up and down a hill, “roll” to check for tilt or tip over and vibration to identify track defects. It communicates with the ESP-12 using a special Lite-SPI library that he wrote.
Two analog measurements are performed. One uses a resistor in series with the PWM driven motor to measure its current, with a low pass filter to smooth out PWM noise. The other is a resistor divider network used to monitor battery voltage. But the ESP-12 has just one ADC channel. Instead of adding another ADC module, [tinkermax] used a neat device – the FSA3157 – which allows two analog inputs to be channeled to a single output much like a SPDT switch. One PWM output is used to control motor speed and a second one to pulse a LED.
Continue reading “IoT Enabled Thomas The Tank Engine”
A lot of young athletes who get concussions each year go undiagnosed, leading to brain injury. [Hunter Scott] is working on a device called Impact to help detect these events early. According to this article which discusses the issue of concussion recognition and evaluation, “Early identification on the sports sideline of suspected concussion is critical because, in most cases, athletes who are immediately removed from contact or collision sports after suffering a concussion or other traumatic brain injury will recover without incident fairly quickly. If an athlete is allowed to keep playing, however, their recovery is likely to take longer, and they are at increased risk of long-term problems”
The device is a dime sized disk, which has an ATTiny85 microcontroller, memory to hold data, an accelerometer and a LED which gets activated when the preset impact threshold is breached, all driven by a coin cell. This small size allows it to be easily embedded in sports equipment such as helmets. At the end of a game, if the LED is blinking, the player is then screened for a concussion. For additional analysis, data stored on the on-board memory can be downloaded. This can be done by a pogo-pin based docking station, which is what [Hunter Scott] is still working on.
He’s having a functional problem that needs fixing. The ATTiny85 cannot be programmed with the accelerometer populated. He first needs to populate the ATTiny85, program it, and then populate the accelerometer. He’s working in fixing that, but if you have any suggestions, chime in on the comments below. We’d like to add that [Hunter] is a prolific hacker. His project, the Ultra-wideband radio module was a Hackaday Prize semi-finalist last year.
Many of us carry around a bag with our expensive personal belongings. It can be a pain to carry a bag around with you all day though. If you want to set it down for a while, you often have to try to keep an eye on it to ensure that no one steals it. [Micamelnyk] decided to build a solution to this problem in the form of a motion sensing alarm.
The device is built around a Trinket Pro. The Trinket Pro is a sort of break out board for the ATMega328. It’s compatible with the Arduino IDE and also contains a USB port for easy programming. The Trinket is hooked up to a GY-521 accelerometer, which allows it to detect motion. When the Trinket senses that the device has been moved, it emits a loud high-pitched whine from a piezo speaker.
To arm the device, the user first holds the power button for 3 seconds. Then the user has ten seconds to enter their secret code. This ensures that the device is never armed accidentally and that the user always remembers the code before arming the device. The code is entered via four push buttons mounted to a PCB. The code and code length can both be easily modified in the Trinket software.
Once the code is entered, the status LED will turn solid. This indicates to the user that the device must be placed stationary. The LED will turn off after 20 seconds, indicating that the alarm is now armed. If the bag is moved for more than five seconds at a time, the alarm will sound. The slight delay gives the user just enough time to disarm the alarm. This parameter can also be easily configured via software.