Skip to content

Conversation

@dglaude
Copy link

@dglaude dglaude commented Dec 16, 2025

Keyboard support for ADV can be written in python land, removing this code should free the GPIO from the matrix scanning so that I2C can be used.

This could be a first step to do a cardputer ADV board, a bit downgraded but with display working by default.

Keyboard support for ADV can be written in python land, removing this code should free the GPIO from the matrix scanning so that I2C can be used.
@RetiredWizard
Copy link

Does this disable the keyboard support on the original version?

@dglaude
Copy link
Author

dglaude commented Dec 21, 2025

Does this disable the keyboard support on the original version?

Yes it does break the keyboard for the normal Cardputer (v1.0 and v1.1) => definitively not a good solution and it should NOT be approuved.

And so far I had no success using TCA8418 (at least I can talk to it in I2C, but I could get any key input out of it... need to investigate).

I think the best option would be to create a separate Cardputer ADV board and improve over time. This is what we did for the original Cardputer.

Easy: redefine the pin for at least I2C pins and get rid/rename all the keyboard scanning pin that are not relevant anymore

Challenges:

  • Is it OK that multiple board have the same USB ID (it is an M5 Stamp like for the Cardputer)
  • TCA8418 library we have is in python land, we need C code in firmware land to have the keyboard working in REPL mode
  • I2C is used for the TCA8418 but also BMI270 and exposed for external device => it need to be usable both in firmware land and python land (not sure how to do that)

Right now, this PR was just to abuse from the github based build system in order to get a working UF2... so it can be closed/destroyed.

Screen initiate properly and you get a working system (without keyboard) also likely failing is the sound in/out part made of ES8311+NS4150.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants