This is an old revision of the document!
How to add a serial port
WARNING: attaching a serial port will certainly void your warranty and could destroy your unit.
- CON4 is the 3.3V TTL serial port
- Connect a level shifter like the MAX 3232
Pinout
- Warning: Do not use 5v signals - you might damage the CPU
- With the power botton facing you and component side up
- Reading left to right
Pin 1 | Pin 2 | Pin 3 | Pin 4 |
---|---|---|---|
3.3V | TX | RX | GND |
Parts Used
- I bought the connectors from Digikey
- Digikey WM1722-ND female housing and WM1775-ND pins
- Digikey MAX3232ECPE+-ND 16 pin dip part (note the odd +-ND suffix is correct)
Terminology
- TX is the outgoing 3.3 volt CMOS signal FROM the Marvell 88F5181 ARM CPU
- RX is the ingoing signal TO the CPU.
Data Rate
- Baud rate is 115200 baud - 8 bits, no parity and no flow control.
Breaking into a shell
- Magic code to break into shell is 5784468 followed by the enter key
- I looked at the ash.c source - see busybox-1.00-pre1/shell/ash.c - Look for is_interactive
U-BOOT
- See U-BOOT Monitor
Using the Futurlec board
Futurlec makes a board at http://www.futurlec.com/Mini_RS232_TTL_3V.shtml that can be used to perform the level conversion. This is one way to go. It can even be mounted in the center brace. Here is one way to go, if you really want a serial port. Note that the Futurlec board was shipped from Thailand for me and took about 4 weeks to get to me via post, so you may want to pick a more expedient shipping method.
- Get the following items from Digi-Key (http://www.digikey.com):
- WM1722-ND Conn Housing 4Pos 1.25MM. I'd get a few, in case you mess up.
- DM1775-ND Conn Term Female 28-32AWG Tin. You need a few of these, I'd get plenty to mess up with. It's hard to get those connectors on right.
- 621K-ND Bracket RT Ang Mont 4-40 Steel. This is used to mount the Futurlec board to the brace.
- H342-ND Screw Machine Phillips 4-40×1/4. Screws for attaching the thing, these go into the angle bracket.
- 3157K-ND Washer Flat #4 .120x.312 Nylon. Insulated washers are a good idea against the circuit board.
Some of them have large minimum orders, like 100, but the whole thing cost me $16.42 with shipping. You will also need:
- 30AWG wire. This is a lot easier to get into the connectors than standard wire.
- External 2 USB plate. These should be easy to find at a computer store. You want one that has the 4-connector flat connectors that plug into a motherboard. The connector should have a square location that you can use to press to remove the pins from the connector. These will plug into the Futurlec board.
- RJ45 female connector that will hook onto the panel. I'm not sure what these are called, but I had some so I used them. Note that you can use an RJ11 or RJ12, if you like, but you need to buy everything else accordingly. The RJ11 might be better; I can't close the front with the RJ45.
- Flat cable, 4, 6, or 8 conductor depending on which connector you choose, with the proper RJxx male connectors on each end.
- A RJxx to 9-pin connector. You can find these at some computer stores. Fry's and Microcenter both have them.
- Some shrink-wrap.
The procedure:
- Cut the cables from each USB connect so you are left with the 4-pin flat connector and a length of wire. Cut the cable back
some and strip the wires.
- Cut 4 small lengths of the 30AWG wire, strip one end of each and solder each of them on to the wires from one of the former USB cables.
- Shrink-wrap the solder joints to avoid shorts.
- Strip the other end of the 30AWG wire very short, perhaps 1mm.
- Crimp a DM1775-ND onto each of the 30AWG wires. This is rather hard and detailed, make sure they are compact so they will go into the connector. Note that the 30AWG wire will not take being bent over and over, so take care especially when plugging it in.
- You need to make sure you get the wiring right. These all go to the 6-pin connector on the Futurlec board. The TX from the DNS-323 (pin2) goes to TX, RX to RX, +3V to +3V, and GND to GND. Note that you will need to remove the GND wire from the 4-pin connector and put it on the GND pin (see pictures). The 4-pin connector will hang off the end a little.
- Take the other former USB connector, and strip back the outer shield. Do not strip the wires. Instead, they will be pressed into the RJxx female connector.
- You need to spend some time and figure out all the wiring. Then you can press the wires into the RJxx connector in the proper locations so they will match up with the output of the Futurlec board.
- Ohm-out the cables to check for shorts and connectivity. This is important. Double-check your wiring.
- Build the RJxx cable and converter to 9-pin. Again, wiring planning is a little tricky.
- Now plug everything in and test it. Make sure to not put the board onto a metal surface.
- It should work. If not, check wiring. Note that I had one unit that I burned the TX line on due to a short. So be careful and test the cables.
- On the front plate, measure where the RJxx connector will go and use a chisel to break out a section. This is rather hard. I used a chisel, drilled some holes, and inserted a coping saw, and sawed around where the chisel made the impression. Note that the panel is aluminum, so it is very easy to bend. So be careful.
- Drill holes in the front plate for the board to mount. Make sure there is room for it and the RJ45 and that it won't interfere with internal components. The spacing is a little tight, so measure.
- Put the RJxx connector through, and mount the board. When mounting, use the nylon washers on both sides of the circuit board. Put it all back together and test again.
Here's two pictures of the panel
Here's a picture of the inside. Note that I have way too much wire, so don't do that :)