114 Commits

Author SHA1 Message Date
Jesse Braham
2417cd0b33 Update the prelude, adding a public module for the embedded-hal alpha traits 2022-06-14 17:28:03 +02:00
Jesse Braham
e764194f2f Implement non-blocking SPI traits from embedded-hal alpha 2022-06-14 17:28:03 +02:00
Jesse Braham
8663153e12 Implement the embedded-hal alpha traits for the GPIO and I2C drivers 2022-06-14 17:28:03 +02:00
Jesse Braham
9b033d44db Implement the embedded-hal alpha traits for the Delay and Serial drivers 2022-06-14 17:28:03 +02:00
bjoernQ
9c244ba16c Make sure that HAL users don't need to depend on esp-hal-common 2022-06-13 16:38:58 +02:00
bjoernQ
918f7a7c8e Electrical state of open drain output can be read 2022-06-13 16:38:58 +02:00
bjoernQ
86f4d02782 Fix wrong SCL for ESP32,ESP32S2 2022-06-10 19:02:12 +02:00
Björn Quentin
1752e17531
Merge pull request #78 from bjoernQ/refactor_gpio
Simplify GPIO Macros
2022-06-10 17:03:18 +02:00
Scott Mabin
4acdf2516c
[esp32c3] SYSTIMER peripheral (#76)
* initial systimer impl
* Add systimer example
* Make Alarms real singletons
  * Remove runtime Option, turn into compile error
  * Make Systimer::now() not take self
* refactor shared alarm methods
* Implement esp32c3 delay with monotonic SystemTimer::now()
* Add extend systimer support to esp32s3 and add example
* systimer: esp32s2 support
2022-06-10 07:53:45 -07:00
bjoernQ
0dd0238ce7 Simplify GPIO Macros 2022-06-10 15:04:23 +02:00
Jesse Braham
0c61e7eeef Fix build errors introduced by updating the esp-pacs dependency 2022-06-09 10:35:18 -07:00
Björn Quentin
3fd4b03144
Add boot-default ClockConfig (#77) 2022-06-09 13:51:17 +01:00
Jesse Braham
422cd5036d Use the PTR constant instead of the ptr() function for peripherals 2022-06-07 10:08:52 -07:00
Juraj Sadel
e9d25153c6 Change frequency for all Xtensa chips 2022-06-03 19:56:21 +02:00
Björn Quentin
a96ac9a53a
Merge pull request #66 from jessebraham/fixes/rust-analyzer
Update `rust-analzyer` configuration and CI workflow
2022-05-31 19:48:13 +02:00
Jesse Braham
b7e84bc7fd Update CI workflow now that we aren't in a workspace 2022-05-31 10:17:13 -07:00
Jesse Braham
3669381234 Update the rust-analyzer config and take packages out of workspace 2022-05-31 10:02:55 -07:00
Juraj Sadel
b382a019d4
Feature/time types (#64)
* Use fugit time types for SPI peripheral, update examples

* initial WIP

* fix CI build errors

* Use extension trait in examples

Co-authored-by: Jesse Braham <jesse@beta7.io>
2022-05-31 11:39:44 +01:00
Björn Quentin
76a2067339
Add feature to reserve Bluetooth RAM for ESP32 (#63) 2022-05-20 10:38:39 +01:00
Robert Wiewel
a55c9d77ec Add RMT output channel support for all current ESP32 variants
- Add RMT output channel support for ESP32, ESP32-S2, ESP32-S3, ESP32-C3
- Add add RMT adapter for `smart-leds` crate
- Add example `hello_rgb` for ESP32-S2, ESP32-S3 and ESP32-C3 that either
  drives one LED at the pin where a LED is located on the official devkits
- Add example `hello_rgb` for ESP32 that is driving a 12-element RGB ring.
2022-05-17 15:56:25 +02:00
Björn Quentin
a2afa6cbbe
Merge pull request #61 from jessebraham/fixes/cleanup
Enforce clippy lints in CI, miscellaneous cleanup and formatting
2022-05-05 14:53:40 +02:00
Jesse Braham
80e22ba508 Enforce clippy lints in CI 2022-05-05 14:18:09 +02:00
Jesse Braham
67bd5837cd Make cargo manifests consistent and bump dependencies 2022-05-05 11:56:43 +02:00
Jesse Braham
e745e84869 Fix a whole bunch of clippy warnings 2022-05-05 11:51:12 +02:00
Jesse Braham
ec6a82b3f4 Clean up imports and format all packages 2022-05-05 11:16:05 +02:00
bjoernQ
23b6e17e52 Pass the right TrapFrame to the exception handler 2022-05-05 11:13:27 +02:00
bjoernQ
67f21460f8 Implement workaround for ESP32 errata 3.6 2022-05-03 10:08:24 +02:00
Jesse Braham
c0a584ecfa
Add a minimal driver for the USB_SERIAL_JTAG peripheral (#56)
* Add a minimal driver  for the USB_SERIAL_JTAG peripheral implementing core::fmt::Write
2022-05-02 03:55:36 -07:00
Jesse Braham
3cb276838e Update xtensa-toolchain action and fix build errors 2022-04-28 16:15:32 +02:00
Björn Quentin
eb47b0fe21
Bump riscv version (#51)
* Bump riscv version

* Bump riscv version in esp-hal-common
2022-04-22 08:00:17 -07:00
bjoernQ
0f58f84873 Bump version of xtensa-lx, use correct features 2022-04-20 08:32:45 -07:00
bjoernQ
033824391d Add linker script entries needed for wifi drivers on ESP32C3 2022-04-12 09:25:23 -07:00
Jesse Braham
834d7b1d42 Update MSRV versions in README to their actual values 2022-04-05 08:16:48 -07:00
Scott Mabin
45f2b9fd33
Merge pull request #41 from bjoernQ/fix/fix-run-esp32c3-examples
Fix `cargo run` for ESP32C3
2022-04-05 15:00:07 +01:00
bjoernQ
3113861290 Fix cargo run for ESP32C3 2022-04-05 15:11:37 +02:00
bjoernQ
43c8f34e5f Update xtensa-lx-rt, fix interrupt related examples 2022-04-04 08:52:27 -07:00
Björn Quentin
13ae45b4b9
Merge pull request #38 from jessebraham/feature/direct-boot
Modify esp32c3-hal to use a direct-boot feature instead of normalboot
2022-03-29 18:58:28 +02:00
Jesse Braham
fc37bc5d1f Modify esp32c3-hal to use a direct-boot feature instead of normalboot 2022-03-29 09:45:06 -07:00
Jesse Braham
1f033f4e65 If one device fails in CI, do not cancel the checks for others in the matrix 2022-03-29 09:33:39 -07:00
bjoernQ
e83fd25e49 Optionally pass interrupt context to handlers for Xtensa 2022-03-29 09:31:09 -07:00
Jesse Braham
58838924ba Update README 2022-03-28 14:11:35 -07:00
Douman
afc150165e Adds Rng::random() -> u32 2022-03-24 08:44:04 -07:00
Björn Quentin
02c5f4564b
Merge pull request #34 from DoumanAsh/ufmt
Introduce optional ufmt support
2022-03-22 16:10:34 +01:00
Douman
9a3b0a530f Introduce optional ufmt support 2022-03-21 16:31:20 +09:00
Jesse Braham
4e47fc69f4 Add features for architecture, clean up common HAL manifest 2022-03-14 18:17:24 -07:00
bjoernQ
651d27430a Replace the precompiled asm.S with global-asm 2022-03-14 09:33:05 -07:00
Jesse Braham
556c1fe1fd
Merge pull request #32 from bjoernQ/feature/spi
Implement SPI
2022-03-11 10:01:58 -08:00
bjoernQ
15c34c23e4 Merge branch 'main' into feature/spi 2022-03-10 17:51:18 +01:00
Björn Quentin
bf33edd077
Merge pull request #26 from jessebraham/feature/rng
Implement the embedded-hal Read trait for the RNG peripheral
2022-03-10 17:38:16 +01:00
Jesse Braham
590df9bc21 Document the RNG's pre-conditions, add a free function 2022-03-10 08:23:26 -08:00