RPi makes ther own Mico controller

General discussions and questions abound development of code with MicroPython that is not hardware specific.
Target audience: MicroPython Users.
OutoftheBOTS_
Posts: 847
Joined: Mon Nov 20, 2017 10:18 am

RPi makes ther own Mico controller

Post by OutoftheBOTS_ » Thu Jan 21, 2021 7:40 am

Seem that RPi have built there own micro controller.

It is a dual core ARM M0 and they alreayd have a MicroPython port for it.

The second core is designed for fast bit bang of IO pins so you can all software IO peripherals without bogging down the primary core.

see https://www.hackster.io/news/hands-on-w ... ILdc2oele4

kevinkk525
Posts: 969
Joined: Sat Feb 03, 2018 7:02 pm

Re: RPi makes ther own Mico controller

Post by kevinkk525 » Thu Jan 21, 2021 8:15 am

Sounds like a great device! Only downside for me: No WLAN..
Kevin Köck
Micropython Smarthome Firmware (with Home-Assistant integration): https://github.com/kevinkk525/pysmartnode

User avatar
mattyt
Posts: 410
Joined: Mon Jan 23, 2017 6:39 am

Re: RPi makes ther own Mico controller

Post by mattyt » Thu Jan 21, 2021 9:31 am

The MicroPython port for the RP2040 is awaiting your review... ;)

User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: RPi makes ther own Mico controller

Post by pythoncoder » Thu Jan 21, 2021 10:23 am

The programmable I/O sounds particularly clever. I'll try to track down some docs...
Peter Hinch
Index to my micropython libraries.

User avatar
mattyt
Posts: 410
Joined: Mon Jan 23, 2017 6:39 am

Re: RPi makes ther own Mico controller

Post by mattyt » Thu Jan 21, 2021 10:50 am

Hacker News has a good discussion; it's where I first saw links to the (beautiful!) datasheet. Chapter 3 covers the PIO in-depth.

It's also worth looking at the PR; there are some useful PIO examples there (including controlling WS2812B's).

User avatar
jimmo
Posts: 2754
Joined: Tue Aug 08, 2017 1:57 am
Location: Sydney, Australia
Contact:

Re: RPi makes ther own Mico controller

Post by jimmo » Thu Jan 21, 2021 11:14 am

OutoftheBOTS_ wrote:
Thu Jan 21, 2021 7:40 am
The second core is designed for fast bit bang of IO pins so you can all software IO peripherals without bogging down the primary core.
If you're talking about the PIO controllers, my understanding is that they run independently of _both_ main cores. i.e. they are in a sense their own independent microcontrollers with DMA.

doublevee
Posts: 75
Joined: Mon Jul 02, 2018 11:09 pm

Re: RPi makes ther own Mico controller

Post by doublevee » Thu Jan 21, 2021 1:47 pm

This looks like a great device and at an incredible price point. £3.60 at Pimoroni! This should certainly help to spread the good news that is Micropython.

User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: RPi makes ther own Mico controller

Post by pythoncoder » Thu Jan 21, 2021 4:19 pm

jimmo wrote:
Thu Jan 21, 2021 11:14 am
...
If you're talking about the PIO controllers, my understanding is that they run independently of _both_ main cores. i.e. they are in a sense their own independent microcontrollers with DMA.
Indeed. The PIO comprises two blocks, each containing four independently programmable state machines. The state machines can be interlinked so that the instruction flow of one can be controlled by the state of another. Each state machine has two 4*32 bit FIFO's so that input and output data is buffered. State machine programming can be done from MicroPython using an embedded assembler. The clock speed of each is configurable, right up to 133MHz.

The documentation for all this - as per @mattyt's link - is first class, and there are plenty of Python examples for using the PIO to implement things ranging from flashing LED's to extra UARTs.

As far as I know the Raspberry Pi organisation is new to chip development. If this is the case I'm astounded that they have managed to design a chip of this complexity. The Chinese will have some trouble cloning this board...
Peter Hinch
Index to my micropython libraries.

User avatar
dhylands
Posts: 3821
Joined: Mon Jan 06, 2014 6:08 pm
Location: Peachland, BC, Canada
Contact:

Re: RPi makes ther own Mico controller

Post by dhylands » Thu Jan 21, 2021 8:10 pm

pythoncoder wrote:
Thu Jan 21, 2021 4:19 pm
As far as I know the Raspberry Pi organisation is new to chip development. If this is the case I'm astounded that they have managed to design a chip of this complexity. The Chinese will have some trouble cloning this board...
I would say that definitely isn't true. I used to work for Broadcom back when the Raspberry Pi was first introduced. The guys that started up the Pi were former Broadcom employees and some of them designed the CPU chips (perhaps not the ARM core, but the dual-core graphics co-processor, etc) that are used in the Raspberry Pi. The complexity of the new chip is nothing compared to the graphics co-processor chip embedded in the regular Raspberry Pi's.

rpr
Posts: 99
Joined: Sat Oct 27, 2018 5:17 pm

Re: RPi makes ther own Mico controller

Post by rpr » Sun Jan 24, 2021 5:09 am

mattyt wrote:
Thu Jan 21, 2021 10:50 am
... it's where I first saw links to the (beautiful!) datasheet. Chapter 3 covers the PIO in-depth.
The person who wrote the I2C section 3.6.7 in the PIO chapter says the following:
I2C is an ubiquitous serial bus first described in the Dead Sea Scrolls, and later used by Philips Semiconductor.
:D

Post Reply