TweetHeart Shows You Some Love

[Stacey] wanted a more interesting way to monitor events related to her Twitter account. What she ended up with is a beautiful animated heart light.

TweetboxShe started out by designing the enclosure. Having access to a laser cutter, she opted to make it out of thin plywood. [Stacey] used an online tool called BoxMaker to design the actual box. The tool is very simple to use. You simply plug in the dimensions of the box and it will provide you with a two dimensional template you can use with your laser cutter. The resulting plywood pieces fit together like a puzzle. The heart piece is made from frosted acrylic and was also cut by the laser.

To light up the heart, [Stacey] opted to use NeoPixels. These are like many of the RGB LED strips we’ve seen in the past, though the pixel density is higher than most. She cut up the LED strip into the appropriate sizes and glued them to a piece of plywood in a rough heart shape. She tested the lights during each step so she would know exactly when any errors were made.

[Stacey] opted to use a SparkCore to control the LEDs. This had the advantage of including WiFi connectivity out of the box.  [Stacey] started with NeoPixel example programs, but quickly realized they all relied on the Delay function. This was a problem for her, because she needed to constantly watch for new Twitter events. She ended up having to write her own functions that relied on interrupts instead.

[Stacey] then wrote a Node.js script to monitor twitter and control the Spark. The script watches for specific events, such as one of [Stacey’s] tweets being re-tweeted, or a user unfollowing [Stacey]. The script then sends a message to the Spark to tell it which event just occurred. The Spark will then repeat the event until a new one occurs. Check out the demonstration video below. Continue reading “TweetHeart Shows You Some Love”

Simple and Inexpensive Heartbeat Detector

There are many ways to detect a heartbeat electronically. One of the simpler ways is to take [Orlando’s] approach. He’s built a finger-mounted pulse detector using a few simple components and an Arduino.

This circuit uses a method known as photoplethysmography. As blood is pumped through your body, the volume of blood in your extremities increases and decreases with each heartbeat. This method uses a light source and a detector to determine changes in the amount of blood in your extremities. In this case, [Orlando] is using the finger.

[Orlando] built a finger cuff containing an infrared LED and a photodiode. These components reside on opposite sides of the finger. The IR LED shines light through the finger while the photodiode detects it on the other side. The photodiode detects changes in the amount of light as blood pumps in and out of the finger.

The sensor is hooked up to an op amp circuit in order to convert the varying current into a varying voltage. The signal is then filtered and amplified. An Arduino detects the voltage changes and transmits the information to a computer via serial. [Orlando] has written both a LabVIEW program as well as a Processing program to plot the data as a waveform. If you’d rather ditch the PC altogether, you might want to check out this standalone heartbeat sensor instead.

Dual Complementary Optoisolator Logic

You’ve seen CMOS logic, you’ve seen diode-resistor logic, you’ve seen logic based on relays, and some of you who can actually read have heard about rod logic. [Julian] has just invented optoisolator logic. He has proposed two reasons why this hasn’t been done before: either [Julian] is exceedingly clever, or optoisolator logic is a very stupid idea. It might just be the former.

Inside each optoisolator is a LED and a phototransistor. There’s no electrical connection between the two devices, which is exactly what you need in something that’s called an isolator. [Julian] was playing around with some optoisolators one day to create a weird push-pull circuit; the emitter of one phototransistor was connected to the collector of another. Tying the other ends of the phototransistor to +5V and Gnd meant he could switch between VCC and VDD, with every other part of the circuit isolated. This idea whirled around his mind for a few months until he got the idea of connecting even more LEDs to the inputs of the optoisolators. He could then connect the inputs of the isolators to +5V and Gnd because of the voltage drop of four LEDs.

A few more wheels turned in [Julian]’s head, and he decided to connect a switch between the two optoisolators. Connecting the ‘input’ of the circuit to ground made the LED connected to +5V light up. Connecting the input of the circuit to +5 made the LED connected to ground light up. And deeper down the rabbit hole goes [Julian].

With a few more buttons and LEDs, [Julian] created something that is either an AND, NAND, OR NOR, depending on your point of view. He already has an inverter and a few dozen more optoisolators coming from China.

It is theoretically possible to build something that could be called a computer with this, but that would do the unique properties of this circuit a disservice. In addition to a basic “1” and “0” logic state, these gates can also be configured for a tri-state input and output. This is huge; there are only two universal gates when you’re only dealing with 1s and 0s. There are about 20 universal logic gates if you can deal with a two.

It’s not a ternary computer yet (although we have seen those), but it is very cool and most probably not stupid.

Video below.

Continue reading “Dual Complementary Optoisolator Logic”

iBling is an LED Display Necklace

Are you tired of being ignored? Do you want a fashion accessory that says, “Pay attention to me!” If so, you should check out [Al’s] recent instructable. He’s built himself a necklace that includes a display made up of 512 individual LEDs.

This project was built from mostly off-the-shelf components, making it an easy beginner project. The LED display is actually a product that you can purchase for just $25. It includes 512 LEDs aligned in a 16 x 32 grid. The module is easily controlled with a Pixel maker’s kit. This board comes with built-in functionality to control one of these LED modules and can accept input from a variety of sources including Android or PC. The unit is powered from a 2000 mAH LiPo battery.

