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”

Making Something Useful With The ESP8266

The ESP8266 is the latest and greatest way to get a project connected to the Internet, but so far we haven’t seen many projects that actually do something with this very cool chip. Yes, there are a few people pinging away with AT commands, and there is a thriving community building interpreters and flashing new code on this chip, but not much in the way of actual projects. [Martin] is the exception. He’s come up with two projects that use the ESP8266.

The first project is one that puts the readings from a DHT22 temperature/humidity sensor up on the Internet. Following the spirit of all the recent development of the ESP8266, [Martin] isn’t using an external microcontroller. Instead, he’s using the SDK to run an HTTP daemon using [Sprite_TM]’s code. This web server provides an interface to turn an LED on and off, and reports the temperature and humidity readings from the DHT22. It’s simple, but it’s easy to see how this tiny chip could become the basis for a smart thermostat.

If lighting up LEDs isn’t enough, [Martin] has another project that includes three solid state relays. This one is a bit more complex with MQTT support, a fancy jQuery interface, and support for network time. [Martin] isn’t quite ready to publish the complete code for this project, but that’s only because there are a few features he’d like to implement before making it public. These include dynamic DNS, scheduling functionality, and support for an I2C status display. Even without these fancy features, it’s still a great project that’s still extremely capable for an Internet of Things thing. You can check out [Martin]’s video demo of this board below.

Continue reading “Making Something Useful With The ESP8266”

3D Printing RC Airplanes that Fly: An Engineer’s Chronicle

In the past, creating accurate replicas of models and fantasy objects was a task left to the most talented of cosplayers. These props need not be functional, though. [Steve Johnstone] takes replica model-building to the next step. He’s designing and building a model airplane that flies, and he’s documenting every step of the way.

Armed with a variety of 3D printing techniques and years of model-building experience, [Steve] is taking the lid off a number of previously undocumented techniques, many of which are especially relevant to the model-builder equipped with a 3D printer in the workshop.

As he continues his video log, [Steve] takes you through each detail, evaluating the quality of both his tools and techniques. How does a Makerbot, a Formlabs, and a Shapeways print stand up against being used in the target application? [Steve] evaluates a number of his turbine prints with a rigorous variable-controlled test setup.

How can we predict the plane’s center-of-gravity before committing to a physical design? [Steve] discusses related design decisions with an in-depth exploration of his CAD design, modeled down to the battery-pack wires. Though he’s not entirely finished, [Steve’s] work serves as a great chance to “dive into the mind of the engineer,” a rare opportunity when we usually discover a project after it’s been sealed from the outside.

3D printing functional parts with hobbyist-grade printers is still a rare sight, though we’ve seen a few pleasant and surprisingly practical components. With some tips from [Steve], we may complete this video journey with a few techniques that bump us out of the “novelty” realm and into a space where we too can start reliably printing functional parts. We’re looking forward to seeing the maiden voyage.

Continue reading “3D Printing RC Airplanes that Fly: An Engineer’s Chronicle”

A Better Way To Hack The Wink

If you’re looking for Home Automation appliances, you might want to check out the Wink Hub. It’s fifty bucks, and has six radios on board: WiFi, Bluetooth, Z-Wave, Zigbee, and 433MHz Lutron and Kidde. That’s an insane amount of connectivity in a very cheap package. It’s been pwnzor3d before, but dinnovative has a much better solution for getting root on this device.

Earlier methods of rooting the Wink involved passing commands via URLs – something that’s not exactly secure. The new method leverages what’s already installed on the Wink, specifically Dropbear, to generate public keys on the Wink hub and getting that key onto another computer securely. The complete exploit is just a few lines in a terminal, but once that’s done you’ll have a rooted Wink hub.

Even though the Wink hub has been rooted a few times before, we haven’t seen anything that leverages the capabilities of this hardware. There isn’t another device with a bunch of IoT radios on the market for $50, and we’re dying to see what people can come up with. If you’ve done something with your Wink, send it in on the tip line.

Breathe New Life Into Payphones with Asterisk

Payphones used to be found on just about every street corner. They were a convenience, now replaced by the ubiquitous mobile phone. These machines were the stomping grounds for many early computer hackers, and as a result hold a place in hacker history. If you’ve ever wanted to re-live the good ol’ days, [hharte’s] project might be for you.

[hharte] has been working to make these old payphones useful again with some custom hardware and software. The project intends to be an interface between a payphone and an Asterisk PBX system. On the hardware side, the controller board is capable of switching various high voltage signals required for coin-line signaling. The controller uses a Teensy microcontroller to detect the hook status as well as to control the relays. The current firmware features are very basic, but functional.

[hharte] also wrote a custom AGI script for Asterisk. This script allows Asterisk to detect the 1700hz and 2200hz tones transmitted when coins are placed into the machine. The script is also in an early stage, but it will prompt for money and then place the call once 25 cents has been deposited. All of the schematics and code can be found on the project’s github page.

[Thanks mies]

Wait, a 3D Printed Lawn mower?

Well, we have to admit, we never saw this coming… A 3D printed lawn mower? What? Why? Huh? How? Those were at least a few of the thoughts running through our head when we saw this come in on the tips line.

[Hans Fouche] has a giant 3D printer that takes up most of the space in his garage, and after printing several large vases, a briefcase, bowls, and even a wind turbine blade — he decided to try printing a lawnmower. A freaking lawnmower.

To do so, he reverse engineered his old rusty lawn mower, and redesigned it to be printable. Apart from the steel axles, some fastening hardware, and of course the motor and blade, the entire thing is 3D printed. And it looks like it works pretty good too.

Continue reading “Wait, a 3D Printed Lawn mower?”

Resourceful CNC Router Built From Hardware Store Parts

[siemen] has entered the wonderful world of Hobby CNC with his low-buck build of this gantry-style router. It embodies everything we here at HaD love: resourcefulness, perseverance and results. [siemen] has designed his frame using ideas he has found while surfing around the ‘net and is made entirely out of particle board. For linear movement, the Y and Z axes rely on ball bearing drawer slides while the X axis use a pipe and skate bearing arrangement. NEMA 17 stepper motors coupled to threaded rod move each axis.

The electronics are packaged in a nice little project box which houses an Arduino and 3 Sparkfun EasyStepper stepper motor drivers. [siemen] also cut a hole in the project box and installed a fan in order to keep those motor drivers cool. The Arduino is flashed with the CNC machine controller called GRBL. GRBL takes g-code sent from a PC to the Arduino and then in turn sends the required step and direction signals to the stepper motor drivers.

Overall, [siemen] did a great job with his first CNC project which came in at 200 Euro ($240). He’s currently working on version 2 and we are looking forward to covering it when it’s done. If you dig this project, you may also like this wooden wood router or this bolt-together one.

Continue reading “Resourceful CNC Router Built From Hardware Store Parts”