A Clock That Plots Time

[Johannes] just sent us a tip about his small plotter that plots out the current time.

[Johannes] small clock plotter uses a dry wipe pen to write out the time on a small piece of dry erase board. The design is Made of three small 9g servos, with one to lift the pen off the writing surface and the other two to control a pair of connected jointed arms for the x and y-axis.

The little robot painstakingly wipes away the previous time before scrawling the current time in its place (with minute accuracy).

[Johannes] had hackability in mind when creating this project, making sure to keep to standard parts and making the code and design files available. The hardware for the build can be laser cut or 3D printed. The Arduino sketch can be found on GitHub and the design files can be found on Thingiverse. There are more detailed build instructions on Nuremberg’s FabLab page (translated).  Continue reading “A Clock That Plots Time”

Arduino Powered ECG Informs Users Of Their Death

Just when you thought you’d seen an Arduino do everything, [birdyberth] built an Arduino powered Electrocardiogram (ECG or EKG). Electrocardiography is a non invasive method of studying the heart. For many of us that means a 10 minute test during our yearly physical exam. Medical grade ECGs can use up to 10 electrodes. To keep things simple [birdyberth] went the route of a few circuits we’ve seen before, and reduced it to two electrodes and a ground reference. [birdyberth] makes note that the circuit is only safe if battery power is used.

The “heart” of any ECG is an instrumentation amplifier. Instrumentation amplifiers can be thought of as super differential amplifiers. They have buffered inputs, low DC offset, low drift, low noise, high open loop gain, and high impedance among other favorable characteristics. The downside is cost. A typical op amp might cost 0.50 USD in single piece quantities. Instrumentation amplifiers, like [birdyberth’s] INA128 can cost $8.30 or (much) more each. The extra cost is understandable when one thinks about the signals being measured. The ECG is “picking up” the heart’s electrical signals from the outside on skin. On commonly used ECG graph paper, a 1mm square translates to about .1 mV. High gain and clean signals are really needed to get any meaningful data here.

Electrodes are another important part of an ECG. Medical grade ECG units typically use disposable adhesive electrodes that make a strong electrical connection to the skin, and hurt like heck when they’re ripped off by the nurse. [birdyberth] was able to make electrodes using nothing more than tin foil and paper clips. We think the real trick is in the shower gel he used to make an electrical connection to his skin. While messy, the gel provides a low resistance path for the tiny currents to flow.

The actual processing in [birdyberth’s] circuit is easy to follow. The signal from the instrumentation amplifier is sent through a low pass filter, through a 741 op amp, and then on to the Arduino. The Arduino uses a 16×2 LCD to display heart rate in beats per minute, along with a friendly message informing you if you are alive or dead. The circuit even provides audible feedback for heart beats, and the classic “flatline tone” when the users either disconnects the electrodes or expires. [birdyberth] has also plugged in his pocket oscilloscope just after the low pass filter. As his video shows, the familiar ECG waveform is clearly visible. We’d love to see a more complex version of this hack combined with [Addie’s] heart simulator, so we could know exactly which heart malady is killing us in real time!

Continue reading “Arduino Powered ECG Informs Users Of Their Death”

From Vacuum Cleaner Hacking To Weather Station Reverse Engineering

spectrum

[Spock] wanted to do a little reverse engineering of his Miele brand remote control vacuum cleaner, so he broke out his DVB-T SDR dongle to use as a spectrum analyser. Sure enough, he found a 433.83Mhz signal that his vacuum cleaner remote control was using, but to his surprise, he found a stray QAM256 signal when he expected an ASK  only one.

After a little detective work, [Spock] eventually tracked it down to a cheap weather station he had forgotten about. The protocol for the weather station was too compelling for him to go back to his vacuum cleaner, though. After downloading an rc-switch Arduino library and making a quick stop at his local radio shack to get a 433.92 radio receiver to decode the signal, he reverse engineered the weather station so he could digitally record the temperature output. The Arduino rc-switch library proved unable to decode the signal, but some Python work helped him get to the bottom of it.

With software defined radio becoming more accessible and common place, hacks like these are a nice reminder just how wired our houses are becoming.

Introducing The SquareWear Mini, With Its Chainable Color LED Matrix

[Ray] just tipped us about his latest project: the SquareWear Mini, which basically is an improved version of the SquareWear 2.0 that we featured a month ago. For our readers that may have missed it, the SquareWear is essentially a wearable Arduino platform running at 3.3V and 12MHz. Both versions are based on an ATMega328 microcontroller running the V-USB library to provide USB connectivity, put together with diverse onboard peripherals.

