Shop OBEX P1 Docs P2 Docs Learn Events
Problem downloading to Propeller — Parallax Forums

Problem downloading to Propeller

bb369bb369 Posts: 9
edited 2014-09-26 22:20 in Propeller 1
Hi:


I am having problems downloading code to the Propeller ram or eeprom when installed. I also get an error when using the Identify Hardware option under the Run toolbar of the Propeller Tool. I get the error message that says:
No Propeller Chip found on any serial port
Unable to open com4


I get this same error message trying to download to ram or eeprom. Comm4 is the port assigned by the USB-RS232 installed device driver.


I am using the following setup:
1) Windows 7

2) HyperTerminal or the Parallax Serial Terminal GUI application for RS232 communication - 9600 baud, 1 stop, no parity, hardware protocol

3) USB to RS232 converter driver for a Comm4 connection.
4) The board is a customer designed board which has a functioning eeprom. I am re-writing the code because the previous programmer left and took all source code. So, I am working with known good hardware and rewriting the code. But I have no Parallax product experience.



In the second situation, I have an existing eeprom installed in the board and I use the supplied Parallax serial terminal GUI application. Using this app I can communicate to the board. However, when I substitute the TerraTerm application there is no communication. But hyperterminal works. So I know the comm 4 port works, the cable works and hyperterminal or the parallax serial terminal gui program works.



So there are several confusing points:
1) How does the Propeller Development Tool communicate over the serial link to the Propeller on my board? Does it use my comm port application (such as the Parallax Serial Terminal GUI) or does it have its own rs232 comm program?

2) When I install a functioning eeprom in the board, why does the Propeller serial terminal GUI app talk to the Propeller on my board but terraterm will not? Is there a timing problem due to the fact that the Propeller using software for the rs232 protocol and not hardware or something else? Also, hyperterminal will communicate to the board.

3) Is there some piece of code I am missing in my application? My application consists of my code plus the supplied Parallax Serial Terminal.spin code for handling the rs232 work. But my application code should be independent of downloading code to the Propeller ram correct?



Thank you.

