This part is about the internals of the 2010 model “Big Trak”. I intend to use this toy as a base for my raspberry Pi powered vehicle. In part 1 of this series I covered the basic idea of my “Pi-Hicle” and recreated the Big Trak logic in Python. Part 2 was about displaying the programmed path on a display. Now I am lucky, because the “best girlfriend ever” gave me a real 2010 Big Trak for christmas. She even made a label, reading “Present for disassembly”. So I am doing nothing wrong here…
There are numerous resources out there about disassembling the Big Trak models, so I won’t cover this. Locate the screws and pay attention for those hidden under the grey rear bumper, then lift the top carefully and continue. David Cook from “The Robotroom” (www.robotroom.com) has extensive material about the original 198x Big Trak. For the new series of Big Traks you can find modding instructions with lots of pictures at srimech’s blog and some analysis of the circuits at the “Singleton Miller Wiki“. I am going to concentrate on my additional findings in this blog post. Nevertheless, here’s a quick overview where the screws are located. Blue arrows are “visible” screws, the red arrows point to where the additional screws are hidden under the bumper thingie:
After disassembling my Big Trak (for the first time) I realized that it is just too cool to be modified completely. So my focus for my Pi-Hicle will be on how to modify/enhance the Big Trak in a fashion that is reversible and not too invasive. Eventually I will need to drill some holes in it to put sensors in, but overall I won’t destroy anything.
Somewhere on the Sparkfun forums I read a post about the Big Trak keypad where people assumed that it is no simple matrix, but only works with some sort of signal applied to it. I did not bookmark the entry, because (as far as I remember) the topic quickly got highjacked by some people who wanted to know something completely unrelated to the Big Trak.
So my first action was to remove the keypad and have a closer look at it. The keypad is not soldered to the PCB, it is simply held by a plastic part that applies some pressure on the foil contacts and the PCB. You will need to completely unscrew and remove the plastic part before removing the keypad connector. Before the keypad can be peeled of, the grey frame on the top of the Big Trak needs to be removed. Just unclip it from the back and it comes of. The plastic clips are sort of “self securing” and may be hard to bend. I decided to cut a piece out of them so that they can be moved/bent more easily. This can be done with a carpenters knife or scalpell with the frame still clipped into place.
After the frame is removed, run the flat keypad connector through the opening and gently peel the complete keypad off. It is secured by double sided adhesive tape and should come off easily.
Fortunately the keypad in fact is a simple matrix type, although it is not too easy to see how it it is routed. Take a look at the back of the keypad:
I decided to make a drawing of the routing and, using this drawing, check which connector/wire goes to which contact.
Sidenote: if you rely on your multimeter beeping (and do not look at it) when there is a connection make sure it does not have a standby mode after some time. More than once I pressed buttons like a maniac and did not hear a beep…
It turns out that there is no (at least to me) visible system, but I managed to work out all the connections. They are shown in the next picture. The notation is “top_contact_number – bottom_contact_number”. (Click image to view a bigger version for better readability)
It turns out this is routed as a 6×4 matrix, using 23 keys. Connecting this to a Raspberry Pi or Arduino would use 10 IO pins, which is pretty much (and one would need to write a decoding routine). There are numerous matrix decoder/encoder chips out there, most of which will only work with up to16 or 20 keys (or a 5×5 matrix). The only two circuits I know that will work with bigger matrices are the Analog Devices ADP5585 or the e-lab EDE1188. The ADP5585 uses an I2C interface, the EDE1188 can work in parallel mode (7 pins needed) or with RS232 (TTL level).
So reusing the keypad with my own system may result in more designing and testing than I had anticipated. Perhaps I need to discard this idea and go with my touchscreen as I had intended in the first place. I then need a method to mount the touchscreen in a way that allows it to be replaced with the original keypad at any time (or i get another Big Trak…).
The most annoying thing with the 2010 Big Trak is that the PCB is directly soldered to the motors. Or, more exactly, to two PCB pieces that are mounted on the motors. However, with the gearbox removed it is possible to unsolder these 4 connections. To do so apply the soldering iron to one connection until the solder melts and then just shake the solder off with a fast flip of the complete gearbox. Do this for one connection at a time. The back of the PCB reveals the transistors of the h-bridge circuit and two pairs of infrared emitters and receivers that are used for calculating the distance. These two sensors go into the gearbox, the second gear wheel (left and right) has slits in it, so the CPU just counts the impulses to calculate the distance.
It may be possible to calculate the speed with this sensor arrangement, as the moving gear wheel will result in a rectangular pulse with its frequency being proportional to the speed of the wheel. I have no idea whether the Big Trak actually does compute the speed.
At first I thought the sensor would be a single part. On closer inspection it turns out the plastic housing consists of two parts that can be pulled of easily. Upon pulling them apart the PCB reveals a (nicely labelled) infrared diode and an infrared phototransistor. So in fact the housing just makes sure the diode and the transistor are correctly placed in the gearbox. Excellent, as this makes it easy to use my own system and reuse the plastic parts for correct positioning.
My plan is to modify the Big Trak in the least destructive way (it is just too cool to do something irreversible to it). So I drew an image of the PCB with all screw and mounting holes on it. I will try and design my own PCB to put on the gearbox. Just thinking about a way to have the connections to the motors pluggable…
And this concludes the third part. The design decision I need to make for the next steps are:
- program a “soft start/stop” motor control (this will need 4 PWM outputs)
- come up with an idea to mount my touch screen without destroying the keypad or the top of the Big Trak
- design a PCB that goes in place of the original one
- evaluate which sensors I need and where to put them
This is continued in Part 4.