As you can see in the picture above, the Mini includes 2 N-MOSFETs, one temperature sensor, one light sensor, a 16KB EEPROM memory, one buzzer, a one cell LiPo battery connector together with one charging controller, and finally a power switch (USB/battery). It is supposed to be 25% smaller than the SquareWear 2.0 and is optimized to work with a WS2812B-based 5×7 RGB LED matrix that [Ray] also designed. The latter can easily be cascaded in X/Y directions with other LED matrices in order to expand the overall display.

At last, [Ray] created a software to design animations and upload them to the SquareWear . A presentation video of the complete system is embedded after the break and you can download all the design files on GitHub.

Continue reading “Introducing The SquareWear Mini, With Its Chainable Color LED Matrix”

IKEA LED Table Mod Doesn’t LACK Awesome

Some people look at IKEA LACK tables as cheap furniture. Our readers look at them as a blank canvas. [Klaas] has turned a LACK Side table into an interactive LED table featuring 144 RGB LEDs. After attending a class on WS2801 pixel strings at his student IEEE chapter, [Klaas] was inspired to design something of his own. He settled on an IKEA LACK table and started sketching. He didn’t actually have a table on hand, so he had to deduce the size from the website images and dimensions. He calculated a usable size of around 45cm, which was pretty close to the mark. After running a few tests, [Klaas] determined that a 12×12 grid of squares 35mm on a side would provide that enough resolution to play simple games. The 35mm x 35mm grid would also be small enough for the LEDS to illuminate. He used a laser cutter to cut the an interlocking grid from 3mm MDF. A base plate with 144 12mm LED holes was also cut out, and the entire assembly was glued together.

For illumination, [Klaas] settled on WS2812B LEDs, as they were cheaper than their WS2801 couterparts. The WS2812B’s also snapped easily into his 12mm holes. At this point [Klaas] actually purchased his IKEA table and proceeded to cut a huge hole in it. The grid glued right in, and some aluminum L-profile cleaned up the top edge. Driving all those LEDs would need a bit of processing power, [Klaas] chose a Teensy 3, and the well-known OctoWS2811 library. He also added a USB host shield, which allowed him to use an Xbox 360 USB game pad as his controller. For software, he created a simple Tetris clone, and ported snake from the Arduino game shield. A menu and some scrolling text ties everything together. The only thing left to add is a glass top. [Klaas] hasn’t settled on clear or diffuse glass yet. We a suggest clear to avoid hiding any details of this great build.

Continue reading “IKEA LED Table Mod Doesn’t LACK Awesome”

Body Of A Trinket, Soul Of A Digispark

TrinketDigispark

Adafruit’s Trinket and digiStump’s Digispark board are rather close cousins. Both use an ATtiny85 microcontroller, both have USB functionality, and both play nice with the Arduino IDE. [Ray] is a fan of both boards, but he likes the Trinket hardware a bit better. He also prefers the Digispark libraries and ecosystem. As such, he did the only logical thing: he turned his Trinket into a Digispark. Step 1 was to get rid of that pesky reset button. Trinket uses Pin 1/PB5 for reset, while Digispark retains it as an I/O pin. [Ray] removed and gutted the reset button, but elected to leave its metal shell on the board.

The next step was where things can get a bit dicey: flashing the Trinket with the Digispark firmware and fuses. [Ray] is quick to note that once flashed to Digispark firmware, the Trinket can’t restore itself back to stock. A high voltage programmer (aka device programmer) will be needed. The flashing process itself is quite a bit easier than a standard Trinket firmware flash. [Ray] uses the firmware upload tool from the Micronucleus project. Micronucleus has a 60 second polling period, which any Trinket veteran will tell you is a wonderful thing. No more pressing the button and hoping you start the download before everything times out! Once the Trinket is running Digispark firmware, it’s now open to a whole new set of libraries and software.

USB Datalogging With Arduino Using V-USB

Adding USB functionality to your Arduino projects used to be a pain, but thankfully, the V-USB project came along and gave your ATMEGA328 the ability to control the USB lines directly and mimic simple (low-speed) USB peripherals. [Ray] shows an implementation of the V-USB project by logging the status of the Arduino’s I/O pins to an open Excel spreadsheet

V-USB (Virtual USB) is especially useful for those of us who build standalone Arduino projects with the ATMEGA328. Unlike the Arduino Leonardo and its ATMEGA32U4, the ATMEGA328 does not have a built-in USB controller. The circuit required to tie into the USB lines is made up of just a few basic components, and [Ray] provides a reference schematic and BOM to get you started. The Arduino is programmed to mimic a keyboard, so the datalogging is achieved by allowing the Arduino to ‘type’ the data into an open Excel spreadsheet. In this example, the status of 8 digital pins and all 6 Analog Input pins are logged.

For those of you who prefer the PIC microcontroller and are in a similar position of not having a built-in USB controller, there is the 16FUSB project to help you out.