View allAll Photos Tagged Arduino,
Prototype: Electric Light Orchestra
Light-controlled light output
Created in Group Build session of
workshop: "Meet the Arduino Microcontroller"
Museum Computer Network
MCN conference, Atlanta
November 2011
It really does feel to be cutting out this kind of stuff again. Just like back in my studio at Dartington College of Arts.
Sceptre X37SV-Naga (www.sceptre.com/products/lcd/specifications/spec_x37sv-na...) remote is sorta broken, so I used an arduino and an LED I stole off a dead TV's remote and figured out most of the codes:
// 0x10/11 is 1
// 0x810 is 2
// 0x410 is 3
// 0xC10 is 4
// 0x210/211 is 5
// 0xA10 is 6
// 0x610 is 7
// 0xE10 is 8
// 0x110/111 is 9
// 0x910 is 0
// 0x70/71 is MENU
// 0x90/91 is SOURCE PC
// 0x230 is EPG
// 0x290 is Mute
// 0x2D0 is Vol-
// 0x2F0 is CH+
// 0x350/351 is PIP
// 0x430 is CCD
// 0x470 is ASPECT
// 0x5B0 is SLEEP
// 0x6D0 is SOUND
// 0x890 is SOURCE AV
// 0xA90 is POWER
// 0xAF0 is CH-
// 0xB30 is PIP VIDEO SWAP
// 0xB50 is PIP POS
// 0xBB0 is 1 !? or +10
// 0xBD0 is LAST CH
// 0xCD0 is VOLUME+
// 0xC90 is FAVORITE +-
// 0xE90 is PICTURE
// 0xF30 is PIP AUDIO SWAP
// 0xFB0 is PIP SIZE
// no idea if +10 is really functional
// INFO will be hard to find
// EXIT would be trickier to find
// not sure what MTS does
// and ENTER would be trickier too
Basically I used the serial port to increment or decrement the code and counted through all the codes in the 12 bit space writing down what code did what to the TV. Note that all the codes end in 0. Actually, it seemed like 0 or 1 worked interchangeably. After a while I was just incrementing by 0x10 which made zipping through the address space much faster, and I found most of the useful codes fairly easily.
The circuit wasn't even worth documenting, as I literally plugged the LED into pin3 and GND on the arduino. The interactivity was all over the serial port, so no buttons or dials or anything.
Oh, and I used this library:
www.arcfn.com/2009/08/multi-protocol-infrared-remote-libr... and hacked up one of the examples to make it interactive.
Also note that this TV uses Sony IR protocol with the 12 bit codes.
I think I may turn an arduino into a replacement remote control with a web interface (via a Linux box?) I can access from my mobile phone.
UPDATE: I set up an arduino as a relay/translator so that another universal remote speaking more typical sony codes into an IR reciever is then relayed in Sceptre language to the TV via an IR LED. It even does the little PIP dance itself now when you turn it on.
Design Files Here: www.thingiverse.com/thing:565828
Available for purchase here:
builttospecstore.storenvy.com/collections/13701-all-produ...
My setup for Arduino development. Includes an extra max232+Serial2USB adaptor for debugging (no need to quit screen when uploading programs), a serial VFD so I don't have to use screen :p, a Parallax 4x4 Keypad with 74C922 keys encoder, a 595 shift register for outputs and a piexo buzzer for feedback. The RS232 to USB adaptor also has the advantage to work driverlessly on Mac (at least in 10.4.8 and above).
Not to start flame wars, but I sooo prefer designing on Altium over Eagle... Now our new Pick and Place is pretty functional, we're banging out all sorts of prototypes. In this instance, a SMD version of the Ardweeny, which lets you drop an Arduino-compatible into the socket of any standard ATMega168/328 design.