Starting with propeller - Help
pracas
Posts: 15
Today I received my first Propeller Chip and I'm hooking it up on a breadboard. Now i'm planning to use an FTDI for programming. I have 2 choices - Arduino USB Board or Xbee USB Explorer Board Both of which i can do the rx/tx wiring from. Now can i power the propeller with the FTDI's 3.3v output? (50ma) will that be sufficient? if not will a LD1117 work? Now another question is what are the signal levels for rx/tx? I presume its 3.3v as well however i'm wondering if it can take a direct 5v? Looking for some replies.
Cheers,
Pracas
Cheers,
Pracas
Comments
Check the datasheet. www.parallax.com/Portals/0/Downloads/docs/prod/prop/PropellerDatasheet-v1.2.pdf
Moreover consider a LED drains about 20mA, alone.
It is a good practice to have a resistor in series to protect the propeller when interfacing with a 5V signal. 2.2k ohm is a widely used resitor value.
Massimo
Cheers,
Pracas
www.parallax.com/ProductInfo/Microcontrollers/PropellerGeneralInformation/PropellerMediaPage/tabid/832/Default.aspx
There's an extensive discussion on interfacing the Propeller's 3.3V logic with 5V logic in this thread:
http://forums.parallax.com/showthread.php?p=791527
see under Technical Considerations.
Also look at another of the "sticky threads" on the Propeller Education Kit Labs.
A manual reset won't work very well. The download protocol is very timing sensitive and it's very difficult to get the timing right manually.
Now I'm planning to use my Arduino to burn programs onto the propeller...Any ideas how i can overcome the reset?
cheers,
pracas
So, why not use the automatic reset? You only have to connect the same line which can be used as AVR reset to the propellers reset pin. Remember the different levels. Manual reset works, but it's much more comfortable to have the automatic reset.
What you'll need next is the crystal, as it's nice to use the serial lines for debugging. But the serial interface needs to have a stable clock frequency.
Arduino IC removed
Rx of the Arduino Pin Connected to RX of Propeller through a voltage divider 1k + 2k giving out 3.3 v
Tx of the Arduino Pin Connected to TX of Propeller
Reset from the Arduino Board connected to Reset of Propeller (PIN 11)
3.3Volts from another source provided to both Vdds
All grounds connected together.
Both Vss pins and Brownouts connected to Ground
Now when i use the propeller tool to identify hadrware, it detects the FTDI port but says no propeller IC detected. What should i recheck? anything i'm overlooking?
Cheers,
Pracas
Is "Propeller Reset Signal" set to DTR?
No level shift for the reset?
The reset line on the arduino board has some soldering bridge pins. Did you add the soldering bridge?
Whats a soldering bridge? I'm using a fully functional arduino board with the ic removed. so i presume this should be ok. I have used a 10k resistor in series for the reset and no level shifting. When i try level shifting using a voltage divider, there seems to be a short circuit, perhaps this can help explain something... Yes, the Reset Signal is set to DTR
Yes, its the same as this
http://arduino.cc/en/Main/ArduinoBoardDuemilanove
Here is something more on the reset switch of the arduino...
Cheers,
Pracas
Post Edited (pracas) : 3/11/2010 1:34:31 AM GMT
Well, I think that the capacitor is the problem. It only gives a short reset peak. The propeller tool and propeller boot program are very damageable when the timings don't fit. So, you should find the reset pin of the FTDI ( or find the RESET-EN pin 1) and connect it via diode to the propeller (kathode on FTDI side, anode on propeller side). As you're no longer using the arduino reset pin, you have to add a pullup by yourself.
Post Edited (MagIO2) : 3/11/2010 7:38:12 AM GMT
Whats the best choice of diode here?
Where do i add a pull up? why is this required? I do not understand this part [noparse]:([/noparse]
Cheers,
pracas
Reset button is optional.
.....
Forget all I said before, have a look at the demo-board schematic in the datasheet, page 25:·http://www.parallax.com/Portals/0/Downloads/docs/prod/prop/PropellerDatasheet-v1.2.pdf
that's prooven. Hope you have any kind of NPN transistor.
Cheers,
Pracas
YAY! I got it working... My propeller is detected... and I'm able to program the flash!!! the downside is I'm unable to program the eeprom. i get a message saying 'EEPROM Programming Error on COM7'... Now what is this? and how do i diagonize? I dont have any external eeprom attached? Is this required? I believe there in a built-in eeprom on the propeller chip?
Cheers,
Pracas
Post Edited (pracas) : 3/17/2010 7:37:42 AM GMT
May be useful.
http://forums.parallax.com/forums/default.aspx?f=25&m=373027
from RevAaron it says :
"
I asked about this two weeks ago- curious what the bare minimum was to get up and running on a breadboard. I got my DIP Propellers today. 5 minutes of tinkering later and I had a ready to use Propeller dev setup.
The only real deviation is that I'm using a crystal. No reason not to use one. Without one, you'll be running at a really low speed, possibly with timing/reliability issues on top of it. If cost is *that* much of an issue, you'd be better off with a $2 PIC18 or mid-range AVR. Heck, you could get a lower-end PIC32 and a crystal for less than $5. For a high-performance and higher priced controller like the Propeller it's hard to argue that it's worth the $0.10 - $0.15 you'd save per crystal (in bulk) to cripple an $8 MCU into $1 performance. Net loss of $6.80. :P
Don't get me wrong- I'm all for trying things just because. I'd be happy to try it without the crystal if anyone is curious. In lieu of a PropPlug I used a Arduino- both the Arduino and the PropPlug use the FTDI FT232RL chip to do USB to TTL. Handy for the regulated power, too. [noparse]:)[/noparse]
"
I'm getting one now.
Are there any suggested good documentations / reference for the SPIN language?
I'm bowled at the first program trying to figure out what the 'cnt' in the following statement stands for and why it is needed.
waitcnt(10_000_000 + cnt)
I can understand the waitcnt function but the cnt...
You are probably running out of juice, but it could be a timing issue coming out of the arduino side.
Cats is right.... if you build the learning lab circuit and test it out... which you can do for a few dollars, this problem will go away or be found outside of where you are looking.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Leon Heller
Amateur radio callsign: G1HSM
Just figured that out going through the education kit lab manual.
Thanks everyone! I think i'm on with the propeller just waiting to check it out with a new eeprom.
So far so good, only wish there was a help/detailed single reference like the arduino
Cheers,
pracas
You'll get a manual and a quick reference.
Moreover to learn from others, check the obex, you'll find a lot of working code to study, and modify.
Massimo