Pico and BNO055 IMU

RP2040 based microcontroller boards running MicroPython.
Target audience: MicroPython users with an RP2040 boards.
This does not include conventional Linux-based Raspberry Pi boards.
User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: Pico and BNO055 IMU

Post by pythoncoder » Sat Jan 15, 2022 9:52 am

It isn't as clear-cut as that. Please see this GitHub issue. According to one of the CircuitPython lead developers the hardware does support clock stretching. The cause of the actual problem is being studied.

As a practical workround the one I described above is fine.
Peter Hinch
Index to my micropython libraries.

Nitrosfpv
Posts: 16
Joined: Sat May 01, 2021 1:09 pm

Re: Pico and BNO055 IMU

Post by Nitrosfpv » Sat Jan 15, 2022 2:24 pm

scruss wrote:
Sat Jan 15, 2022 1:24 am
Except there won't be one for hardware I2C, because the BNO055 IMU requires clock stretching, something the Pico's hardware I2C doesn't support
Where did you get this assumption from?

- nothing is really written about it on the data sheet.
https://datasheets.raspberrypi.com/rp20 ... asheet.pdf

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

Re: Pico and BNO055 IMU

Post by pythoncoder » Sun Jan 16, 2022 5:11 pm

This was my guess as to the cause of the fault. It proved incorrect. Hard I2C can be fixed with this patch.
Peter Hinch
Index to my micropython libraries.

Nitrosfpv
Posts: 16
Joined: Sat May 01, 2021 1:09 pm

Re: Pico and BNO055 IMU

Post by Nitrosfpv » Mon Jan 17, 2022 4:43 pm

pythoncoder wrote:
Sun Jan 16, 2022 5:11 pm
This was my guess as to the cause of the fault. It proved incorrect. Hard I2C can be fixed with this patch.

Very well.
When I have a Pi again I will compile and test the patch.

fivdi
Posts: 16
Joined: Thu Feb 03, 2022 10:28 pm
Contact:

Re: The verdict

Post by fivdi » Fri Feb 04, 2022 1:40 pm

pythoncoder wrote:
Wed Jan 12, 2022 10:00 am
As for CircuitPython it is aimed at users with less technical knowledge. As such it loses the most interesting features of MicroPython such as interrupts and asynchronous coding, but it gains in "plug and play" ease of use.
The response is a little late but CircuitPython 7.1.0 added support for asynchronous coding. For further details, see Cooperative Multitasking in CircuitPython with asyncio.

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

Re: Pico and BNO055 IMU

Post by pythoncoder » Sat Feb 05, 2022 6:05 am

Excellent :)
Peter Hinch
Index to my micropython libraries.

Post Reply