1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Electronics Hacked a Touchpad + VFD with AVR

Discussion in 'Modding' started by agent420, 1 May 2006.

  1. agent420

    agent420 New Member

    Joined:
    18 Apr 2006
    Posts:
    227
    Likes Received:
    0
    Got a couple of additions to the junk inventory this weekend, a dead Dell Insprion 1100 and a defunct HP Laserjet 4. The touchpad in the laptop and the VFD board in the printer caught my eye, so I decided to see if I could get them to be friends...

    [​IMG]

    The only chip I'm using on the breadboard is the Atmel AVR microcontroller in the center, the rest of the parts are leftover from testing my stepper driven Etch-A-Sketch project.

    Turns out that most Synaptic Touchpads used in laptops communicate via the standard PS2 protocol, using the same wiring scheme as a conventional mouse and keyboard. The pad could probably be wired to a pc and operate as a mouse without any special drivers. But as PS2 is not a common protocol used in microcontroller applications, I had to write my own interface code for the Atmel 8535 AVR I planned on using. Fortunately, the PS2 protocol is not that complex, and references describing it are easily located on the net. Synaptics also has a very good interfacing document available for download that details the electrical interface and the commands used to control the device.

    Here's the connections on the back of the touchpad (pins function in pairs)...
    Note that other models may have a different pinout (see guide).
    [​IMG]

    The VFD control panel turned out to be a bit more elusive, but after some detective work with a multimeter and the datasheets from the chips on the board I was able to determine how it operates. It's actually a great little board with a nice 16 char VFD, 3 programmable leds and 8 buttons - it makes a great testbed tool and requires only a single +5V supply. The VFD is also a nice change from boring everyday lcd displays (it's the tubes, man :D ).

    Here's the VFD board displaying the coordinates of the touchpad:
    [​IMG]

    While working on this project I wondered if I could get the pad to operate like a qWheel type of device, like used on the iPods. Well,a little bit of geometry math coding later and tada, rotary encoder emulation.

    Here's the VFD displaying a bargraph indicating input from circular motion on the pad:
    [​IMG]

    This feature and the ability to devide the pad into multiple zones makes it a great input device for projects. Uses can be fan speed controllers, light dimmers, etc.; the possibilities are endless!

    It turns out that the touchpads and this model VFD board are available and inexpensive in the surplus market or eBay, making them great experimenter devices. Unfortunately, neither will natively hook to a pc through parallel or serial interfaces, so a microcontroller has to be used. However, if the interest level in a project using these is there, I might design and offer inexpensive interface boards that would translate the PS2 to RS232 or similar.

    Here are some resources I used for this project, as well as the source code I wrote that is well commented and contains additional technical information:

    Synaptics Developer Resources - Interfacing Guide available here
    Mitsubishi M66004M VFD datasheet (pdf)
    PS2 protocol
    My source code

    edit - updated dead Synaptics link

    edit 2 - made Hack-A-Day ;)
     
    Last edited: 21 Jul 2009
  2. bender386

    bender386 New Member

    Joined:
    5 Jan 2006
    Posts:
    475
    Likes Received:
    0
    wow that realy cool.
    are you thinking of putting the touch pannel in a computer case. would look real nice.
    and i love vacume displays that look so much more "high tech" than lcd's
     
  3. BlackScorpion

    BlackScorpion New Member

    Joined:
    15 Apr 2006
    Posts:
    10
    Likes Received:
    0
    sweet job!
     
  4. GuardianStorm

    GuardianStorm Active Member

    Joined:
    26 Apr 2005
    Posts:
    1,475
    Likes Received:
    1
    agreed, nice work :)
     
  5. agent420

    agent420 New Member

    Joined:
    18 Apr 2006
    Posts:
    227
    Likes Received:
    0
    Thanks :D

    Yeah, mounting the pad in a drive bay or similar and using it to control lights and fans is one of the several potential applications I've considered. Pad input would determine multiple channel pwm output from the AVR. In this case, I was thinking of having the four corners of the pad as button type selection zones to choose the device to control, with the center area of the pad emulating a qWheel or qSlide for analog style input.
     
  6. ch424

    ch424 Design Warrior

    Joined:
    26 May 2004
    Posts:
    3,112
    Likes Received:
    41
    That's awesome, thanks for documenting it so well! Have you considered using a 20x4 LCD instead, to get more characters?

    With that inspiration, I'm going to IT right now to see if they have any "dead" laptops spare... :dremel:

    ch424
     
  7. Spoon

    Spoon New Member

    Joined:
    1 May 2006
    Posts:
    3
    Likes Received:
    0
    Awesome work, I love microcontrollers.
    I was thinking; how about hooking the trackpad to your stepper controlled ecth-a-sketch? Might be cool!
     
  8. agent420

    agent420 New Member

    Joined:
    18 Apr 2006
    Posts:
    227
    Likes Received:
    0
    I typically do use multi-line lcd's in my projects, especially during design and debugging to allow as many variables and pin states as possible (not that I ever make design or code mistakes :hehe: ) However, I used the VFD board here for the challenge of figuring out how it worked, as well as aesthetic value. Actually, the buttons on the control panel were very helpful; if you look at the code you can see that several buttons select the different information to display, so I could cycle between screens based on what I was testing.

    [edit]

    btw, I note that there are several of these boards (ans similar ones) on eBay
     
    Last edited: 1 May 2006
  9. agent420

    agent420 New Member

    Joined:
    18 Apr 2006
    Posts:
    227
    Likes Received:
    0
    Funny you should mention that... The last test of the Etch-A-Sketch used hacked ball mouse to draw. Before I coded the PS2 interface I just hooked into the optical encoders on the mouse board and used that data to move the steppers. Worked very well. Probably better than PS2 because I wasn't limited to the PS2 sample rate and could go as fast as the hardware permitted, also no overhead of command bytes or other header data.

    The long term plan is to take a scanned image on pc and replicate it on the Etch-A-Sketch, but I've been slacking recently (too much time jamming with the garage band :D )

    [edit]

    btw, the EAS toys they sell today (made in China) really are shoddy compared to the US made ones I remember as a kid... I'll probably have to open it up and redo the string cable inside, it keeps 'twanging' and getting hung up. Every unit I tried in the store was the same way...
     
    Last edited: 1 May 2006
  10. ch424

    ch424 Design Warrior

    Joined:
    26 May 2004
    Posts:
    3,112
    Likes Received:
    41
    Ah, I see.

    IT didn't have any laptops :( Well, they had two iBooks, but the touchpad's weren't PS/2.

    ch424
     
  11. agent420

    agent420 New Member

    Joined:
    18 Apr 2006
    Posts:
    227
    Likes Received:
    0
    You could probably use any of the protocols, but might need to write your own interface code. RS232 or TTL would be even easier that what I have done here, but I'm guessing that the ones you have access to are Apple ADB, of which I have absoluetly no experience with.

    ' The 5th character in the model number indicates the interface used.
    ' P=PS2, S=RS232, B=PS2+RS232, T=TTL and A=Apple ADB.

    Worst case scenario is to get one from a surplus shop or eBay. They're pretty cheap (well, most of them).
     
  12. jpaturzo

    jpaturzo New Member

    Joined:
    25 Mar 2005
    Posts:
    18
    Likes Received:
    0
    that was truly excellent, thank you. You've got some synapses firing in my head, the touch pad to microcontroller bit is going to be quite useful.
     
  13. squallrar

    squallrar New Member

    Joined:
    16 May 2012
    Posts:
    1
    Likes Received:
    0
    hello there, can u upload the picture once again? i want to know how you connected the touchpad to uc for my final project, thx before
     
  14. GeorgeK

    GeorgeK Swinging the banhammer Super Moderator

    Joined:
    18 Sep 2010
    Posts:
    8,158
    Likes Received:
    351
    You may struggle as this thread is over 6 years old and the OP was last online in July 2009...
     

Share This Page