Comments

  • bb369bb369 Posts: 9
    edited 2014-05-20 13:35
    Hi:

    I am having problems downloading code to the Propeller ram or eeprom when installed. I also get an error when using the Identify Hardware option under the Run toolbar of the Propeller Tool. I get the error message that says:
    No Propeller Chip found on any serial port
    Unable to open com4


    I get this same error message trying to download to ram or eeprom. Comm4 is the port assigned by the USB-RS232 installed device driver.

    I am using the following setup:
    1) Windows 7

    2) HyperTerminal or the Parallax Serial Terminal GUI application for RS232 communication - 9600 baud, 1 stop, no parity, hardware protocol

    3) USB to RS232 converter driver for a Comm4 connection.

    4) The board is a customer designed board which has a functioning eeprom. I am re-writing the code because the previous programmer left and took all source code. So, I am working with known good hardware and rewriting the code. But I have no Parallax product experience.

    In the second situation, I have an existing eeprom installed in the board and I use the supplied Parallax serial terminal GUI application. Using this app I can communicate to the board. However, when I substitute the TerraTerm application there is no communication. But hyperterminal works. So I know the comm 4 port works, the cable works and hyperterminal or the parallax serial terminal gui program works.

    So there are several confusing points:
    1) How does the Propeller Development Tool communicate over the serial link to the Propeller on my board? Does it use my comm port application (such as the Parallax Serial Terminal GUI) or does it have its own rs232 comm program?

    2) When I install a functioning eeprom in the board, why does the Propeller serial terminal GUI app talk to the Propeller on my board but terraterm will not? Is there a timing problem due to the fact that the Propeller using software for the rs232 protocol and not hardware or something else? Also, hyperterminal will communicate to the board.

    3) Is there some piece of code I am missing in my application? My application consists of my code plus the supplied Parallax Serial Terminal.spin code for handling the rs232 work. But my application code should be independent of downloading code to the Propeller ram correct?

    Thank you.
  • Duane DegnDuane Degn Posts: 10,588
    edited 2014-05-20 14:04
    I don't have all that's going on with your board straight in my head but here are a couple of things to keep in mind.

    You want to make sure you don't have any sort of terminal connected to the com port the Propeller is on when you attempt to program using the Propeller Tool.

    Some USB to serial devices will use the RTS line rather than the DTR line to toggle the reset line. This can be changed from within the Propeller Tool.

    It may be possible your custom board doesn't have the reset line connected to either the RTS or DTR lines. Do you have the board's schematics?

    Edit: I have no idea why terraterm won't communicate with the board when the other two terminal programs will. And yes to #3. The serial communication from the application code should be independent of downloading code to the Propeller RAM (though it can interfere with a program being able to load).

    Does your board have a reset button? Sometimes it helps to press reset right before attempting to program a board with the Propeller Tool. Apparently the buffer on the PC can block the communication between Prop Tool and Propeller.
  • bb369bb369 Posts: 9
    edited 2014-05-20 14:16
    {mistake in last post}

    I do have the schematics and the hardware person connected the DTR signal to the Propeller reset pin. However, the signals go through a switch and they have the DTR disconnected from the reset line. I have tried using it with the signals connected as well as disconnected but the code still does not download.

    I have done alot of hardware design and used many UARTs and USARTs and used many microcontrollers and have never seen a microcontroller being reset with an RS232 control signal. So I was stumped when looking at the Parallax recommended RS232 design to see the reset connected to DTR. Why would they do this?
  • Duane DegnDuane Degn Posts: 10,588
    edited 2014-05-20 14:16
    I just noticed your other post. It's against forum rules to post the same question in more than one forum. You're other post will likely be deleted by a moderator.

    I think the single post rule is a good one since it can get very confusing trying to help someone when you don't see what others have posted because they responded to the other thread.
  • Mike GreenMike Green Posts: 23,101
    edited 2014-05-20 14:20
    Your USB to serial converter may be too limited. The Propeller requires a serial data input with 3.3V logic levels connected to I/O pin 31 and provides serial data output with 3.3V logic levels on I/O pin 30. This is for either programming or as a default data terminal. For programming, the Propeller requires that DTR be connected to the RST (reset) pin, such that activation of DTR (a pulse from high to low) causes RST to be briefly grounded. The Propeller Manual shows an appropriate interface schematic for RS232 signal levels. The PropPlug schematic shows how to interface from USB to the Propeller for programming or other serial data.

    Some USB to serial converters don't handle DTR properly. They can be used for generic serial data, but not for programming. The default Windows serial drivers don't handle DTR properly either. You have to use the USB to serial adapter chip's driver from the manufacturer. All of Parallax's USB to serial converters use a chip from FTDI and the current driver is on FTDI's website.

    The Propeller Tool has its own terminal program based on the Parallax Serial Terminal (as far as I know). I can't answer your question about Teraterm vs HyperTerminal. I normally use a Mac or Linux and have no problems with a variety of terminal programs. I can also run the Propeller Tool on the Mac using Parallels Desktop and Windows XP and it works fine.

    What USB to serial adapter are you using? How do you have things connected? What serial driver do you have installed under Windows 7?
  • bb369bb369 Posts: 9
    edited 2014-05-20 14:22
    The board does have a reset button and I press it just before starting a download. I also remove the eeprom to prevent it from loading and executing. Since I can communicate with the old eeprom when installed I know the RS232 is working both on my windows side and on the board side; so I thought that when removing the eeprom and doing a reset the Propeller would find the RS232 connection and allow a download; but apparently not.
  • Duane DegnDuane Degn Posts: 10,588
    edited 2014-05-20 14:31
    The "unable to open com 4" message makes me think another resource is using the com line. You need to make sure all serial terminals are disconnected from the com before the Prop Tool can find the port.

    I think I only get that message if the com is in use or the adapter isn't plugged in. It should be able to find the com port whether or not it can communicate with the Propeller.
  • bb369bb369 Posts: 9
    edited 2014-05-20 14:32
    Thanks. I am using a Prolific USB-RS232 converter cable which also has its own windows driver. The hardware design of the board does follow the Parallax design shown in the Propeller Manual.

    Where do I find the PropPlug schematic?

    Does Parallax make a converter cable and windows driver? I looked at the website but did not find a converter product. Or do I buy the FTDI product on their website?

    tks
  • bb369bb369 Posts: 9
    edited 2014-05-20 14:36
    So it is sounding like I need a USB-RS232 converter and driver which toggles the DTR line initially to start the download process. And it is sounding like the FTDI product is the one I showed be using? And to also verify DTR toggles at the start of a download. Sound correct?
  • Duane DegnDuane Degn Posts: 10,588
    edited 2014-05-20 14:46
    Here's the Prop Plug page. Does your board use RS-232 voltage levels to communicate? If so, I'm not sure if the Prop Plug would work for you.

    While I have three Prop Plugs (and a Prop Clip) I also like the inexpensive USB to serial device you can find on ebay.
  • bb369bb369 Posts: 9
    edited 2014-05-20 14:57
    Thank you. Yes, the board uses 3.3v levels in the design. I just noticed that in their design they do not have the DTR signal going directly to reset through the 0.1uf capacitor but rather going through an NPN after the capacitor which does not have any voltage on the collector...so I doubt the DTR signal is passing through the transistor. I don't know why they designed it this way but I will try connected around the NPN and going directly to the cap to see if that works. They might have used the NPN to get more drive to ensure a good signal level.
  • bb369bb369 Posts: 9
    edited 2014-05-20 15:05
    Thank you. I looked at the Prop Clip schematics and they have an NPN connected directly to the reset pin similar to what the board I am working on is doing. So I guess that is OK. It looks like the hardware designer used the Prop Clip DTR connection design plus the Propeller Manual suggested design for Tx and Rx.

    So the problem could be the driver.
  • ArtWholeflafferArtWholeflaffer Posts: 2
    edited 2014-08-16 17:33
    I am having the same problem. It happens with all of my propeller boards, I am currently using a P8X32A cars and the stock cable. It has worked in the past on this computer. I am using Windows 7. I have no problem on my Windows 7 laptop.
  • DiverBobDiverBob Posts: 1,110
    edited 2014-08-16 19:00
    I had a similar problem recently with a new prop board. Make sure you are running the latest version of the PropTool so you get the right drivers installed
  • ArtWholeflafferArtWholeflaffer Posts: 2
    edited 2014-09-26 22:20
    I have discovered that my desktop is rebooting the comm port every 10 seconds. I have the same problem with my BS2's and my Arduino boards.I am going to reinstall a fresh copy of windows 7. I have several other problems that I hope will get fixed, including the problem of not being able to uninstall the possable offending program and can't update some windows programs.
Sign In or Register to comment.