[Al] had to re-flash the firmware of the Pixel to set it to a low power mode. This mode allows him to get about seven hours of battery life with the 2000 mAH battery. Once the hardware was tested and confirmed to work correctly, [Al] had to pretty things up a bit. Some metallic gold spray paint and rhinestones transformed the project’s cyberpunk look into something you might see in a hip hop video, or at least maybe a Weird Al hip hop video.

The Pixel comes with several Android apps to control the display via Bluetooth. [Al] can choose one of several modes. The first mode allows for pushing animated gif’s to the display. Another will allow the user to specify text to scroll on the display. The user can even specify the text using voice recognition. The final mode allows the user to specify a twitter search string. The phone will push any new tweets matching the terms to the display as scrolling text.

Faulty ESP8266s Release Smoke, Then Keep Working?

[Ray] is in a bit of a pickle. All appeared well when he began selling an ESP8266-based product, but shortly thereafter some of them got hot and let the smoke out. Not to worry, he recommends ignoring the problem since once the faulty components have vaporized the device will be fine.

The symptom lies in the onboard red power indicator LED smoking. (Probably) nothing is wrong with the LED, because upon testing the batch he discovered its current limiting resistor is sometimes a little bit low to spec. Off by a hair of, oh, call it an even 1000x.

HAD - HotESPY3Yep, the 4700 ohm resistor is sometimes replaced with a 4.7 ohm. Right across the power rail. That poor little LED is trying to dissipate half a watt on a pinhead. Like a sparrow trying to slow a sledgehammer, it does not end well. Try not to be too critical, pick ‘n place machines have rough days now and then too and everyone knows those reels look practically the same!

The good news is that the LED and resistor begin a thermal race and whoever wins escapes in the breeze. Soon as the connection cuts the heat issue disappears and power draw drops back to normal. Everything is fine unless you needed that indicator light. Behold – there are not many repairs you can make with zero tools, zero effort, and only a few seconds of your time.

[Ray] also recommends measuring and desoldering the resistor or LED if you are one of the unlucky few, or, if worst comes to worst, he has of course offered to replace the product too. He did his best to buy from authentic vendors and apologizes to the few customers affected. As far as he knows no one else has had this problem yet so he wanted to share it with the community here on Hackaday as soon as possible. Keep an eye out.

If you have never seen smoke ISO9001-certified electronics repair before, there is a short video of this particular disaster upgrade caught live on tape after the break.

Continue reading “Faulty ESP8266s Release Smoke, Then Keep Working?”

RGB LED Matrices With The STM32 and DMA

A few years ago, [Frans-Willem] bought a few RGB LED panels. Ten 32×16 panels is a lot of LEDs, and to drive all of these panels requires some sufficiently powerful hardware. He tried working with an FPGA development board, but that didn’t have enough memory for 24-bit color. The microcontroller du jour – a TI Stellaris – couldn’t get more than 16 bits of color without flickering. With a bunch of LEDs but no way to drive them, [Frans-Willem] put the panels in a box somewhere, waiting for the day they could be used to their fullest capacity.

This day came when [Frans-Willem] was introduced to the STM32 series of chips with the F1 Discovery board. While looking for some electronic playthings to use with this board, he stumbled upon the LED panels and gave them one more try. The results are spectacular, with 33 bits of color, with animations streamed over a router over WiFi.

The panels in question are HUB75 LED panels. In the 32×8 panels, there are six data pins – two each for each color – four row select pins, and three control pins. The row select pins select which row of pixels is active at any one time. Cycle through them fast enough, and it will seem like they’re all on at once. The control pins work pretty much like the control pins of a shift register, with the data pins filling in the obvious role.

The code that actually drives the LEDs all happens on an STM32F4 with the help of DMA and FSMC, or the Flexible Static Memory Controller found on the chip. This peripheral takes care of the control lines found in memory, so when you toggle the write strobe the chip will dump whatever is on the data lines to a specific address in memory. It’s a great way to take care of generating a clock signal.

For sending pixels to this display driver, [Frans-Willem] is using the ever-popular TP-Link WR703N. He had originally planned to send all the pixel data over the USB port, but there was too much overhead, a USB 1.1 isn’t fast enough. That was fixed by using the UART on the router with a new driver and a recompiled version of OpenWRT.

All the software to replicate this project is available on Github, and there’s a great video showing what the completed project can do. You can check that out below.

Continue reading “RGB LED Matrices With The STM32 and DMA”

3D Printable LED Diffusors

While you can get an LED matrix in any size or shape, the really cool looking ones that are perfect for low-res displays all have diffusors. When they come from a nameless Chinese factory, these diffusors are thin sheets of plastic set into an extruded plastic frame. Since [Jan] has a 3D printer, he figured a custom diffusor was just a few bits of filament and a SCAD file away.

The basis for this custom LED diffusor was a LoL Shield given to [Jan] by the creator at the recent 31C3 conference. This shield is really only just 126 LEDs, multiplexed and in an Arduino form factor, and that many LEDs were just too bright and indistinct next to each other. The plan for a 3D printed diffusor was hatched.

After taking a few measurements, a pair of OpenSCAD files were whipped up and printed out. Assembly consisted of pressing 126 tiny little white diffusors into a frame, but once everything was attached to the matrix, the results were worth it.

Check out the video below for the before and after, demonstrating what a few bits of plastic can do to a LED matrix.

Continue reading “3D Printable LED Diffusors”