* Hacky async TWAI driver
* Async TWAI: Custom priority and pin to core
* Async TWAI: Proper configuration of alerts
* Do not refer to esp-idf-sys as it is not an explicit dependency anymore
* Refactor Rgb struct
Moves hsv convertion into
an associated function and further
implements From<Rgb> for u32.
* Update rmt_neopixel.rs
* Replace if-else with pattern matching
* Correct endianness of RMT signal
Bits were sent reversed, which worked for 0xff but not at smaller values to dim the LED. Also added rainbow example using a hsv function.
* cargo fmt
* Removed logger and fixed delays
* Add RMT receiver
* Changed line 891 to rmt_item32_t,
Changed line 835 to carrier_rm
* rmt.rs - changed line 891 to rmt_item32_t
rmt.rs - changed line 835 to carrier_rm
* Changed rmt channel implementation
* wrong rx_config_t field name
* More cleanup from rebase
* Fix cargo fmt check errors
* guess #1 to fix errors
* Try to fix clippy error
* Can't use log change to println
Change gpio pins for esp32-c3
* old update to esp-idf-hal newer one coming
* Fix format errors
* Update TxRmtDriver and RxRmtDriver
* Fix compile errors
* fix rmt_morse_code.rs error
* Fix format failure
* Fix more errors
* Fix examples
* Change PulsePair durationX type
- use u16 instead of PulseTicks
Co-authored-by: enelson1001 <ednelson5080@gmail>
* WIP: Initial tx rmt implementation
* Rename Bulder to Config to line up with other mods
* WIP Potential traits for a "pulses" mod in embedded-hal
* WIP: Initial tx rmt implementation
* Rename Bulder to Config to line up with other mods
* WIP Potential traits for a "pulses" mod in embedded-hal
* Copied example code from ledc fork. Semi-working example.
* Rename level to pulse. dev-dep versions.
* WIP RMT, Examples
* WIP RMT Fix neopixel example
* WIP RMT morse code work
* WIP RMT fixed morse example
* WIP RMT more config, docs.
* WIP RMT fix compilation
* WIP RMT Fix doc comment in example.
* WIP RMT: notes on examples
* WIP RMT Group up same level config items.
* WIP RMT Change half_inserted to an Option
* WIP RMT Don't need to return Result in clear()
* WIP RMT Config refactor. Into for enum.
* Result instead of Option in PulseTick
* Don't use floats for ticks calcs
* WIP Duration for ticks
* Cleanups.
* Moved Duration logic into PulseDuration.
* Remove unused tick_hz field.
* Cleanups.
* WIP playing around with generics
* Refactored out Vec storage out of Writer
* WIP Heap and Stack implementations for data
* WIP about to nuke tricky const code
* Cleanups
* Own PinState. start/start_blocking.
* Wrap duty percent with range safety.
* Use units::Hertz
* Use Hertz in ticks_hz
* Stop transmitting implementation
* Fix morse example
* rmt peripheral for channels (4 for now)
* Small tweaks
* Morse example to demo more functionality
* WIP Fixes and testing functionality
* Cleanups and notes
* Assign devices to number of channels. Cleanups.
* Sprinkled TODO's around for docs/fixes
* Longer messages don't repeat so remove it for now
* Rename data to signal because data is a too generic term
* More docs
* Don't mention receiving in description.
* More docs
* Rename `add` to `push` like Vec. More docs.
* Rename `Writer` to `Transmit` to line up with rmt docs.
* Accidentally had idle_level in carrier config.
* More docs and cleanups. std compatibility.
* Remove chip::HwChannel import because of a * import later.
* Separate duration to ticks calc. Music example.
* Added comment on example.
* clippy: ok_or_else, Default.
* fixes: mut self, allows/features, alloc, &Pulse.
* only need feature alloc for the use warning.
* rename Signal implementations
* Alloc, morse example fix.
* Didn't need that map. iter does the ref.
* Clippy repairs. println! instead of info!