Commit Graph

1585 Commits

Author SHA1 Message Date
eZio Pan
c276da5fcb ask a DMA Channel only when use .gen_waveform() 2024-01-02 14:01:09 +08:00
eZio Pan
873ee06151 some trivial fix
use less #[cfg] macro; reuse same variable
2023-12-30 12:01:08 +08:00
eZio Pan
8c2a6df03b implement PWM waveform generating with DMA 2023-12-28 20:09:12 +08:00
eZio Pan
d90a97aa4c update metapac after stm32-data PR323
and refactor a few code with cargo clippy
2023-12-25 22:03:32 +08:00
eZio Pan
dcd4e6384e enable output compare preload for TIM
keep output waveform integrity
2023-12-23 19:53:02 +08:00
eZio Pan
2f75ffb233 remove unused feature attribute 2023-12-22 01:31:25 +08:00
eZio Pan
53fc344e4d fix timing, turn TIM UDE on only necessary, clean DMA FEIF after each Transfer 2023-12-22 01:24:31 +08:00
eZio Pan
d7e517e2d3
Merge branch 'main' into stm32f4-example-ws2812-spi 2023-12-22 00:19:00 +08:00
Dario Nieuwenhuis
8b36a32ed5 ci: use beta, add secondary nightly ci. 2023-12-21 15:03:57 +01:00
Ulf Lilleengen
0acf7b09c3 chore: replace make_static! macro usage with non-macro version 2023-12-21 10:29:57 +01:00
Ulf Lilleengen
1c3cf347cb remove embedded-sdmmc
Remove support for embedded-sdmmc due to lack of maintainership. Bring
it back once the upstream includes the async functionality.
2023-12-20 13:25:36 +01:00
Dario Nieuwenhuis
189b15c426 stm32/timer: docs. 2023-12-19 17:35:38 +01:00
Dario Nieuwenhuis
80c9d04bbd stm32: add some docs. 2023-12-18 00:53:18 +01:00
eZio Pan
05b8818de0 typo fix 2023-12-18 01:02:58 +08:00
eZio Pan
1934c2abc8 match up with stm32f429zi feature flag
stm32f429 has less DMA channel than stm32f411
2023-12-18 00:06:32 +08:00
eZio Pan
0a890cfbe7 stm32f4 ws2812 example with spi ...
... and more doc on TIM&DMA version,
also remove useless TIM APRE settings,
and use for loop instead of manually flip the index bit,
and replace `embassy_time::Timer` with `embassy_time::Ticker`, for more constant time interval.
2023-12-17 23:47:00 +08:00
eZio Pan
ea1e1973eb unify channel assign 2023-12-16 02:15:56 +08:00
eZio Pan
77e372e842 cargo fmt 2023-12-15 14:15:45 +08:00
eZio Pan
a165d73eed add ws2812 example for stm32f4 with PWM and DMA 2023-12-15 14:10:11 +08:00
Ulf Lilleengen
5ec2fbe3a2
Merge pull request #2284 from Redrield/feature/embassy-usb-dfu
Add embassy-usb-dfu crate, with related modifications to embassy-boot
2023-12-14 19:56:04 +00:00
Kaitlyn Kenwell
33e8943e5b Rename bootloader feature to dfu 2023-12-14 14:16:58 -05:00
Kaitlyn Kenwell
9f9f6e75bb Abstract chip reset logic, add Reset impls for cortex-m and esp32c3 2023-12-14 13:29:26 -05:00
Kaitlyn Kenwell
cbc8ccc51e Adjust stm32wb-dfu example memory maps to fix linker errors 2023-12-14 10:56:16 -05:00
Kaitlyn Kenwell
27d054aa68 Adjust toml files, fix application example 2023-12-14 10:34:22 -05:00
Kaitlyn Kenwell
a34abd849f Add examples to ci.sh 2023-12-14 10:30:10 -05:00
Dario Nieuwenhuis
d81395fab3 Update embedded-hal to 1.0.0-rc.3 2023-12-14 16:19:32 +01:00
Kaitlyn Kenwell
9cc5d8ac89 fmt 2023-12-14 09:38:49 -05:00
Kaitlyn Kenwell
e27e00f628 Address reviews 2023-12-14 09:36:22 -05:00
Kaitlyn Kenwell
702d2a1a19 Formatting fixes, add example using stm32wb55 2023-12-13 16:08:20 -05:00
Corey Schuhen
3626deecaa More formatting. 2023-12-11 21:26:23 +10:00
Corey Schuhen
b34c8e3eb1 Update formatting. 2023-12-11 21:25:05 +10:00
Corey Schuhen
13af76af88 Add example for using CAN with STM32F103 (BluePill) with a real CAN 2023-12-11 21:08:58 +10:00
Jesse Braham
925f5cbc26 Update all references to embasy-executor to the latest version 2023-12-06 12:05:47 +01:00
Badr Bouslikhin
0ffb35a2a1
stm32/eth: add host server command example 2023-12-05 19:50:11 +01:00
Badr Bouslikhin
d2a7322978
stm32/eth: fix h7 examples
The STM32H7 examples enable `dhcpv4` and `dns` features. Both use one
socket, meaning that we need one extra socket for our firmware tcp
socket.
2023-12-05 19:48:03 +01:00
Scott Mabin
334900752a update release version in examples and other crates 2023-12-04 13:15:10 +00:00
Dario Nieuwenhuis
03325ea81b update embedded-storage{,-async}, remove patch. 2023-12-04 13:48:36 +01:00
Dario Nieuwenhuis
c6989dfbca Remove nightly and unstable-traits features in preparation for 1.75. 2023-11-29 17:26:33 +01:00
Dario Nieuwenhuis
4634316749 Update embedded-(hal,io,nal). 2023-11-29 17:01:36 +01:00
Dario Nieuwenhuis
1b9925e3da Move embassy-lora, lora examples to lora-phy repo. 2023-11-29 16:26:31 +01:00
Adam Greig
09d7950313 STM32 DAC: Rework DAC driver, support all families. 2023-11-25 00:29:45 +01:00
Adam Greig
31fc337e2f STM32 DAC: Swap to new TSEL enum entirely in-HAL 2023-11-25 00:29:45 +01:00
Dario Nieuwenhuis
f5c9e3baa6
Merge pull request #2200 from barnabywalters/asynci2cv1
Implemented async I2C for v1
2023-11-24 23:08:47 +00:00
Barnaby Walters
3efc3eee57 stm32/i2c: implement async i2c v1. 2023-11-24 23:55:46 +01:00
Dario Nieuwenhuis
bc65b8f7ec stm32/i2c: add async, dual interrupt scaffolding. 2023-11-24 23:55:45 +01:00
Dario Nieuwenhuis
259cf6192b executor: Remove non-functional rtos-trace-interrupt. 2023-11-24 23:52:09 +01:00
Dario Nieuwenhuis
766ec77ec5
Merge pull request #2198 from adamgreig/stm32-opamp
STM32: Don't enable opamps in new(), wait until configured
2023-11-20 22:47:19 +00:00
Adam Greig
d1af696605
STM32 opamp: use impl Peripheral instead of directly taking pins 2023-11-20 21:35:05 +00:00
James Munns
f3c77e59c4 Add docs, touch all linker fragments 2023-11-19 23:10:11 +01:00
James Munns
30424d83ff Update RP2040 memory.x
The RP2040 has 264KiB of memory, not 256KiB.
2023-11-19 23:10:11 +01:00
Dario Nieuwenhuis
1f9b649f80 executor: release v0.3.3 2023-11-15 18:44:01 +01:00
Dario Nieuwenhuis
ace5221080 stm32/rcc: unify f2 into f4/f7. 2023-11-13 01:59:33 +01:00
Dario Nieuwenhuis
2376b3bdfa stm32/rcc: fix pll enum naming on f4, f7. 2023-11-13 01:56:50 +01:00
Dario Nieuwenhuis
4fe344ebc0 stm32/rcc: consistent casing and naming for PLL enums. 2023-11-13 00:52:01 +01:00
Dario Nieuwenhuis
4647df14b1 Update heapless to v0.8, embedded-nal-async to v0.7 2023-11-10 16:43:53 +01:00
Dario Nieuwenhuis
0b015bd727 usb: remove msos-descriptor feature. 2023-11-08 23:21:52 +01:00
kalkyl
8effff3383 rp: Remove control handler from USB raw bulk example 2023-11-07 20:45:01 +01:00
Dario Nieuwenhuis
05f983c607
Merge pull request #2158 from kalkyl/usb-bulk
rp: Add USB raw bulk example
2023-11-07 19:22:55 +00:00
kalkyl
d44383e9a7 fmt 2023-11-07 20:19:56 +01:00
kalkyl
37a773c037 Use driver reexport 2023-11-07 20:17:19 +01:00
kalkyl
d1adc93614 rp: Add USB raw bulk example 2023-11-07 19:57:05 +01:00
Dario Nieuwenhuis
78a7ee7ec4
Merge pull request #2157 from kalkyl/usb-raw
rp: Add USB raw example + msos-descriptor to examples and usb-logger
2023-11-07 10:30:52 +00:00
kalkyl
e3fe13e905 Add docs 2023-11-07 10:58:35 +01:00
kalkyl
38bfa6916f Update pio-uart example 2023-11-07 09:15:21 +01:00
kalkyl
50139752bc Add comments 2023-11-07 09:10:18 +01:00
kalkyl
db4cd73894 rp: Add USB raw example + msos descriptor to examples and usb-logger 2023-11-07 09:05:10 +01:00
Adam Greig
326bc98bd2
Update stm32 usb_raw example to use MSOS descriptors for WinUSB 2023-11-07 02:34:27 +00:00
xoviat
980c3cf42b
Merge pull request #2142 from adamgreig/stm32g4-opamp
stm32: support internal output on g4 opamps
2023-11-06 00:01:34 +00:00
Adam Greig
28eb4cd817
stm32: support internal output on g4 opamps 2023-11-05 23:57:15 +00:00
Dario Nieuwenhuis
0272deb158 stm32/rcc: add shared code for hsi48 with crs support. 2023-11-05 23:52:54 +01:00
Adam Greig
fa45dcd034
Add raw USB example using control transfers 2023-11-05 16:46:45 +00:00
Dario Nieuwenhuis
8911a4d855 stm32/rcc: switch to modern api for l0, l1. 2023-11-05 03:06:13 +01:00
kalkyl
649f1a122a Cleanup 2023-11-03 00:41:16 +01:00
kalkyl
413b394d31 rp: Add PWM input example 2023-11-03 00:37:58 +01:00
Dario Nieuwenhuis
7ea2c3508a
Merge pull request #2137 from kalkyl/pio-rotary-encoder
rp: Add PIO rotary encoder example
2023-11-02 21:52:01 +00:00
kalkyl
ec744558b2 Cleanup 2023-11-02 22:37:03 +01:00
kalkyl
44486c5b39 rp: Add PIO rotary encoder example 2023-11-02 21:54:20 +01:00
Dario Nieuwenhuis
1f51367eb9 Upgrade static-cell to v2.0 2023-11-02 21:52:07 +01:00
Dario Nieuwenhuis
e519e00265 Update Rust nightly. 2023-11-01 04:56:56 +01:00
Dario Nieuwenhuis
dd6a29adb2 Release embassy-executor v0.3.1 2023-11-01 00:17:44 +01:00
Dario Nieuwenhuis
74683c706b
Merge pull request #2127 from bugadani/release
Prepare embassy-net 0.2.1 and embassy-sync 0.4.0
2023-10-31 15:57:51 +00:00
Dániel Buga
d941882066 Prepare embassy-net 0.2.1 and embassy-sync 0.4.0 2023-10-31 09:33:27 +01:00
Dario Nieuwenhuis
3f74ff7235
Merge pull request #2123 from bugadani/feature
Re-add impl_trait_projections
2023-10-31 02:26:51 +01:00
kalkyl
c9b50e46a5 rp: Add PIO stepper motor driver example 2023-10-30 20:50:37 +01:00
Dániel Buga
ad07ea0290 Re-add impl_trait_projections 2023-10-30 19:10:45 +01:00
Dario Nieuwenhuis
a39ae12edc stm32/rcc: misc cleanups. 2023-10-23 17:36:21 +02:00
Dario Nieuwenhuis
0ef1cb29f7 stm32/rcc: merge wb into l4/l5. 2023-10-23 17:36:21 +02:00
Dario Nieuwenhuis
b9e13cb5d1 stm32/rcc: merge wl into l4/l5. 2023-10-23 00:31:36 +02:00
Dario Nieuwenhuis
412bcad2d1 stm32: rename HSI16 -> HSI 2023-10-22 22:39:55 +02:00
Dion Dokter
5b3f75dc72 Merge branch 'master' into center-align 2023-10-20 14:17:55 +02:00
Ulf Lilleengen
035800bfbd
Merge pull request #2091 from embassy-rs/comment-memory-x
docs: add linker script comments
2023-10-19 08:19:42 +00:00
Ulf Lilleengen
c7803bb8f4
docs: add linker script comments
Existing comment were outdated. Provide an example configuration
for using the softdevice with the nRF52 examples.
2023-10-19 09:29:20 +02:00
Dario Nieuwenhuis
f20f170b1f stm32/rcc: refactor and unify f4 into f7. 2023-10-18 05:11:31 +02:00
Dario Nieuwenhuis
67010d123c stm32/rcc: refactor f7. 2023-10-18 05:01:11 +02:00
xoviat
bbd12c9372 stm32: update metapac 2023-10-17 20:31:44 -05:00
Dario Nieuwenhuis
b478640463 fix clocks in stm32wl rng example. 2023-10-17 15:57:09 +02:00
xoviat
683d5c3066
Merge pull request #2077 from xoviat/rcc
stm32: update metapac
2023-10-17 01:05:18 +00:00
xoviat
a3574e519a stm32: update metapac 2023-10-16 20:04:10 -05:00
Dario Nieuwenhuis
6e6df22979
Merge pull request #2075 from CBJamo/rosc_example
Add example to show useage of rp2040 rosc
2023-10-16 23:22:06 +00:00
Caleb Jamison
5a1393aa0b Add example to show useage of rp2040 rosc 2023-10-16 16:17:07 -04:00
Dániel Buga
40e4ca4751 Prepare embassy-net(/-driver,/-driver-channel) 0.2.0 2023-10-16 20:59:06 +02:00
Dario Nieuwenhuis
213b4c9dca time: add links key, release v0.1.5. 2023-10-16 20:11:35 +02:00
Dario Nieuwenhuis
18e96898ea stm32/rcc: unify L4 and L5. 2023-10-16 04:00:51 +02:00
Dario Nieuwenhuis
5c5e681819 stm32/rcc: add better support for L4/L4+ differences. 2023-10-16 03:23:43 +02:00
xoviat
4a156df7a1 stm32: expand rcc mux to g4 and h7 2023-10-14 23:33:57 -05:00
Dario Nieuwenhuis
8a10948ce9 stm32/rcc: port L4 to the "flattened" API like h5/h7. 2023-10-15 03:08:49 +02:00
Adam Greig
0621e957a0
time: Update examples, tests, and other code to use new Timer::after_x convenience methods 2023-10-15 01:30:12 +01:00
Dario Nieuwenhuis
2e50bf667a
Merge pull request #2055 from kalkyl/usb-midi
embassy-usb: Add MIDI class
2023-10-14 23:10:25 +00:00
kalkyl
a57d383b1d embassy-usb: Add MIDI class 2023-10-14 04:20:59 +02:00
Dániel Buga
02d2c06b23 Release embassy-time 0.1.4 2023-10-12 18:14:33 +02:00
Dario Nieuwenhuis
66e399b5c6
Merge pull request #2035 from pbert519/stm_reset_and_enable
STM32: combine RccPeripherals reset() and enable() to enable_and_reset()
2023-10-12 14:09:13 +00:00
Ulf Lilleengen
01eb1a7339
Merge pull request #2033 from andresovela/stm32-add-timeout-to-i2c
stm32: add timeout to I2C driver
2023-10-12 10:44:27 +00:00
pbert
ecdd7c0e2f enable clock first 2023-10-12 11:04:44 +02:00
pbert
f65a96c541 STM32: combine RccPeripherals reset() and enable() to reset_and_enable() 2023-10-12 11:04:19 +02:00
Dario Nieuwenhuis
32b89eeba1 net: remove atomic-polyfill. 2023-10-12 02:07:26 +02:00
Andres Oliva
4cec4b0548 Remove more unused stuff 2023-10-11 23:52:26 +02:00
Dario Nieuwenhuis
b91d1eaca0 stm32/rcc: add LSE/LSI to all chips, add RTC to more chips. 2023-10-11 04:12:38 +02:00
Dario Nieuwenhuis
d0d0ceec6a stm32/rcc: rename HSE32 to HSE 2023-10-11 01:06:44 +02:00
Dario Nieuwenhuis
0cfa8d1bb5 stm32/rcc: use more PLL etc enums from PAC. 2023-10-11 00:12:33 +02:00
Andres Oliva
cd12c9cbce stm32: add timeout to I2C driver 2023-10-10 18:20:46 +02:00
Gabriel Górski
e62bf6a9fd Patch tests & examples 2023-10-09 13:46:56 +02:00
Dario Nieuwenhuis
6186fe0807 stm32/rcc: use PLL enums from PAC. 2023-10-09 02:48:22 +02:00
Dario Nieuwenhuis
85c6f23dcb
Merge pull request #2018 from jamesmunns/add-derives
Add some uncontroversial derives to Error types
2023-10-07 00:03:10 +00:00
Dario Nieuwenhuis
3bf8e4de5f
Merge pull request #2015 from willglynn/stm32u5_faster_clocks
stm32: u5: implement >55 MHz clock speeds
2023-10-06 23:38:15 +00:00
Dario Nieuwenhuis
3a8e0d4a27 stm32: implement MCO for all chips. 2023-10-07 01:15:24 +02:00
Matt Ickstadt
f01609036f h7: implement RTC and LSE clock configuration 2023-10-06 13:28:30 -05:00
James Munns
930b8f3495 Add some uncontroversial derives to Error types 2023-10-06 17:45:35 +02:00
Will Glynn
38e7709a24 stm32: u5: implement >55 MHz clock speeds
This commit allows STM32U5 devices to operate at 160 MHz.

