Propeller CPU connected to Ultibo/pi

General discussion about anything related to Ultibo.
mark
Posts: 1325
Joined: Mon Oct 03, 2016 2:12 am
Location: Indianapolis, US

Propeller CPU connected to Ultibo/pi

Postby mark » Fri Feb 16, 2018 8:16 am

What was this? https://shop.pimoroni.com/products/propeller-hat
It doesn't seem to be available any longer.

Piotr, is your university still using propellers in its curriculum?

Where is the link to download the raspbian ide? I could only find 64 bit downloads.

Regards, Mark.

mark wrote:
pik33 wrote:If someone wants a microcontroller added to RPi, the Propeller is a good choice

https://www.parallax.com/catalog/microc ... /propeller

(1) there is IDE available for Raspbian
(2) it can be programmed from RPi on the fly using UART

I planned to add the Propeller to my RPi retromachine project to act as the peripheral interface (old style digital joysticks, midi, maybe FDD (there is floppy controller code available), Atari 8-bit SIO, etc. The Propeller has 32 i/o pins from which 28 are freely available, 2 are used to connect i2c eeprom and 2 to connect UART while rebooting.

The Propeller has no its own flash/eeprom: it tries to connect to the host via uart to get a program from it. If not, it loads the program from spi eeprom. When connected to the RPi, the RPi can reset it and upload the program to it; you can have a lot of precompiled Propeller programs on RPis SD and upload what you want, when you want, using UART to do this

pik33
Posts: 852
Joined: Fri Sep 30, 2016 6:30 pm
Location: Poland
Contact:

Re: Propeller CPU connected to Ultibo/pi

Postby pik33 » Fri Feb 16, 2018 1:53 pm

There are some Propeller bought by my friends from the university, lying idle now :( But then I have a propeller demo board, quickstart board (that it the board I will use to connect to RPi first) and 2 DIP40 chips. The times changed, now I can buy these chips here which was impossible a few years ago, so I got then from the comunity.

It seems I will work in overtime next semester, having my job as a laboratory administrator and additionally a full time teacher, but maybe in a week or two I will organize all this work enough (the semester will start in Monday) to resume the retromachine project.

The place to search RPi Propeller IDE builds is the propeller forum. This is the open source code. I will try to find this later today. Or maybe tomorrow.

The Propeller Hat is nothing special, simply a board with the Propeller in RPi hat format. This can be done using any universal board, the Propeller chip and a 40 pin GPIO connector. I want to attach my Quickstart board to RPi - it has all GPIO pins easy available on the edge of the board.
Gavinmc42
Posts: 1560
Joined: Sun Jun 05, 2016 12:38 pm
Location: Brisbane, Australia

Re: Propeller CPU connected to Ultibo/pi

Postby Gavinmc42 » Fri Feb 16, 2018 3:10 pm

Quite a few Propeller guys are on the Pi forums, some even showed up here ;)
We are basically playing with Pi's until the Prop2 come out :lol:
The 40pin DIP prop1 one is easy enough to use, even VGA output :)

You can hold the Prop in reset, program it's eeprom from the Pi, then let it boot.
Not that many 32bit multi- core cpu's around that are as easy to use, plus there is a full datasheet.
Just about all the hardware is software emulated, bit bang i2c/SPI on any pins etc.
There are some interesting counter/timers and GPIO features.

Prop2 can be emulated with FPGA's, many more features.
https://docs.google.com/document/d/1bqZ ... QUGDs/edit
Perhaps silicon prototypes mid year, real ones xmas?
Will make interesting hat that could be programmed to do lots including Sigma Delta ADC/DAC.
All the real time controller stuff Pi's suck at :roll:

Hmm, What is the smallest(1 core?) FPGA a Prop2 can fit in?
Time for a hat? Rats BGA only?
pik33
Posts: 852
Joined: Fri Sep 30, 2016 6:30 pm
Location: Poland
Contact:

Re: Propeller CPU connected to Ultibo/pi

Postby pik33 » Fri Feb 16, 2018 4:16 pm

Here it is, the armhf package: https://github.com/parallaxinc/Propelle ... tag/0.36.7 - I didn't test it yet

------------------------

Ultibo+prop1 can replace prop2 fpga as the pi is much cheaper than any prop2 fpga board. With Ultibo+prop1 you have 12 cogs, 8 of them can bitbang what you want and the 4 of them have access to 1 GB of RAM and a lot of processing power :) You even don't need to attach eeprom, hold the reset and then program it from a pi via p30 and p31 via uart.

including Sigma Delta ADC/DAC.


I wrote a noise shaped DAC for prop1 working @ ~300..400 (overclocked) kHz - I also tried a video generator as the DAC :)
mark
Posts: 1325
Joined: Mon Oct 03, 2016 2:12 am
Location: Indianapolis, US

Re: Propeller CPU connected to Ultibo/pi

Postby mark » Fri Feb 16, 2018 4:42 pm

pik33 wrote:quickstart board (that it the board I will use to connect to RPi first)

Is this it?
https://www.parallax.com/product/40000

What other parts are needed to connect to raspbian and ultibo?
pik33
Posts: 852
Joined: Fri Sep 30, 2016 6:30 pm
Location: Poland
Contact:

Re: Propeller CPU connected to Ultibo/pi

Postby pik33 » Fri Feb 16, 2018 7:47 pm

Yes, this is the board. And here is its schematic: https://www.parallax.com/sites/default/ ... t-RevB.pdf

What other parts are needed to connect to raspbian and ultibo?


To Raspbian: USB cable. The board has FTDI chip on it so it will be visible as serial-on-usb by Raspbian. The cable will also provide the power supply

To Ultibo: I don't know if it has driver for FTDi chip used in the board. If yes: USB cable.

If no: modding needed. The path from a buffer to Propeller RxD pin need to be cut. After this you need 5 cables: RxD, TxD, reset, ground, Vcc.
This is also valid if you want to connect bare Propeller to RPi. You can also use RPi as an external clock source. It has internal one but its frequency depends on temperature etc. The standard is a 5 MHz quartz oscillator. There is semi-official overclocking (they even sell 6.25 MHz quartz oscillators for this purpose)

And as many cables as you want to connect RPi GPIO with Propeller GPIO. Maybe serial resistors for safety and capacitors for decoupling. Both devices are 3.3V

-------------------------------------------------------
The Propeller boot procedure:


(1) it initializes
(2) it sends some bytes to the host via UART and waits for a proper answer

If the answer is OK, then the host takes control. It can send a command "Load the program to RAM" or "Load the program to RAM and SPI eeprom". Then it has to send the binary code to the Propeller.
If the command was "write to SPI eeprom" then Propeller will do it
After this, the SPIN interpreter is loaded from ROM to cog 0 local RAM and the cog 0 starts to interpret what was loaded to the Propeller's memory

If there is no answer, the Propeller starts to load 32 kB from SPI eeprom to its main RAM (called HUB RAM), then loads the interpreter and starts interpreting.

If there is no host and no eeprom, it will go to idle mode until the next reset.

The progam for the Propeller is done like this: the main code is written in Spin. This is high level interpreted language. The code in Spin can start another Spin interpreters in other cogs (there is 8 of them) or (this is more often) load assembly programs into the rest of cogs and start them. The last thing it may do is to overwrite itself by some assembly code but normally program in Spin is used to "rule them all"

As the Propeller is now fully open sourced (the Verilog code is available) all of these details including boot rom, boot protocol and interpreter are accessible and fully described in the Propeller forum.
captbill
Posts: 70
Joined: Tue Aug 16, 2016 5:47 am

Re: Propeller CPU connected to Ultibo/pi

Postby captbill » Sat Feb 17, 2018 1:00 am

pik33 wrote:Yes, this is the board. And here is its schematic: https://www.parallax.com/sites/default/ ... t-RevB.pdf

What other parts are needed to connect to raspbian and ultibo?


As the Propeller is now fully open sourced (the Verilog code is available) all of these details including boot rom, boot protocol and interpreter are accessible and fully described in the Propeller forum.



