Fubarino Contest: Serial Data Transmission


[Jesus] is helping his cousin learn about microcontrollers. Right now they’re on the subject of serial communications, which turned into a nice way to add a Hackaday Easter Egg.

Using and FTDI chip in conjunction with the PIC 18F4550 (it’s a little soon for them to tackle implementing USB directly) the serial data is shown in a terminal window. At the same time the binary value of each byte is flashed on the PORTD LEDs. When the chip receives the characters “hack” it immediately echos back the recommendation to check out the awesomeness that is Hackaday. He posted the code used in this example as a Gist.

This is an entry in the Fubarino Contest for a chance at one of the 20 Fubarino SD boards which Microchip has put up as prizes!

Continue reading “Fubarino Contest: Serial Data Transmission”

Serializing Dickens to LEDs


[ch00f] managed to capture some holiday spirit this year by translating all of A Christmas Carol to scrolling text. Dickens’s work has long since entered public domain, which led [ch00f] to wire up a GeekCatch programmable display from Amazon. It has a low refresh rate, which means videos look a bit goofy, but it’s perfectly acceptable for text. [ch00f] ditched the remote control and instead used the display’s serial connection to program in the novella. Unfortunately, he could not find any documentation for the serial protocol, but he was able to reverse engineer it with some freeware applications found online.

It takes over six hours for the sign to spit out the entirety of A Christmas Carol, which easily surpassed the display’s limited text buffer. [ch00f] instead had to send text to the display one paragraph at a time via a custom Python script. This solution takes advantage of the sign’s fixed-width font to estimate the time it takes for each character to scroll by, then immediately feeds the sign a new line.

Check out the blog post for a quick teardown of the display itself and for a detailed description of the protocol in case you decide to use this display for a project. Stick around for a video below!

Continue reading “Serializing Dickens to LEDs”

Hacking Digital Scales for the Disabled


[Jan] works with both physically and mentally disabled individuals, some of whom cannot read, making many of their tasks more difficult. Although [Jan] is not in a position to teach reading or writing skills, he was able to build an add-on device for the scales used in repackaging sweets to provide simple feedback that the user can interpret.

The device has three LEDs—red, green, and yellow—to indicate the package does not weigh enough (red), weighs too much (yellow), or lies within an acceptable range (green). The industrial scales at [Jan’s] workplace each have a serial output to connect to a printer, which he used to send data to the device. An ATMega8 controls the lights and an attached LCD, with the usual trimpot to change the display’s contrast and a rotary encoder to adjust the device’s settings. Everything fits snugly into a custom-made frosted acrylic enclosure, laser-cut at a local hackerspace.

[Jan] provides a rigorous guide to approaching each step on his Instructables page, along with source code and several pictures. See a video overview below, then enjoy another scale hack: building one from scratch.

Continue reading “Hacking Digital Scales for the Disabled”

Serial USB for Any AVR Microcontroller

If you’re using an AVR microcontroller and you’d like to add USB to a project, there are a lot of options out there for you. Both LUFA and V-USB add some USB functionality to just about every AVR micro, but if you’d like a native serial port, your only options are to look towards the USB-compatible Atmel micros.

[Ray] looked at the options for adding a USB serial port and didn’t like what he saw; seemingly, this was an impossible task without a second, more capable microcontroller. Then he had an idea: if the goal is only to transfer data back and forth between a computer and a microcontroller, why not write an HID-class USB serial port?

[Ray] based his project on The V-USB library and created a new HID descriptor to transfer data between a micro and a computer. While it won’t work with a proper terminal such as Putty, [Ray] managed to whip up a serial monitor program in Processing that’s compatible with Windows, Linux and OS X.

In the video below, you can see [Ray] using an ATmega328p with a standard V-USB setup. He’s transferring analog values from a photoresistor as a proof of concept, but just about everything that would work with a normal serial port will work with [Ray]’s library.

Continue reading “Serial USB for Any AVR Microcontroller”

JTAGulator Finds Debug Interfaces


[Joe Grand] has come up with a tool which we think will be useful to anyone trying to hack a physical device: The JTAGulator. We touched on the JTAGulator briefly during our DEF CON coverage, but it really deserves a more in-depth feature. The JTAGulator is a way to discover On Chip Debug (OCD) interfaces on unfamiliar hardware.

Open any cell phone, router, or just about any moderately complex device today, and you’ll find test points. Quite often at least a few of these test points are the common JTAG / IEEE 1149.1 interface.

JTAG interfaces have 5 basic pins: TDI (Test Data In), TDO (Test Data Out), TCK (Test Clock), and TMS (Test Mode Select), /TRST (Test Reset) (optional).

If you’re looking at a PCB with many test points, which ones are the JTAG pins? Also which test points are which signals? Sometimes the PCB manufacturer will give clues on the silk screen. Other times you’re on your own. [Joe] designed the JTAGulator to help find these pins.

Continue reading “JTAGulator Finds Debug Interfaces”

Fail of the Week: Capturing Data from a Laser Rangefinder


We’re changing it up this week with a reverse engineering fail which [Itay] pointed out to us. A couple of years ago [Nate] over at Sparkfun agreed to help a friend with a project that required precise distance measurement. He knew that laser rangefinders are a good way to go and mentions their use in golfing and the building trades. He picked up this handheld version billed as a laser tape measure. He put up a valiant effort to reverse engineer the PCB in hopes of finding a hook for the measurement data.

Obviously his endeavor failed or we wouldn’t be talking about it in this column. But there’s a lot to learn about his methods, and a few of the comments associated with his original post help to shed light on a couple of extra things to try.

Continue reading “Fail of the Week: Capturing Data from a Laser Rangefinder”

Change the TV channel over IP


[Mustafa Dur] wrote in to tell us about his hack to control the television with a smartphone. Now the one-IR-remote-to-rule-them hacks have been gaining popularity lately so we assumed that’s how he was doing it. We were wrong. He’s using his satellite receiver to provide the Internet connection. It pushes commands to his LG 47LH50 TV which has an RS-232 port.

The image above is the back of another LG television (it came from a forum post about controlling the TV with a PC). [Mustafa] is using a Dreambox DM800 satellite receiver which also has a serial port an he can telnet into it. He searched around the Internet and discovered that it should be possible to connect the two using a null modem cable. His initial tests resulted in no response, but a tweak to the com port settings of the box got his first command to shut off the television. After a bit of tweaking he was able to lock in reliable communications which he made persistent by writing his own startup script. From there he got to work on a Python script which works as the backend for a web-based control interface.

If you want to find out what else you can do with this type of serial connection read about this hack which used a script to try every possible command combination.