SenseHAT and OLED with Buttons

Hi!

First of all thank you for your great product. I really love it how it is working.

Now I have a question regards the SenseHAT and OLED with buttons. I’m using SenseHAT for my project and when its connected to pitop 4, OLED and buttons aren’t working. After boot it’s looping the 4 logo and after minute its showing the iconographic of sd card with arrow on pitop and turning off. I’ve tried to change the SPI BUS to 0 but without success. When SenseHAT is disconnected from PiTop, everything seems to be normal with OLED and buttons.

Hi @wesseb, can you try running:

pi-top oled spi 1

and see if the behaviour is different?

Hi!

I’ve tried on both spi buses with commands

pi-top oled spi 1

and

pi-top oled spi 0

Without any success. Also i’ve noticed when SenseHAT is connected and working and Im trying to use any of the pi-top oled commands - its responding me like

Error on pitop-oled.run: Resource temporarily unavailable

When SenseHAT is disconnected from the gpio port. Everything is again fine (commands are working, OLED as well).

EDIT: I’ve tried another pt commands when SenseHAT is connected and there is same result.

pi@pi-top:~ $ pt devices
Error on pitop-devices.run: Unable to get device type from pt-device-manager: Resource temporarily unavailable
pi@pi-top:~ $

@wesseb ok thanks, it sounds like an I2C issue - we’ll get somebody to look into this and get back to you asap!

1 Like

Thank you and I’m waiting on future information about it! :slight_smile:

HI guys,

I’m new to this community but I was prompted by pi-top support (@Luke123456) to post my solution here. I’ve managed to solve this exact same problem a week ago. It had to do with how pt-device-manager is failing to run when encountering i2c reserved addresses; i.e. ‘UU’.

Please see my edits to the ptdm_peripheral_manager,py script at lines 299 and similarly line 380 that rectified the logic so that pt-device-manager can function.
ptdm_peripheral_manager

Hope that helps and look forward to a patch soon (so we don’t have to keep modifying it with every future update :P).

3 Likes

Hey - this is great! I have added this to the staging version to check for any regressions, but this should be out soon!

1 Like

@jlzb great work! Beat us to it :wink: Looking forward to PRs from you in the future on our SDK :+1:

Hi again!

Checked everything again and after few tries with modifying the ptdm_peripheral_manager,py script everything is working as expected! Thank you @jlzb for your solution! :slight_smile: Also @duwudi for your help. I hope that function will be added in future updates! Thanks!

@wesseb thanks for the update! And yes, hopefully we’ll get this fix in there very soon - we just need to finish our own testing which is scheduled for this week or early next week :+1:

1 Like

Hi again!

In newest OS version (Bullseye) there’s a problem with SenseHAT. I’ve checked the source code of pi-topd/peripheral_manager.py and again there’s no added solution what @jlzb mentioned.

hi @wesseb!

the suggestions from @jlzb were released; however, since that was some time ago, the code changed a bit. The SenseHat should still work out of the box with a pi-top [4].

You can read https://knowledgebase.pi-top.com/knowledge/pi-top4-hardware-limitations to find the instructions on how to properly connect the HAT to the pi-top and some workarounds for known issues.

Can you see the RGB matrix turn on and display a rainbow animation when you turn on the pi-top?

Hi Jorge. Yes I see a rainbow animation when I’ve turned on pi-top and it doesn’t disappear. Even I’ve checked it with simple scripts made in python and senseHAT isn’t reacting.