Any thoughts about power supply?
We could just use the power from the Pi but:
1) I get the impression the power available from the Pi is quite limited.
2) For the Prop to run stand alone it will at least need its own 3.3v regulator.
So a 5v input on the plate seems in order for use when needed.
I've been using the 5V from the RPi expansion header to drive a 3.3V regulator on my boards without any issues. In theory, the RPi 5V should be good for a couple hundred mA depending on how good the power adapter to the micro USB is. Adding a separate 2.1mm socket for standalone power shouldn't pose too much of a problem.
An earlier comment stated there are just 8 GPIO on the RPi which is not quite true. The Raspberry Pi has 17 GPIO pins available on its expansion header. 9-pins have alternative functions such as UART, SPI and I2C which leaves 8-pins as just GPIO (a PWM and RTS is in there as well). The UART/SPI/I2C pins can be used as standard GPIO if needed.
TonyD,
In the simplest case I'd just mirror all the Pi GPIO to a header for whatever use people want. But the UART TX and RX are connected to the Prop for programming and comms.
I presume you are talking about some ARM other than a raspi board that only has the one UART available.
I compiled Payload of catalina for ARM... It loads spin-binarys as well. So the prop issues the payload-cmd-line over serial to the Arm and there you go the Arm boots the Prop....
I presume your ARM UART has DTR/RTS or whatever to enable Payload to reset the Propeller.
This won't work out of the box on the raspi as the UART has no control signals.
I'm going to patch the propgcc loader to use a GPIO signal as a Propeller reset.
Now, one could of course run getty on the UART and have the Prop issue a command to reprogram itself but:
1) What if the user wants to talk to the Pi via that getty.
2) It does seem like the tail wagging the dog wagging the tail wagging...
I believe copter has a some good ideas for sorting this out.
yes , the friendly arm has 3 uarts. but I just use one and a usb-prop-plug for the other connection. does the raspi not have a usb-host?
That would result in 127 serial ports or so?
1) jupp - the boot-console runs (in my combo) over serial on the prop - but you can start as many gettys as you can provide prop-plugs on usb, can't you?
2) exactly, that was my goal there. I am still undecided who is the boss so by now both of them are... the prop can use the arm as 'slave' to get acess to the file-system (and since it is linux also to those file-system-mapped devices..) and the arm can use a port to run stuff on the prop.
hm. and those jumpers to decide if I want to connect prop to arm or prop to pc or... well when i need to plug/unplug a jumper i can just plug and unplug the prop-plug ?
I've got a Propeller Demo Board and Raspberry Pi working together last night (well sort off). The Prop is running Briel PockeTerm terminal software, which gives us a VGA serial console using a PS/2 keyboard for user input. I couldn't establish serial comms between the boards but it was after midnight when I took these pictures so I was running out of steam and didn't have time (or the energy) to find why I wasn't getting serial comms. so I'll try again tonight.
Sal started in on connecting propforth to his new RPi.
He's using the propforth software logic analyzer to monitor the RPi GPio as he's hooking them up. Says it "just works fine".
Plan is to connect all the GPio to the prop, that leaves half the pins free. And we can just stack more props on top of the first one if we need more than 16 free pins.
Also, we've been noticing a shortage of micro USB cables in both labs. The plan looks like having the prop daughter card send power to the RPi.
The targeted application will likely not have monitor or TV connected to either the RPi or the props for the most part. We are heading towards using the prop for the realtime processing of sensor and actuator data streams (pre-filtering) and you the RPi for the workstation stuff like the vision system. We think the vision system will do about 6 frames per second, of course we have to wait for the camera module to come out in a couple months, so we have time to prepare.
We're thinking of using the HC05 cheap blue tooth module to get to a command line on prop and linux, and have the options for VNC or Xwindows for the RPi desktop but these last are pretty slow so we might not be using them much. The blue tooth would just be for starting stuff up from a netbook or smart phone, and the programming interface would be from the desktops over ethernet using the regular PC workstation resources. Everything is just simplest connection right now, no "board design" yet as its not clear how it will pan out.
Application will be embedded autonomous robot, simplest hardware platform. The focus will be on the "smarts" in software.
I have pretty similar setup and goal. Currently I'm running RPi + Prop using USB connection, but as soon as there's some kind of board available that I can hook on top of RPi, then I will for sure move the stuff into that one. External communications are done using XBee, so I'm running compressed SLIP over XBee and so I get slow, but stable link that I can use for accessing the device via any protocol. Prop is running multiple sensors and passing the data for RPi, where my software runs and also controls some devices connected to Prop (servos, motors etc).
Someday before my little girl gets married and I retire I may have a RPi to play with and I am looking to do exactly the same thing as a lot of folks here. Big muti-threaded behavior based robot on the RPi and fast sensor reading and filtering on the Propeller connected up to it. Would be a very spiffy combo, although I am a little concerned about the increased power consumption that might bring.
Attached is an image of my suggestion for a Raspberry Pi "Prop Plate". The board will be powered from a 5 volt source, which will power the Raspi and as well as a separate 3.3V supply for the propeller. One has the option to connect or not connect the UART,SPI, or GPIO buses to the propeller. The Raspi I2C bus is connected to a separate port for attachment of a DS1307 RTC breakout board.
I can't really see that image on my phone here.
Is it really not posible to get an RTC chip onto the board? The Raspi needs an RTC and needing another board is getting a bit heavy weight.
I can see you have no cut outs and so the board must sit higher over all the connectors. I liked TonyD's idea of having a single little cutout around the Pi's USB connector so that the board can sit lower and "locks" around the USB connector.
Well, I for one have found a missing RTC to be inconvenient on every board or device I have owned where there isn't one. It's always a hassle. I'm not usually connected to the Internet from the boot-up.
Well, I for one have found a missing RTC to be inconvenient on every board or device I have owned where there isn't one. It's always a hassle. I'm not usually connected to the Internet from the boot-up.
Maybe its my OCD. I MUST have the ethernet port plugged in, or it just looks WRONG
There are many uses where RTC is needed. That board looks very promising. Picture is low res so I cannot see the markings, but it seems that you have incorporated the idea of having a possibility to use Plop Plug to access RPi tty as well? Very nice! Regarding RTC I just ordered separate DS1307 board for testing. Can you post higher resolution picture?
If they ever release the Model A board it will not have Ethernet making the need for an RTC greater. Having an RTC on the Prop board would be very convenient.
Yes, I like the idea of allowing for Prop Plug connection. I always felt such a board should be usable stand alone.
I have attached a higher resolution image (PropPlate2). Note that, in this revision, I have placed the RTC on board. If a cutout was used, the propeller would have to be powered from the Raspi.
I have attached a higher resolution image (PropPlate2). Note that, in this revision, I have placed the RTC on board. If a cutout was used, the propeller would have to be powered from the Raspi.
Hi Nick,
Heater has a loader that sets one of the GPIO pins for programming and resetting the propeller. It would be nice to connect the GPIO to the little PropPlug capacitive coupled transistor reset circuit. Assuming both Keyboard and Mouse are being used, the connection would allow USB operation without an additional HUB. Guess I should experiment with this very soon to verify it.
Cheers.
Addit: Sounded like an actual PropPlug reset would be connected. That was not my intent. PropPlug should not be necessary. A reset circuit on the board would be very helpful.
The Prop Plate is looking good, I would suggest you consider putting in a cut out where the RPi USB is, as I've done on this RPi Prototyping board, it makes the whole shabang a lot more stable. Only downside is you need to leave the corner above the RJ45 connector clear of through hole components as they may short out on the metal of the RJ45 connector but it's still usable for SM.
Attached find an image of my current revised version of a Raspi Prop Plate which is designed to be placed on top of the Raspi. The board is about 0.25" wider and longer than the Raspi, so that it will rest on top of an Adafruit enclosure which I am using to hold the Raspi.
I have allowed for three methods of powering the plate. A wire can be connected under the board between the two 3.3V vias on the lower right side, powering the propeller from the Raspi 3.3V supply. However, since it is uncertain how much current can be drawn from the Raspi supply, it would be better to use the raspi 5V supply connected to the 3.3V regulator on the prop plate.
A 1+ amp 5V usb power supply should be sufficient to power both boards. My preference is to power both boards from a 5V supply connected to the prop plate. Since I am using a powered hub (in my view absolutely necessary to maximize the potential of the Raspi), which has a 3 amp supply that can be split between the Raspi and the Prop Plate.
The plate has a DS1307 RTC on board, which is powered from the 5V supply. Provision is made to connect a battery to the RTC. It is directly connected to the Raspi I2C bus.
The propeller can be programmed through the prop plug port (upper right side) or by connecting the Raspi uart port to propeller pins 30 & 31. The uart may also be connected to the prop plug, if the Tx/Rx lines are switched. The block of 6 pins (middle right) is used to switch the uart connections. The propelller reset can be directly connected to one of the Raspi GPIO pins or through a transistor reset circuit.
The Raspi SPI and parallel GPIO ports are alligned with propeller pins so that connections can be made with shorting blocks.
All propeller pins will be accessible through 4 8 pin headers, allowing attachment of daughter boards.
Does anyone have a Prop loader that runs on the RP that will work for the FTDI based Propeller USB Proto boards? I am adding a RP to a robot project that uses a pair of propeller boards for all the sensors and control of the robot functions. I am planning on using the USB connection to talk to the Propeller boards. It would be ideal if I can leave that connection and load new prop code via the RP. I would prefer to still do the prop code development on my laptop but want to let the RP download the code to the propeller instead of me unplugging cables each time. The best option for me would to have a command line utility for the RP that I can pass the port as a parameter that way I can download new firmware to either propeller board.
Yes. Have a look in the propgcc beta forum for a thread on SimpleIDE for Rasperry Pi. That package contains everything you need to compile programs and program a Prop. Works using USB serial adapters like Prop Plug or the on board raspi UART on the GPIO.
Sorry I cannot make a more direct link whilst typing on my mobile phone.
Thanks for the info Heater. I saw the GPIO mentioned for programming but I want to use the built-in USB adapter on the Propeller protoboard since I have other plans for the GPIO UART. I'm going to see if I can get that package and do some bench testing before mounting it all in the robot. The RP is going to be the middle layer and with that I can attach to it wirelessly over the network to control it.
That link looks exactly like what I need. From what I read it looks like I can just download the PropTools so I can put the pload utility onto the Raspberry Pi. Once it is there I can use that to send a binary file that I can still create on the Windows system which I can send to the Raspberry Pi and then use the pload Utility to get it on the Prop board. If that works out then it will help out a lot and make it much easier to my project together.
Newark had ample stock on R-Pi, I noticed today. So I ordered one..which ought to arrive Monday. No idea whether it's v.1 or v.2, but I can't see how that would affect matters. Also downloaded Raspian image.
I'm a Linux cretin. Does Raspian comes with a C compiler? Does it use a command line interface? Is it based on gcc? Does every Linux distro come with C? Can the compiler be used while stdio is directed through the UART?
Comments
An earlier comment stated there are just 8 GPIO on the RPi which is not quite true. The Raspberry Pi has 17 GPIO pins available on its expansion header. 9-pins have alternative functions such as UART, SPI and I2C which leaves 8-pins as just GPIO (a PWM and RTS is in there as well). The UART/SPI/I2C pins can be used as standard GPIO if needed.
In the simplest case I'd just mirror all the Pi GPIO to a header for whatever use people want. But the UART TX and RX are connected to the Prop for programming and comms.
I presume you are talking about some ARM other than a raspi board that only has the one UART available.
I presume your ARM UART has DTR/RTS or whatever to enable Payload to reset the Propeller.
This won't work out of the box on the raspi as the UART has no control signals.
I'm going to patch the propgcc loader to use a GPIO signal as a Propeller reset.
Now, one could of course run getty on the UART and have the Prop issue a command to reprogram itself but:
1) What if the user wants to talk to the Pi via that getty.
2) It does seem like the tail wagging the dog wagging the tail wagging...
I believe copter has a some good ideas for sorting this out.
That would result in 127 serial ports or so?
1) jupp - the boot-console runs (in my combo) over serial on the prop - but you can start as many gettys as you can provide prop-plugs on usb, can't you?
2) exactly, that was my goal there. I am still undecided who is the boss so by now both of them are... the prop can use the arm as 'slave' to get acess to the file-system (and since it is linux also to those file-system-mapped devices..) and the arm can use a port to run stuff on the prop.
hm. and those jumpers to decide if I want to connect prop to arm or prop to pc or... well when i need to plug/unplug a jumper i can just plug and unplug the prop-plug ?
Enjoy!
Mike
He's using the propforth software logic analyzer to monitor the RPi GPio as he's hooking them up. Says it "just works fine".
Plan is to connect all the GPio to the prop, that leaves half the pins free. And we can just stack more props on top of the first one if we need more than 16 free pins.
Also, we've been noticing a shortage of micro USB cables in both labs. The plan looks like having the prop daughter card send power to the RPi.
The targeted application will likely not have monitor or TV connected to either the RPi or the props for the most part. We are heading towards using the prop for the realtime processing of sensor and actuator data streams (pre-filtering) and you the RPi for the workstation stuff like the vision system. We think the vision system will do about 6 frames per second, of course we have to wait for the camera module to come out in a couple months, so we have time to prepare.
We're thinking of using the HC05 cheap blue tooth module to get to a command line on prop and linux, and have the options for VNC or Xwindows for the RPi desktop but these last are pretty slow so we might not be using them much. The blue tooth would just be for starting stuff up from a netbook or smart phone, and the programming interface would be from the desktops over ethernet using the regular PC workstation resources. Everything is just simplest connection right now, no "board design" yet as its not clear how it will pan out.
Application will be embedded autonomous robot, simplest hardware platform. The focus will be on the "smarts" in software.
now offer RPi, no limit. Lots of expensive packages, just the board for $35 is down way at the bottom
NickL
Is it really not posible to get an RTC chip onto the board? The Raspi needs an RTC and needing another board is getting a bit heavy weight.
I can see you have no cut outs and so the board must sit higher over all the connectors. I liked TonyD's idea of having a single little cutout around the Pi's USB connector so that the board can sit lower and "locks" around the USB connector.
Mine's been up for a week and has perfect time.
I suggest that the base item NOT include RTC, which might be left to custom variant.
-Tor
Maybe its my OCD. I MUST have the ethernet port plugged in, or it just looks WRONG
Yes, I like the idea of allowing for Prop Plug connection. I always felt such a board should be usable stand alone.
NickL
Hi Nick,
Heater has a loader that sets one of the GPIO pins for programming and resetting the propeller. It would be nice to connect the GPIO to the little PropPlug capacitive coupled transistor reset circuit. Assuming both Keyboard and Mouse are being used, the connection would allow USB operation without an additional HUB. Guess I should experiment with this very soon to verify it.
Cheers.
Addit: Sounded like an actual PropPlug reset would be connected. That was not my intent. PropPlug should not be necessary. A reset circuit on the board would be very helpful.
The Prop Plate is looking good, I would suggest you consider putting in a cut out where the RPi USB is, as I've done on this RPi Prototyping board, it makes the whole shabang a lot more stable. Only downside is you need to leave the corner above the RJ45 connector clear of through hole components as they may short out on the metal of the RJ45 connector but it's still usable for SM.
I have allowed for three methods of powering the plate. A wire can be connected under the board between the two 3.3V vias on the lower right side, powering the propeller from the Raspi 3.3V supply. However, since it is uncertain how much current can be drawn from the Raspi supply, it would be better to use the raspi 5V supply connected to the 3.3V regulator on the prop plate.
A 1+ amp 5V usb power supply should be sufficient to power both boards. My preference is to power both boards from a 5V supply connected to the prop plate. Since I am using a powered hub (in my view absolutely necessary to maximize the potential of the Raspi), which has a 3 amp supply that can be split between the Raspi and the Prop Plate.
The plate has a DS1307 RTC on board, which is powered from the 5V supply. Provision is made to connect a battery to the RTC. It is directly connected to the Raspi I2C bus.
The propeller can be programmed through the prop plug port (upper right side) or by connecting the Raspi uart port to propeller pins 30 & 31. The uart may also be connected to the prop plug, if the Tx/Rx lines are switched. The block of 6 pins (middle right) is used to switch the uart connections. The propelller reset can be directly connected to one of the Raspi GPIO pins or through a transistor reset circuit.
The Raspi SPI and parallel GPIO ports are alligned with propeller pins so that connections can be made with shorting blocks.
All propeller pins will be accessible through 4 8 pin headers, allowing attachment of daughter boards.
NickL
Robert
Sorry I cannot make a more direct link whilst typing on my mobile phone.
Robert
http://forums.parallax.com/showthread.php?141392-Raspberry-Pi-For-Propeller-Development&p=1112603&viewfull=1#post1112603
I have successfully loaded a binary from the RasPi to a Quickstart, connected over USB. The ZIP also contains a RasPi version of the Spin compiler, so with an Editor (I used nano) I was able to write, compile and load a little blinker code all on the RasPi.
Andy
That link looks exactly like what I need. From what I read it looks like I can just download the PropTools so I can put the pload utility onto the Raspberry Pi. Once it is there I can use that to send a binary file that I can still create on the Windows system which I can send to the Raspberry Pi and then use the pload Utility to get it on the Prop board. If that works out then it will help out a lot and make it much easier to my project together.
Thank You.
http://www.raspberrypi.org/archives/1929
It adds a couple of mounting holes, and there are some changes to GPIO, and possibly other minor changes
Its not clear what stock is v1 and v2 - some have surfaced already in UK and Germany apparently
Element14 in Australia finally have free (uncommitted) stock available
I'm a Linux cretin. Does Raspian comes with a C compiler? Does it use a command line interface? Is it based on gcc? Does every Linux distro come with C? Can the compiler be used while stdio is directed through the UART?