As with many projects, my simple stepper timer, Deco Time, has some serious feature creep. The latest feature I decided to add is an expansion port. Originally I just planed on adding two screws on the back that attached to an GPIO pin and ground so I could trigger other events when the alarm went off. As I progressed I started to think of other things I could add, for example a thermometer, a second display, more buttons, or lights. So I thought it would be nice to have a 5v power connection. Now I am up to 3 screws, so I think, why not add one more, and it can include 2 GPIO pins allowing me to make it an I2C connection. Easy enough and useful, but how to make the connection? Screws were not ideal with the limited space and power now involved so I decided I would just add some header pins. I decided to swap them, having the pins on the wire lead that would plug in so it would be less likely to short out. I would need to key it so it would not get plugged in wrong which is not a huge deal but it just did not seem elegant enough. So I stated to look around what other instruments, or I2C ports used…
-Low duty cycle
-Non Locking, and can pull out
Candidate Two: Mini Molex/Berg AKA floppy power connector.
Besides being on most PSUs it has on very rare occasions been used for a serial plug. The Tux bot is all I can think of.
-It has 4 pins
-very commonly available
-Would have to have pins on Deco Time, not cable
-Already well known as something else, and I don’t want anyone hooking power up
-Lock direction only allows female end to be removed. Pins would have to stick out of the back of Deco Time
Candidate Four: BS6312 AKA British Telecom Plug
The British version of the RJ11, just because they could the clip is on the side. A number of sensor and I2C cables use these. Vernier, Labfiz, TI, and Casio have all used it for serial. It was also famously used on the Sinclair and Spectrum home computers for their serial port.
-Used by many lab equipment companies for I2C devices
-Common, but not enough that someone will accidentally plug one in
-Bit large, but smaller then RJ45
-Connectors are rare enough, they are special order, although spark fun stocks them.
-They also have a left and right version, so you have to pay attention to what you buy.
-Known for other uses
-Possibility of shorts when plugging in
-Rotation may cause I2C signal issues.
Candidate Six: DIP Grove / 4P-2.0 / JST-PH-2.0
A common cable most famously used by Seeed Studio for there Grove system.
-Used By seeedstudio for there I2C interface products
-Would need to have pins sticking out back
-Lower duty Cycle, could not be unplugged and plugged back in over and over with ease.
Candidate seven: RJ45 / Ethernet
No introduction needed for this one.
– 8 wires to work with
-High duty cycle
-Well known use, not for this. I do not want anyone plugging in a network cable.
-Big, it takes way to much space.
Candidate eight: RJ12 / RJ11
Standard phone like connector. A modified offset version is used in the Lego Mindstorm NXT and EV3. It is also very commonly used for a serial connection I have used a number of DB9 to RJ12 adapters.
– 6 wires to work with on RJ12 4 on RJ11
-High duty cycle
-Well known use, someone could plug a phone line into it (I have a phone line right by it!)
Candidate nine: RJ9 / 4P4C / Telephone Handset
Famously used on the early Mac computers for the keyboard connector, also used by DirectTV for its serial interface. It is also used by Wavecomm for its data acquisition device. I have also seen it used on 3d scanners most recently.
-High duty cycle (500+)
-Small, very small
-Can use the curly cords from telephones in many cool colors!(Ok so I know this is not a real plus, but still to me it was!)
-Not a common serial/sensor cable
-Using pre-made wires might have reversal. ALWAYS test to make sure pins are how you think they are even if they say “straight through”
In conclusion… What did I decide to do?
I believe I covered about every option. If not let me know. After more thought on this then I really should have given I decided to go with RJ9. British Telecom connectors were a very close second. I would have probably went with them if I had a bit more space and or if I had some more readily available. I do think I will make a RJ9 to DIP Grove adapter at some point though.
Pin out for my I2C port:
4: – ground