How about just devise a 'hardware component' arrangement for the Parallax FPGA 'soft core' like we are discussing with the PIC's? The Parallax would make a fantastic platform for a logic analyzer/scope. I can't seem to find where all the open source apps for the Propeller are. There has to be a 'logic analyzer/scope app' somewhere in the archives.

The snag is that the Propeller Verilog project is in the new 'SystemVerilog' dialect which requires an upgrade of my current setup. I had hoped it would compile for the Pipistrello FPGA's I have. No luck.

This issue means limited opportunities in FPGA board choices for the Parallax core/s, it appears. Perhaps a good discussion at the Parallax forum is in order.

I kinda like being able to turn a switch and play the original Pac-Man and reboot back to my logic analyzer in under two seconds.

https://youtu.be/cUnyMXdxgSw
mark
Posts: 1325
Joined: Mon Oct 03, 2016 2:12 am
Location: Indianapolis, US

Re: Propeller CPU connected to Ultibo/pi

Postby mark » Sat Feb 17, 2018 4:25 am

BOM https://www.parallax.com/sites/default/ ... rt-BOM.pdf
Indicates ftdi 232rl
ftdi 232rl eval board http://www.ftdichip.com/Support/Documen ... AL232R.pdf

Can you use lsusb to get the vid/pid of the propeller quick start board?

pik33 wrote:Yes, this is the board. And here is its schematic: https://www.parallax.com/sites/default/ ... t-RevB.pdf

What other parts are needed to connect to raspbian and ultibo?


To Raspbian: USB cable. The board has FTDI chip on it so it will be visible as serial-on-usb by Raspbian. The cable will also provide the power supply

To Ultibo: I don't know if it has driver for FTDi chip used in the board. If yes: USB cable.
mark
Posts: 1325
Joined: Mon Oct 03, 2016 2:12 am
Location: Indianapolis, US

Re: Propeller CPU connected to Ultibo/pi

Postby mark » Sat Feb 17, 2018 4:59 am

viewtopic.php?f=10&t=580&p=3523

Does the parallax site sell a reference fpga kit or at least have a reference spec for an fpga implementation? If not I think propeller/fpga should be farther down the road from what we are trying to do now.


captbill wrote:
pik33 wrote:Yes, this is the board. And here is its schematic: https://www.parallax.com/sites/default/ ... t-RevB.pdf

What other parts are needed to connect to raspbian and ultibo?


As the Propeller is now fully open sourced (the Verilog code is available) all of these details including boot rom, boot protocol and interpreter are accessible and fully described in the Propeller forum.



How about just devise a 'hardware component' arrangement for the Parallax FPGA 'soft core' like we are discussing with the PIC's? The Parallax would make a fantastic platform for a logic analyzer/scope. I can't seem to find where all the open source apps for the Propeller are. There has to be a 'logic analyzer/scope app' somewhere in the archives.

The snag is that the Propeller Verilog project is in the new 'SystemVerilog' dialect which requires an upgrade of my current setup. I had hoped it would compile for the Pipistrello FPGA's I have. No luck.

This issue means limited opportunities in FPGA board choices for the Parallax core/s, it appears. Perhaps a good discussion at the Parallax forum is in order.

I kinda like being able to turn a switch and play the original Pac-Man and reboot back to my logic analyzer in under two seconds.

https://youtu.be/cUnyMXdxgSw
Last edited by mark on Sat Feb 17, 2018 10:56 am, edited 1 time in total.
mark
Posts: 1325
Joined: Mon Oct 03, 2016 2:12 am
Location: Indianapolis, US

Re: Propeller CPU connected to Ultibo/pi

Postby mark » Sat Feb 17, 2018 6:36 am

pik33 wrote:The cable will also provide the power supply

The propeller quick start board requires 500mA so this change to the pi's usb power configuration may be necessary:

https://hackaday.com/2015/04/06/more-po ... usb-ports/

Regards, Mark
Last edited by mark on Sat Feb 17, 2018 3:53 pm, edited 1 time in total.

Return to “Discussion”

Who is online

Users browsing this forum: No registered users and 1 guest