On STM32U5, MSIS can run at 48 MHz and HSE can reach 50 MHz. Faster
clocks require using PLL1's R output, though PLL1 can serve other
functions besides using the R output for the system clock. This commit
extracts a public `PllConfig` struct, primarily to place associated
constructors on that type, but also with an eye towards enabling the P
and Q outputs in a later commit.

STM32U5 PLLs have various frequency requirements on each stage: after
the `m` prescaler, after the `n` multiplier, and after the `r` divider.
This commit implements the associated checks as assertions.

This commit fixes clock calculation and PLL register configuration
errors in PLL initialization.

STM32U5 has a PWR peripheral which can be configured to push Vcore into
different voltage ranges. System clocks exceeding 55 MHz require range
2, and system clocks exceeding 110 MHz require range 1. This commit
adds `voltage_range` to `Config` and configures PWR as directed.

The voltage range implies different performance limits on various clock
signals, including inside a PLL. This commit implements voltage range
<-> frequency range checks as assertions, and extracts the
otherwise-repeated MSIS, HSI16, and HSE initialization into private
methods on `Config`.

STM32U5 frequencies above 55 MHz require using the PWR EPOD booster.
The EPOD booster requires configuring a second `m` term for PLL1,
`mboost`, such that it falls in a particular range. (Recall that >50
MHz cannot be reached without PLL1, so there is no scenario where EPOD
is needed but PLL1 is not.) This commit configures and enables the EPOD
booster automatically as required.
2023-10-05 22:13:27 -05:00
xoviat
e1a0635ca3 stm32: update metapac and fix opamp ch 2023-10-04 16:15:08 -05:00
Dario Nieuwenhuis
0324cee0ca update embedded-io, embedded-nal-async. 2023-10-04 00:10:55 +02:00
xoviat
e561e673c2 stm32: add opamp mod and update pac 2023-10-03 16:34:13 -05:00
KingCol13
90ade1b311 Add wait for DHCP in rp wifi_tcp_server 2023-10-02 20:10:52 +01:00
KingCol13
a931dfd9ad Update firmware size in rp wifi examples 2023-10-02 20:10:45 +01:00
Dario Nieuwenhuis
eb12114345 Remove impl_trait_projections. 2023-10-02 14:00:49 +02:00
Jonathan Dickinson
f98c8886b2
feat: allow schmitt, slew, and drive strength be set from Flex, Input, Output
Allows the schmitt, slew and drive strength to be set from Flex. Input and Output[OpenDrain] also expose the appropriate setters.
2023-10-01 21:49:14 -04:00
Dion Dokter
05a9b11316 Fix examples 2023-10-01 23:39:53 +02:00
brian horakh
08175f191a bump wasm-pack version 2023-09-30 05:42:59 +00:00
brian horakh
8da987cfbb typo 2023-09-30 05:34:22 +00:00
Dario Nieuwenhuis
f1e7205055 stm32/rtc: enable lse in examples. 2023-09-30 00:18:30 +02:00
xoviat
79146c4bd5 stm32/adc: cleanup f1, f3, v1, and v2 2023-09-27 20:58:46 -05:00
Dario Nieuwenhuis
5d8817d109 stm32/usart: return error instead of panicking on bad baudrate. 2023-09-26 00:19:27 +02:00
ceekdee
70acc093dd Update rust-lorawan crate versions. 2023-09-25 10:45:53 -05:00
ceekdee
7d5e62d4a7 Update for rust-lorawan and lora-phy version 2. 2023-09-24 10:33:03 -05:00
luveti
347ff18644
stm32: fix rtc example
lsi must be enabled otherwise a assertion fails
2023-09-24 01:11:58 -04:00
Dario Nieuwenhuis
83b4c01273 stm32/rcc: unify h5 and h7. 2023-09-21 23:47:56 +02:00
xoviat
d46920dce6 stm32/adc: make v1 async and leave en 2023-09-20 16:07:35 -05:00
xoviat
b1abaa380f
Merge pull request #1919 from xoviat/adc
adc/f3: add async conversion
2023-09-18 21:32:59 +00:00
xoviat
e640933e2f stm32/adc: add async conversion 2023-09-18 16:31:20 -05:00
Dario Nieuwenhuis
4bfbcd6c72 stm32: use PAC enums for VOS. 2023-09-18 03:15:15 +02:00
xoviat
3ddc9cd110
Merge pull request #1915 from xoviat/rcc
stm32/rcc: convert bus prescalers to pac enums
2023-09-16 22:59:26 +00:00
xoviat
de2773afdd stm32/rcc: convert bus prescalers to pac enums 2023-09-16 17:41:11 -05:00
xoviat
2930be5e17
Merge pull request #1916 from wkf/main
Update stm32wb examples to use ble/mac firmware.
2023-09-16 20:43:02 +00:00
Will Farrell
09f087e53e Update stm32wb examples to use ble/mac firmware. 2023-09-16 16:32:25 -04:00
Dario Nieuwenhuis
8315cf064e stm32: add stm32wba support. 2023-09-16 04:04:45 +02:00
Ulf Lilleengen
1b20ba27b1 feat: bump embassy-sync version to 0.3.0
Update changelog in preparation for release
2023-09-14 18:26:00 +02:00
Tobias Breitwieser
dcd1a91966 stm32: bump fmc version 2023-09-14 14:07:15 +02:00
Dario Nieuwenhuis
1133cbf90e
Merge pull request #1834 from dave-andersen/main
Fix timing on RP2040 pio_ws2812.rs example
2023-09-10 21:21:06 +00:00
Caleb Jamison
8201979d71 Add example, fix small bug in respond_and_fill 2023-09-10 23:01:15 +02:00
xoviat
08415e001e stm32/f3: add high res for hrtim and misc. 2023-09-10 13:33:17 -05:00
xoviat
a47fb42962
Merge pull request #1878 from xoviat/adc
stm32: fix adc f3 and example
2023-09-10 03:02:42 +00:00
xoviat
70a4a193c5 stm32: fix adc f3 and example 2023-09-09 22:01:51 -05:00
Dario Nieuwenhuis
2132afb48b
Merge pull request #1874 from JuliDi/eth-getstatus-async
embassy-net: add async wait_config_up
2023-09-09 20:06:52 +00:00
xoviat
11a78fb1e4 rcc: more cleanup 2023-09-08 18:20:58 -05:00
JuliDi
cf2d4eca7c
add wait_config_up to examples 2023-09-08 17:40:20 +02:00
xoviat
7573160077 Merge branch 'main' of https://github.com/embassy-rs/embassy into adc-g4 2023-09-05 17:02:28 -05:00
xoviat
f502271940 stm32: add initial adc f3 impl 2023-09-05 16:46:57 -05:00
Daehyeok Mun
49ba9c3da2 initial support for STM32G4 ADC 2023-09-04 23:36:41 -07:00
Dario Nieuwenhuis
9baa3bafb0
Merge pull request #1854 from bugadani/str
embassy-{net, sync, time}: Use fmt::unwrap
2023-09-03 00:35:21 +02:00
Dániel Buga
360286e67c Fix bootloader application examples 2023-09-02 08:50:03 +02:00
Dario Nieuwenhuis
9d8c527308
Merge pull request #1831 from vDorst/adin1110-part2
embassy-net-adin1110 more improvements
2023-09-02 00:49:17 +02:00
kalkyl
3769447382 rp: Fix write size in embassy-boot example app 2023-08-30 23:20:38 +02:00
Dario Nieuwenhuis
40b576584e
Merge pull request #1832 from embassy-rs/pipe-bufread
sync/pipe: impl BufRead.
2023-08-29 23:12:06 +00:00
Dario Nieuwenhuis
6c165f8dc0 sync/pipe: impl BufRead. 2023-08-30 01:06:41 +02:00
René van Dorst
2db4d01198
Merge branch 'embassy-rs:main' into adin1110-part2 2023-08-28 16:45:17 +00:00
Jesse Braham
1f63bf4153 Release embassy-time v0.1.3 2023-08-28 08:00:18 -07:00
Dave Andersen
71c4e7e4d2 Fix timing on RP2040 pio_ws2812.rs example
The example spins too fast so it doesn't appear to change;
it's delaying for microseconds instead of milliseconds.
This commit slows it down and adds a comment noting the pin
mapping for the Adafruit feather rp2040+RFM95 LoRA module,
which has its Neopixel on pin 4 instead of 16.
2023-08-27 22:39:44 -04:00
René van Dorst
91bb3aae3f stm32l4: bump embassy-net-adin1110 to v0.2.0 2023-08-28 00:32:05 +02:00
René van Dorst
2c36199dea stm32l4: Update adin1110 example add FCS option 2023-08-28 00:28:45 +02:00
xoviat
326e78757b rustfmt 2023-08-27 15:25:12 -05:00
xoviat
f77a7fe4bf Merge branch 'main' of https://github.com/aidant/embassy into rtc 2023-08-27 15:23:25 -05:00
xoviat
f28ab18d7b stm32: fix l4 re-export 2023-08-27 09:50:02 -05:00
xoviat
3bf6081eb5 stm32: fix wl re-export 2023-08-27 09:41:31 -05:00
aidant
db6f9afa2e fix hanging on rtc example 2023-08-27 18:37:10 +10:00
Dario Nieuwenhuis
8339423a2f
Merge pull request #1821 from embassy-rs/net-ppp
Add embassy-net-ppp driver.
2023-08-25 18:50:10 +00:00
Dario Nieuwenhuis
295542f4d3
Merge pull request #1792 from vDorst/adin1110-pr
Added support and example for Analog ADIN1110 SPE SPI ethernet chip.
2023-08-25 18:47:32 +00:00
Dario Nieuwenhuis
d812cc5745 net-ppp: add std example. 2023-08-25 20:45:23 +02:00
Dario Nieuwenhuis
cc8961034e net: allow changing IP config at runtime. 2023-08-25 20:26:46 +02:00
René van Dorst
2cf6a59114 stm32l4: Add EVAL-ADIN1110EBZ example with basic http server
Page show the current temperature and auto refresh every 1s.
2023-08-24 00:52:06 +02:00
Dániel Buga
a2c718f61c Bump executor crate version to 0.3.0 2023-08-23 20:34:37 +02:00
Dario Nieuwenhuis
b3212ae383
Merge pull request #1763 from rubdos/sender-receiver-with-ctx
Refactor Channel/Sender/Receiver poll methods
2023-08-22 21:25:29 +00:00
Ruben De Smet
c39671266e
Deprecate *recv* in favor of *receive* 2023-08-22 16:58:31 +02:00
Dario Nieuwenhuis
d327b626e3
Merge pull request #1788 from embassy-rs/esp-hosted-cleanup
net-esp-hosted: misc improvements.
2023-08-18 14:21:10 +00:00
Dario Nieuwenhuis
b948e37769 rp/flash: change naming to blocking_*, new_blocking.
- Needed for consistency with other drivers.
- Having two `new()` functions sometimes resulted in 'multiple applicable methods' errors.
2023-08-18 13:21:21 +02:00
Dario Nieuwenhuis
065b0f34af net-esp-hosted: sane error handling in control requests. 2023-08-17 01:03:12 +02:00
Dario Nieuwenhuis
f26dd54f63
Update embedded-hal to 1.0.0-rc.1 (#1783) 2023-08-16 00:40:56 +02:00
Dario Nieuwenhuis
11b66a73b4 net-wiznet: rename from embassy-net-w5500. 2023-08-15 23:05:55 +02:00
Dario Nieuwenhuis
76276c326a net-w5500: extract chip-specific stuff to a trait. 2023-08-15 22:52:37 +02:00
Dario Nieuwenhuis
4af1cf88d2 net-enc28j60: add example. 2023-08-15 14:09:36 +02:00
Ulf Lilleengen
55ff397c0c boot: release flash after prepare and refactor api
This refactoring of the chip specific bootloader creates the internal boot instance and aligned
buffer in the prepare stage, so that they are automatically dropped after. This unlocks a use
case where peripherals owning the flash need to be Drop'ed before load() happens.
2023-08-11 20:58:31 +02:00
xoviat
fcb77f3f96
Merge pull request #1753 from xoviat/rtc-wb
stm32/rtc: enable in rcc mod
2023-08-09 01:48:11 +00:00
xoviat
6a73ab1afa stm32/l4: set rtc clock source in rcc 2023-08-08 19:58:03 -05:00
xoviat
6fc5c608f8 stm32/rtc: remove generics and segregate clock sel 2023-08-08 19:47:01 -05:00
Dario Nieuwenhuis
5d5cd23715
Update to embedded-io 0.5 (#1752) 2023-08-07 13:43:09 +02:00
Ulf Lilleengen
477a90b8e3
Merge pull request #1739 from embassy-rs/refactor-fw-updater
Refactor firmware updater
2023-08-06 18:06:18 +00:00
Ulf Lilleengen
a34331ae5f Refactor firmware updater
* Allow manipulating state without accessing DFU partition.
* Provide aligned buffer when creating updater to reduce potential wrong parameters passed.
2023-08-06 19:46:53 +02:00
xoviat
b555af1c5d stm32/rtc: fix exampel 2023-08-06 12:12:18 -05:00
xoviat
ae608cf2fa stm32: fix rtc and examples 2023-08-06 12:06:29 -05:00
Adam Greig
dc5acc687f
Fix package name for stm32f334-examples 2023-08-03 21:57:29 +01:00
Dario Nieuwenhuis
4d60c715e6
net: move tuntap from std example to separate crate. (#1737) 2023-08-03 14:23:11 +02:00
pennae
a6b8f3d994 rp: add single-channel dma from adc
with uniform treatment of adc inputs it's easy enough to add a new
sampling method. dma sampling only supports one channel at the moment,
though round-robin sampling would be a simple extension (probably a new
trait that's implemented for Channel and &[Channel]). continuous dma as
proposed in #1608 also isn't done here, we'd expect that to be a
compound dma::Channel that internally splits a buffer in half and
dispatches callbacks or something like that.
2023-08-02 17:04:32 +02:00
pennae
b166ed6b78 rp: generalize adc inputs from pins to channels
this lets us treat pins and the temperature sensor uniformly using the
same interface. uniformity in turn lets us add more adc features without
combinatorial explosion of methods and types needed to handle them all.
2023-08-01 18:31:28 +02:00
Dario Nieuwenhuis
6caf627262
Merge pull request #1704 from rubdos/ieee802154-fixes
Expose IEEE802.15.4 address in Driver
2023-07-31 12:30:33 +00:00
Ruben De Smet
4afdce4ec5
Introduce driver::HardwareAddress without smoltcp dependency 2023-07-31 14:21:26 +02:00
Dario Nieuwenhuis
958cace36d
Merge pull request #1724 from bguruprasath5/stm32g0-flash-support
Added STM32G0 Flash Support
2023-07-31 10:35:28 +00:00
Dario Nieuwenhuis
2568c714c8
Merge pull request #1687 from chemicstry/bxcan_timestamp
stm32/can: implement proper RX timestamps
2023-07-31 10:28:05 +00:00
dev-guruprasath
0ddabf0423 changed ADDR variable to addr 2023-07-31 15:37:01 +05:30
dev-guruprasath
b4d0f24bf9 changed ADDR variable to addr 2023-07-31 15:36:25 +05:30
dev-guruprasath
5a2f61a031 added working example for flash 2023-07-31 15:29:26 +05:30
dev-guruprasath
5b4c099afc added working example for flash 2023-07-31 15:06:15 +05:30
dev-guruprasath
c3357f884a added working example for flash 2023-07-31 14:45:23 +05:30
Julian
027801db60
Fix probe chip type in stm32h7 example 2023-07-31 10:17:44 +02:00
chemicstry
780569c08a Merge remote-tracking branch 'origin/main' into bxcan_timestamp 2023-07-31 10:29:20 +03:00
Dario Nieuwenhuis
6c6bd11c1a
Merge pull request #1606 from JcBernack/rng-update
STM32: RNG update
2023-07-30 23:44:11 +00:00
Dario Nieuwenhuis
4999b045df stm32/rng: use bind_interrupts!. 2023-07-31 01:41:12 +02:00
Dario Nieuwenhuis
105aa8f452
Merge pull request #1718 from copterust/stm32-spi-set-freq-in-config
Move frequency to SPI config
2023-07-30 22:05:22 +00:00
bofh
d8f02e151b Set frequency in stm32 SPI examples 2023-07-31 00:02:50 +02:00
Michael van Niekerk
56b21ad429
Uart pio fix zeros
Prevent UART from only getting 0s from the output
2023-07-30 22:13:27 +02:00
bofh
04ed45941a Fix format in stm32 SPI examples 2023-07-30 19:31:22 +02:00
bofh
55fb1d5126 Fix more stm32 SPI examples 2023-07-30 19:26:24 +02:00
bofh
4f791799a9 Fix formatting 2023-07-30 19:12:49 +02:00
bofh
d2127f6b82 Fix stm32 SPI examples 2023-07-30 18:58:40 +02:00
GhaithOueslati
73057ee241 wpan: fix examples 2023-07-30 16:46:33 +01:00
xoviat
0d7b005252 stm32/pwm: add output type control 2023-07-29 12:01:32 -05:00
Dario Nieuwenhuis
eb097b9d03
Merge pull request #1710 from Sizurka/rp-async-flash
rp: add async flash
2023-07-28 22:56:33 +00:00
Derek Hageman
7ed9e29326 rp: add async flash
Implement an async flash mode using the XIP background best effort
read interface.  Only reads are actually async, write and erase remain
blocking.
2023-07-28 16:50:54 -06:00
xoviat
c7c701b3e3 Merge branch 'main' of https://github.com/embassy-rs/embassy into hrtim 2023-07-28 17:18:22 -05:00
xoviat
28136579e9 stm32/hrtim: extract into mod 2023-07-28 17:07:08 -05:00
Dario Nieuwenhuis
e3cc0d168c
Merge pull request #1707 from pennae/rp-pio-load
rp: relocate programs implicitly during load
2023-07-28 17:47:34 +00:00
pennae
cbc8871a0b rp: relocate programs implicitly during load
this removed the RelocatedProgram construction step from pio uses.
there's not all that much to be said for the extra step because the
origin can be set on the input program itself, and the remaining
information exposed by RelocatedProgram can be exposed from
LoadedProgram instead (even though it's already available on the pio_asm
programs, albeit perhaps less convenient). we do lose access to the
relocated instruction iterator, but we also cannot think of anything
this iterator would actually be useful for outside of program loading.
2023-07-28 19:33:02 +02:00
Ruben De Smet
69c0a89aa5
Use HardwareAddress in Driver 2023-07-28 16:40:15 +02:00
JuliDi
937a63ce28
remove memory.x files for other stm32 examples 2023-07-28 16:38:02 +02:00
JuliDi
b57ba84da5
add dac-dma example for h7, remove memory.x 2023-07-28 16:34:20 +02:00
Dario Nieuwenhuis
3690af9bea
stm32/timer: merge pwm module into timer. (#1703)
The traits there are applicable to timer use cases other than PWM.
It doesn't make sense to keep them separated.
2023-07-28 15:29:27 +02:00
Dario Nieuwenhuis
b124222649
Merge pull request #1699 from mvniekerk/main
RP2040: PIO UART example
2023-07-28 11:58:07 +00:00
Dario Nieuwenhuis
d5f9d17b7c Make pipes local vars. 2023-07-28 13:38:26 +02:00
Dario Nieuwenhuis
036e6ae30c
Rename embassy-hal-common to embassy-hal-internal, document it's for internal use only. (#1700) 2023-07-28 13:23:22 +02:00
Michael van Niekerk
146c744223 Fixes as per PR 2023-07-28 12:56:31 +02:00
Michael van Niekerk
6b6acc256d Merge remote-tracking branch 'origin/main' 2023-07-28 11:57:50 +02:00
Michael van Niekerk
91338adc15 Don't include embedded-hal-common 2023-07-28 11:56:59 +02:00
Michael van Niekerk
1d4e1092c4
Merge branch 'embassy-rs:main' into main 2023-07-28 11:38:45 +02:00