Archive for the ‘reverse engineering’ Category

Enabling F-bus communications with Arduino

Saturday, January 19th, 2013

It’s always nice to see how creative makers approach communication issues in DIY projects, and today we would like to highlight the approach followed by Alex, from InsideGadgets.

On his website, he provides a detailed tutorial on how to use an old Nokia 6110 (or any derivatives) to send SMS messages by exploiting the Nokia’s F-bus, a simple bi-directional and full-duplex serial protocol.

After considerable reverse engineering work, made possible by useful online documentation, Alex finally managed to send a SMS from his Arduino board, connected to the phone, thanks to AVR libraries made available by AVRFreaks.

More information can be found on InsideGadget.

[Via: Inside Gadgets]

An Arduino-based ADB-to-USB adapter for NeXT keyboards

Thursday, January 10th, 2013

Have you ever wondered to use your old-fashioned NeXT keyboard with your current, non-ADB computer? The main issue that needs to be solved regards how to interface this ADB keyboard (standing for Apple Desktop Bus, an old protocol used in former NeXT and Apple computers) with a standard USB interface.

In this nice tutorial, Ladyada and Pt describe the approach they have used, based on an Arduino Micro board and… some luck in searching for the right information about the scancode table of the keyboard  ^^.

More information can be found here.

[Via: Adafruit Learning System]

 

Hacking Christmas Lights

Friday, December 10th, 2010

We are all waiting for consumer electronics producers to sell hacking-friendly, repairable products.

While we wait we can all enjoy [Darco] Christmas Lights Hack. He reverse engineered the leds protocol and the remote control of the GE Color Effects G-35.

The protocol on the data line is simple and self-clocked. Here are the low-level details:

  • Idle bus state: Low
  • Start Bit: High for 10µSeconds
  • 0 Bit: Low for 10µSeconds, High for 20µSeconds
  • 1 Bit: Low for 20µSeconds, High for 10µSeconds
  • Minimum quiet-time between frames: 30µSeconds

Each frame is 26 bits long and has the following format:

  • Start bit
  • 6-Bit Bulb Address, MSB first
  • 8-Bit Brightness, MSB first
  • 4-Bit Blue, MSB first
  • 4-Bit Green, MSB first
  • 4-Bit Red, MSB first

From this we can see that we have a color depth of 12 bits. Not terribly great, but this should still be plenty for our purposes. What is interesting is the Brightness field. This field acts a bit like a multiplier and enables smooth fade-ins and fade-outs.

Merry Hacking Christmas!

via [Deep Darc] code [Here]