Low Cost PropStick variation for use with a PlugBoard
Duane C. Johnson
Posts: 955
I've built several homemade RS-232 PropSticks that in conjunction with the PropPlug work very nicely. However, it's a pain to keep making these, or purchasing the assembled units.
I wanted an easier and cheaper method. I think I've come up with a good way to do this. This post describes a crude method of construction. This would be a natural for some small PC boards.
What do you think?
For us experimenters this concept has some advantages over the all in one PropStick boards.
For one, it's more flexible,it's very easy to change configurations. Just plug in the hardware you need. Or free up the pins if not needed.
Think about it, in the PropStick the EEPROM, and serial really only uses 4 pins. One really doesn't need to have all those other stacked pins. All that stuff seams quite redundant.
I intend to make another unit that is a I2C RTC, Real Time Clock. Probably the DS3231.
OK. one could make a DIP-40 board with places to plug in all three of these PlugParts onto it. Now you would have a PropStick with an SD card on the top. Besides, the footprint would be a bit smaller without the serial sticking out the end.
An overall view of my plugboard:
This is a schematic of my Memory, Serial interface, and I2CLeverShifter.
Note! A2 must be connected to VCC for 24FC1025.
Note! The Level shifter does not incorporate the 5K pullup resisters, they are intended to be near the I2C device.
Actually this level shifter can interface with any higher voltage such as 12V devices.
I used a 2x5 pin .1" header and removed pins 3,4,5, and 6. This allows the header to bridge over the blank space from a pair of Propeller pins and the 2 power rails on the plugboard. Ok, there is a bit of misalignment but it works just fine.
This is a DIP-8 EEPROM mounted atop the header. Note the pair of 5K pullup resisters under the DIP.
This is the serial interface. In this case it is constructed by soldering the parts between the header and the connecter. I use Molex 4 pin connectors and ribbon cable instead of directly attaching the PropPlug. This is a much more rugged method and less prone to breakage. The resister capacitor networks greatly reduce noise from resetting the micro. Note the wire going over to the Prop reset pin.
This is my version of an I2C level shifter.
This is my version of an SD card adapter that connects to P22, P23, gnd, 3.3V, P24, and P25. And the crystal is tucked under the middle. Don't forget to change the pin designations in the Spin definitions.
I posted a detail of this on another thread. See:
http://forums.parallax.com/showthread.php?130083-SD-Card-Pins&p=982464#post982464
This is one version of a low dropout regulator to produce the 3.3V power.
I wanted an easier and cheaper method. I think I've come up with a good way to do this. This post describes a crude method of construction. This would be a natural for some small PC boards.
What do you think?
For us experimenters this concept has some advantages over the all in one PropStick boards.
For one, it's more flexible,it's very easy to change configurations. Just plug in the hardware you need. Or free up the pins if not needed.
Think about it, in the PropStick the EEPROM, and serial really only uses 4 pins. One really doesn't need to have all those other stacked pins. All that stuff seams quite redundant.
I intend to make another unit that is a I2C RTC, Real Time Clock. Probably the DS3231.
OK. one could make a DIP-40 board with places to plug in all three of these PlugParts onto it. Now you would have a PropStick with an SD card on the top. Besides, the footprint would be a bit smaller without the serial sticking out the end.
An overall view of my plugboard:
This is a schematic of my Memory, Serial interface, and I2CLeverShifter.
Note! A2 must be connected to VCC for 24FC1025.
Note! The Level shifter does not incorporate the 5K pullup resisters, they are intended to be near the I2C device.
Actually this level shifter can interface with any higher voltage such as 12V devices.
I used a 2x5 pin .1" header and removed pins 3,4,5, and 6. This allows the header to bridge over the blank space from a pair of Propeller pins and the 2 power rails on the plugboard. Ok, there is a bit of misalignment but it works just fine.
This is a DIP-8 EEPROM mounted atop the header. Note the pair of 5K pullup resisters under the DIP.
This is the serial interface. In this case it is constructed by soldering the parts between the header and the connecter. I use Molex 4 pin connectors and ribbon cable instead of directly attaching the PropPlug. This is a much more rugged method and less prone to breakage. The resister capacitor networks greatly reduce noise from resetting the micro. Note the wire going over to the Prop reset pin.
This is my version of an I2C level shifter.
This is my version of an SD card adapter that connects to P22, P23, gnd, 3.3V, P24, and P25. And the crystal is tucked under the middle. Don't forget to change the pin designations in the Spin definitions.
I posted a detail of this on another thread. See:
http://forums.parallax.com/showthread.php?130083-SD-Card-Pins&p=982464#post982464
This is one version of a low dropout regulator to produce the 3.3V power.
Comments
It took a while to figure out the first set, but only about 1/2 hour for each of 2 more sets.
It would be a snap if I had a PC board.
Duane
It's cool.
But A2 of 24FC1025 is non-configurable Chip Select.
A2 must be tied to VCC in order for this device to operate.
And access for 24FC1025 is different from 24LC256(24LC512).
I hadn't noticed that in the spec.
http://www.redrok.com/Memory_24FC1025_EEPROM_128Kx8_I2C
Why does it work then? Been running since Friday or so.
Ya, it says undefined. I guess my chip defines it as working OK. Ha Ha.
I'll change the schematic to reflect this
Duane
24FC1025 address map Maybe prop don't have how to access 24FC1025.
If chip's A2 connect to Vcc, prop can use 24FC1025 as 64k-eeprom.
If prop access address 0x40000 - 0x4ffff, it can get top half's datas of 24FC1025.
Duane
If so then A0 (pin 1) is not connected. You use an extra bit in the address to access the upper 64K of EEPROM. I may be missing something here.
@Duane, Is the I2C level shifter needed? I2C communicates by pulling the line low. The Prop can communicate with a 5V I2C device fine without a level shifter. The 5V devices I've used seem to be happy with the lines pulled to 3.3V. Even if the I2C lines were pulled up to 5V, it should be fine as long as the pull up resistor were a high enough value. I'm not sure about using a 12V I2C device with a Prop though.
Duane
Edit: I should have checked the datasheet for the 24FC1024. It's not the same as an AT24C1024.
Actually I couldn't find the 24FC1024 datasheet.
I have tested the 24FC1025, 24LC256, and 24LC512. If I had an AT24C1024 I would try it.
http://www.redrok.com/Memory_24FC1025_EEPROM_128Kx8_I2C.pdf
http://www.redrok.com/Memory_24LC256_EEPROM_32Kx8_I2C.pdf
http://www.redrok.com/Memory_24LC512_EEPROM_64Kx8_I2C.pdf
The I2C level shifter isn't strictly required in most applications if all the I2C parts are on the same board.
However, many applications use I2C on devices on another board through shielded cable. These interfaces often use fairly low pullup resisters which would violate the Props protection diode spec. The I2C level shifter guarantees that the voltage on the Prop pins can't get higher than 3.3V.
It may also be needed when using 5V parts at the full maximum clocked speed.
I mentioned the use of this circuit for interfacing to high voltage signals at 12V. I guess I am not aware that the I2C spec allows 12V, but I suppose it could.
I was only saying the exact same circuit is used as a non-inverting level shifter for many applications. Basically the pull down current is limited to the Props pull down current spec which is limited to a maximum of 40mA, but the DC characteristics for Vol at Iol = 10 mA, Vdd = 3.3 V is .4V. So you probably want to keep it at less than 10mA or so.
I have used this same circuit at 40V with the generic 2N7000 and up to 150V with a BS107.
Note there is a similar circuit that uses an NPN bipolar transistor. And if the 3.3V isn't available a "Depletion Mode" MOSFET with it's gate grounded. I did it with a not so generic DN2530.
http://www.redrok.com/MOSFET_DN2530_300V_175mA_12O_Vth-1.0_TO-92.pdf
Duane