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.
An accelerometer is the ubiquitous little sensor that tells your tablet when to flip orientation or informs the brain of your quadcopter how closely its actual actions are matching your desired ones. In a quick three minutes, [Afroman] explains what is inside an accelerometer and how they work.
It turns out the tiny devices that report acceleration in one, two or three dimensions are not powered by magic complicated mechanisms but very simple Micro Electro-Mechanical Systems or “MEMS.” MEMS are similar to copper/silver/gold-wired integrated circuits except in a MEMS circuit conductive silicon is used and they actually physically move, but only just a bit.
The secret is in creating microscopic capacitors along a weighted lever that flexes in response to changes in velocity. When the plates flex the distance between them changes which alters the capacitance. This translates physical motion into voltage which can then be interpreted by the rest of your circuit. The chemistry behind MEMS is interesting too.
This Christmas when your laptop’s power cord clotheslines your cousin’s kid, your hard drive has a chance of parking the head (on the drive, not on the child) between fall and impact and preventing damage (to the drive, not to the child) because of an accelerometer. If bad roads cause you to drift into the ditch, it is an accelerometer that senses the crash and tells your airbag to deploy before your body hits the steering wheel.
The MEMS market is exploding right now and for us hackers in particular, Wearables are looking to be a big part of that growth.
A team of Cornell students recently built a prototype electronic glove that can detect sign language and speak the characters out loud. The glove is designed to work with a variety of hand sizes, but currently only fits on the right hand.
The glove uses several different sensors to detect hand motion and position. Perhaps the most obvious are the flex sensors that cover each finger. These sensors can detect how each finger is bent by changing the resistance according to the degree of the bend. The glove also contains an MPU-6050 3-axis accelerometer and gyroscope. This sensor can detect the hand’s orientation as well as rotational movement.
While the more high-tech sensors are used to detect most characters, there are a few letters that are similar enough to trick the system. Specifically, they had trouble with the letters R, U, and V. To get around this, the students strategically placed copper tape in several locations on the fingers. When two pieces of tape come together, it closes a circuit and acts as a momentary switch.
The sensor data is collected by an ATmega1284p microcontroller and is then compiled into a packet. This packet gets sent to a PC which then does the heavy processing. The system uses a machine learning algorithm. The user can train the it by gesturing for each letter of the alphabet multiple times. The system will collect all of this data and store it into a data set that can then be used for detection.
This is a great project to take on. If you need more inspiration there’s a lot to be found, including another Cornell project that speaks the letters you sign, as well as this one which straps all needed parts to your forearm.
Continue reading “Electronic Glove Detects Sign Language”
The latest gizmo that you can make using the cheap and easy Raspberry Pi is here courtesy of [Mark Williams]. He has hooked up an inertial measurement unit (IMU) to the Pi and built an inclinometer to use to measure the various angles of an off-road vehicle.
This particular guide goes through the setup of SDL to control the video output to a small screen. Then, a function is created to rotate the images based on input from the IMU so that the vehicle position can be shown graphically on the screen. Now, when your truck is about to roll over on a hill, you’ll get advance warning!
Of course, this whole project is predicated on installing the IMU and getting it up and running on the Raspberry Pi in the first place. [Mark] has you covered on a guide for setting that up as well. This delves into setting up the IMU over I2C to get it talking to the Raspberry Pi, and then converting the raw data from the IMU into data that is more usable. Be sure to check out [Mark]’s page for all of the code and details!
As one of their colleagues was retiring, several CERN engineers got together after hours during 4 months to develop his gift: a fully open electronic watch. It is called the F*Watch and is packed with sensors: GPS, barometer, compass, accelerometer and light sensor. The microcontroller used is a 32-bit ARM Cortex-M3 SiLabs Giant Gecko which contains 128KB of RAM and 1MB of Flash. In the above picture you’ll notice a 1.28″ 128×128 pixels Sharp Memory LCD but the main board also contains a micro-USB connector for battery charging and connectivity, a micro-SD card slot, a buzzer and a vibration motor.
The watch is powered by a 500mA LiPo battery. All the tools that were used to build it are open source (FreeCAD, KiCad, GCC, openOCD, GDB) and our readers may make one by downloading all the source files located in their repository. After the break is embedded a video showing their adventure.
Continue reading “Introducing the F*Watch, a Fully Open Electronic Watch”