Shop OBEX P1 Docs P2 Docs Learn Events
Propeller - prop plug communication woes — Parallax Forums

Propeller - prop plug communication woes

JemartinJemartin Posts: 9
edited 2011-07-02 16:38 in Propeller 1
hello,

I am trying to connect to the propeller with a prop plug, but I am having problems getting it to connect.

It is on a protoboard that Ive soldered together. The only parts wired to work right now are the propeller, eeprom and power supply, none of the other ic's or extension boards are connected, so I that should not have an effect on communication.

When I try to connect the red and blue lights ont he prop plug both give a quick flash, but the computer does not find it. The part that really gets me is that before I soldered everything I wired up the EEPROM, propeller and power on a breadboard to make sure that the basic parts where going to work and talked to my computer and it worked. I connected to it and downloaded a program to the EEPROM that blinks an LED. When I moved the EEPROM and propeller over to the protoboard it runs the blinking program just fine, so that part of the circuit works, but the propplug part doesn't.

The only differences between the circuits on the breadboard and the protoboard are: the protoboard has 10uF and .1uF caps between power and gnd; on the breadboard I was running the EEPROM on 3.3v (not 5V); all the other stuff connected to prop wasnt on the breadboard (but like i said not of it is really connected to anything; they're just open circuits).

I've checked the prop plug by connecting tx-rx and i do get an echo with PST. I've tried switching the tx and rx connections to the prop with no change. Ive checked all the voltages into the prop and eeprom and theyre fine. All of the traces' continuities seem fine. One thing I noticed is that if the protoboard is running and i disconect the usb from the propplug the blue and red lights glow lighty, i dont know if this is normal? Also, if the proto board is running and I plug in the prop plug it will pause the blinking light for a few seconds, then it will resume, not sure if this is normal or significant?

It most likely something to do with my soldering job or a wiring mistake, but it seems like its correct. One thing I am going to try still it to switch out the crystal with a new one and to make if removable, because thats the only component (sans res, caps, etc) that is different between the breadboard and the protoboard. But, I would think that the crystal not working would have a negative effect on prop-EEPROM communication and the program on the EEPROM running.

I'll post a picture of the board when i get home. Thank you for any help.

Comments

  • LeonLeon Posts: 7,620
    edited 2011-07-01 15:54
    Both supply pins must be connected and they must both be decoupled with 100 nF capacitors.
  • JemartinJemartin Posts: 9
    edited 2011-07-01 16:27
    they are both connected to power and they are both decoupled with a 10uF and .1uF cap. I dont know where i got those values from, but I got them from someone else's curcuit for the propeller. Is 10uF too high? The prop is working for running a program, but wont connect to the computer.
  • Mark_TMark_T Posts: 1,981
    edited 2011-07-01 17:10
    Jemartin wrote: »
    hello,


    The only differences between the circuits on the breadboard and the protoboard are: the protoboard has 10uF and .1uF caps between power and gnd; on the breadboard I was running the EEPROM on 3.3v (not 5V); all the other stuff connected to prop wasnt on the breadboard (but like i said not of it is really connected to anything; they're just open circuits).

    That implies you are running the EEPROM at 5V on the protoboard - that's the problem I bet...
  • JemartinJemartin Posts: 9
    edited 2011-07-01 18:23
    the datasheet for the eeprom says:

    part # vcc range
    24LC256 2.5-5.5V

    so i figured 5v was fine. Im pretty sure the eeprom is working in general, though, because its running a program off of it whenever i start it up.
  • JemartinJemartin Posts: 9
    edited 2011-07-01 20:05
    thank you so far for helping me. i figured out the problem. there was a really small short between the tx line and ground. it wasnt beeping for continuity on my meter, but i finally noticed that it was giving me a value on the display. problem solved.
  • Cluso99Cluso99 Posts: 18,069
    edited 2011-07-01 22:12
    Jemartin: Firstly, welcome to the prop forum.

    Now, the eeprom cannot be at 5V unless you put a series resistor in the SDA line because when the eeprom transmits it will be at 5V and the prop does not like that. Note that lots of us have abused the prop without damage, but the reality is that it may. So, it is much easier to wire the eeprom to 3V3.


    Here is a little info about the prop boot process.... (and for others who may read this later)
    • All power and ground pins on the prop MUST be connected.
      • The prop is pretty robust, but if it is going to fail, this is the likely place - it then will not work in xtal mode due to PLL failure.
      • Try and connect the power and ground pins under the chip, not a long way around the chip (pcb layouts)
      • Across each power/ground pair, connect a bypass capacitor (at least 1x 100nF = 0.1uF).
      • Across the power/ground pair, connect a bulk capacitor (4.7uF-10uF, electrolytic or tantalum with tantalum preferred). This is especially required if the power supply is on another pcb, or some distance from the prop power/ground pins. Also mandatory for overclocking, plus a 10nF also.
      • For pcb layouts, all power/ground pairs should connect together under the prop (3v3 to 3v3, and Gnd to Gnd; 2 places on the DIP40 and 4 places on the QFP44).
    • To download, nothing else is required except the propplug connection. This means...
      • The eeprom is not required
      • The xtal is not required
      • This is because you can download to the prop's hub ram and it uses the internal RC oscillator to do this. The RC oscillator is not very accurate though, so serial comms to PST maybe flakey or not work at all.
    • When connecting the EEPROM don't forget the 10K pullup on SDA. You may skip the 10K on the SCL line, but I prefer to install it.
    • When connecting the xtal, make sure it has short pins (and tracks) to the xtal pins on the prop. No caps required.
    Enjoy :)
  • Duane DegnDuane Degn Posts: 10,588
    edited 2011-07-02 16:38
    About 5V EEPROM communication. I'm pretty sure you don't need a series resistor with 5V I2C devices. Just pull the SDA and SCL lines up to 3.3V and the Prop will never see 5V on its IO pins.

    The reason you can get away without a pull-up resistor on the clock line is the Prop is the only one driving the clock line so It can drive it both high and low. Both the Prop and the EEPROM can drive the data line so it needs a pull-up resistor. When the EEPROM or other I2C device drives the data line, it does so by driving the line low. It never drives it high.

    So go ahead use all the 5V I2C devices you want with the Prop. Even if the device does drive the clock line it should only do so by driving the line low. I'm pretty sure most, if not all, 5V I2C device will work with their clock and data lines pulled up to 3.3V instead of 5V.

    It is a good idea to use a pull-up resistor on the clock line as well as the data line with the Prop. There are some objects (Kye's) that require the SCL to have a pull-up resistor on it.

    Duane
Sign In or Register to comment.