In part 1 of our iPod super dock how-to, we created a new mount for the iPod dock connector on a printed circuit board using EAGLE. Now that we have the connector layout in EAGLE, we'll design the schematic for our custom iPod accessory. Read on for part 2 of Design your own super dock! If you're an iPod owner you'll be glad you did, this thing does it all, and we're almost there!
We've updated the the EAGLE library we provided last time, so grab the latest one. Download it and save it to the lbr directory under EAGLE's main program directory.
When you start up EAGLE, it should appear under Libraries. If you can see it there, you're good to go.
Create a new project from the File menu. This makes a new folder for the project to help keep things organized. The folder will show up under Projects in the control panel. Rename the new folder.
Select your iPod dock project folder, right click and select New > Schematic. A new schematic window will appear. It's untitled, but associated with the project we created. You'll get a chance to name it when you save the schematic.
Click on the Add button that looks like a logic gate with an arrow.
In the add window, scroll down to the ipod_con library and expand it. Select the IPOD-DOCK-CONNECTOR that we created in part 1 and click OK.
When you hit OK and the outline of the schematic will appear. Mouse over to a convenient area, like the right side and click once on the schematic. The connector will now appear with labeled pins galore.
The Kobiconn RCA connectors we purchased from Mouser aren't in the standard EAGLE libraries. Fortunately, there are a few RCA style connectors. To make your life a bit easier, we created the missing parts and added them to our iPod connector library.
For the iPod connector, we built the EAGLE parts from scratch. By using the search feature in EAGLE we found a couple of existing RCA connectors and copied the package and schematic of the WB0R1. By setting the grid to 0.01 inches we were able to quickly modify the package outline, pads and drill holes to match our parts. We printed the layout and compared our parts to the print. We then tweaked it until the layouts matched up nicely. Your success may vary, but using this method we managed created the correct patterns within three or four iterations for both parts.
Adding audio and video to the schematic goes very quickly. Add two of the single RCA connectors and one triple RCA from the latest ipod_con library. We named the single RCAs R.Audio-in and L.Audio-in. The triple connector will provide audio and video out. Use the Net tool (not the misleadingly named 'wire' tool) to connect the pins of the RCAs to the iPod pins.
We love that EAGLE runs on Mac OS, Linux and Windows, but it's not perfect. Our biggest frustration occurs when the wires just don't connect to the pins. To fix the problems, we use the arrow tool and grab the part in question and pull it to the side. If there's a broken connection, placing the objects pin back over the unconnected wire will usually take care of it.
Fortunately for us, a USB connector similar to ours exists in the EAGLE libraries. Use the add tool and select the PN61729 USB connector in the con-berg library. Place it on the schematic and rotate it so the pins can be connected easier.
The pinout shown above is from the USB page at pinouts.ru. With this, we can wire up our USB connector to the iPod connector.
With the pinout, wiring up the connector is trivial. Just use the net tool and connect the pins.
There's also a similar FireWire connector to the Molex one we ordered. It's not in the Molex library though, it's in the con-cypressindustries library. Go ahead and add this connector to your schematic.
The FireWire page at pinouts.ru gives us this. Again, we just match up the pins to the iPod connector.
Wire up the FireWire connector using the net tool. Don't forget to connect both power and both ground pins.
The iPod serial port is designed to talk to TTL devices like microcontrollers. We want to access it with a standard PC RS-232 serial port. To translate TTL to RS-232 we'll use the ever handy Dallas Semiconductor Max 232 family. The Max-232 works great and uses just a few external capacitors as charge pumps.
This TTL to serial converter circuit from ipodlinux.org shows a standard MAX232 based circuit. Just ignore the pin numbers on the iPod side. Those are for the accessory serial port next to the headphone jack. For our dock connector, we'll connect:
- pin 10 on the MAX232 to pin 12 of the iPod
- pin 9 of the MAX232 to pin 13 of the iPod
- pin 16 of the MAX232 to pin 18 of the iPod
Use the add tool and type in MAX232 in the search box. The capacitors don't really need to be polarized, so we didn't worry about it.
You might notice the lack of power pins on the MAX232. EAGLE places these separately. Click the invoke button, and then click the MAX232.
Select the VCC-GND option, hit OK. Now you can place the pins in a convenient location.
Wire up the power to the iPod dock connector. If you pay attention, you'll see a wiring mistake in this picture that we had to fix.
We're almost done. Just the DB9 connector and the serial enable resistor.
A search for D finds a suitable Sub-D 9 pin connector in the library.
Now we wire up pins 2, 3 and 5 to the MAX232 per the wiring diagram.
The last bit of wiring is a 500K Ohm resistor. First we pick one with a suitable package design.
Then wire up the resistor between the serial enable and the ground at pin 1. The value of the resistor tells the iPod what sort of accessory is connected.
If you're not interested in playing with the iPod using the serial port of a computer, you might want to replace the max-232 circuit with one like the iPod to T&A Remote adapter. It uses a PIC micro-controller to send serial commands to the ipod. The PIC programming (and circuit) could be adapted to add things like hard buttons to the dock, your own infrared remote or an external text display showing the current song.
Finally! Our schematic is finished. Next we'll be fixing any problems, creating the board and building our own super dock. Stay tuned!