-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
stm: enable RGBMatrix #2831
stm: enable RGBMatrix #2831
Conversation
i can test once you need a verifier! |
ac0fdf9
to
9327a2c
Compare
Testing performed: on stm32f405 feather, all pins change in plausible ways on a logic probe. Didn't actually drive a display yet.
@ladyada Give this a whirl now. The artifacts are ready -- looks like your download link is https://github.com/adafruit/circuitpython/suites/642483319/artifacts/5391473 |
Leaving this in Draft state until the PR in protmatter gets merged, adafruit/Adafruit_Protomatter#6 |
So what's the distinction between rgbmatrix and protomatter again? Are we transitioning to just one, or using both for different things? |
Protomatter is the name of the original Arduino library, which forms the core implementation in Cpy. That name is not going to change. The user-visible interface was called protomatter in CPy, too, but was renamed to rgbmatrix for clarity. |
@hierophect yah a 32x32 is plenty large! |
I retitled the PR for clarity. |
@ladyada whoops, wiring details:
|
Testing performed: simple scroller on stm32f405 feather, and re-tested simple scroller on nrf52840 feather |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jepler This looks good to me generally, but I've got questions about your addition of the common-hal functions which imply iterable pins, which I've tried to avoid for this port.
Looks good to me |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me too.
Fix build after #2831 (stm32f4xx rgbmatrix) broke it
@jepler ok finally got around to testing on the stm32f405 and works great :) please add the feather fritzing documentation in the next week or two to the guide |
Testing performed: on stm32f405 feather, drove a 16x32 display.
As far as going to other stm microcontrollers, the main sticking point is the timer. I statically allocated TIM6 for this purpose (because TIM6 is not associated with any PWM pins); we need to have a "timer allocator" in the stm port, which @tannewt and @hierophect have both commented on. Not even the whole F4 family has TIM6, so this enables only STM32F405xx for now.