You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've been playing around with my esp32-c3 dev board, trying to drive the on-board rgb led (WS2812) with the rmt peripheral. Some time ago, I managed to do this using esp-idf functionality (see here), but I wanted to also achieve it "bare-metal" using only esp-hal and the pac crate. After some trial and error, I now have an implementation that correctly configures the rmt peripheral to drive the on-board led. The code is here (see branch 'rmt'):
I'd be interested to contribute a driver for the rmt peripheral and probably also the led driver to esp-hal. I'd like to use this issue to discuss the details of how this could work. Some questions off the top of my head:
How to make the peripheral work with different clock sources? I think it'd be good to have an abstraction for clocks within the hal that could then be passed to the rmt peripheral. Looks like that's also the idea of We need a way to configure clock rates #44.
How about interrupts? I haven't looked into them yet, but they'd be required for things like sending more data than what fits into the rmt's ram.
What functionality should be available for a first shot at a rmt driver? I haven't looked into carrier modulation, advanced transmission modes or receiving data yet.
Should the implementation be common to all esp32 chips? I've only used esp32c3 and don't know whether other chips have the same peripheral.
I'm sorry for that slightly unstructured brain dump above. The main point is that I wanted to show what I did and that - if time permits - I'd be interested to work towards integrating an rmt driver into esp-hal.
Let me know what you think!
The text was updated successfully, but these errors were encountered:
Sorry, I intended to reply to this and I guess it just sort of slipped my mind 😅 Right around the time this was opened we also received a PR adding RMT support, which has now been merged (#53).
Thank you for writing up this issue and offering to contribute, and sorry again that it got neglected!
I've been playing around with my esp32-c3 dev board, trying to drive the on-board rgb led (WS2812) with the rmt peripheral. Some time ago, I managed to do this using esp-idf functionality (see here), but I wanted to also achieve it "bare-metal" using only esp-hal and the pac crate. After some trial and error, I now have an implementation that correctly configures the rmt peripheral to drive the on-board led. The code is here (see branch 'rmt'):
https://github.com/fkohlgrueber/esp32c3-hello-world/tree/rmt
I'd be interested to contribute a driver for the rmt peripheral and probably also the led driver to esp-hal. I'd like to use this issue to discuss the details of how this could work. Some questions off the top of my head:
I'm sorry for that slightly unstructured brain dump above. The main point is that I wanted to show what I did and that - if time permits - I'd be interested to work towards integrating an rmt driver into esp-hal.
Let me know what you think!
The text was updated successfully, but these errors were encountered: