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
Michael van Niekerk
0f1ff77fcc
Comments
2023-07-28 11:38:08 +02:00
Michael van Niekerk
e947aa0153
Comments
2023-07-28 11:37:38 +02:00
Chuck Davis
8f1ea85938
Merge branch 'main' into main
2023-07-27 08:50:53 -05:00
ceekdee
c54ae73d49
Use lora-phy v1.2.1; modify embassy-lora dependencies.
2023-07-26 21:51:09 -05:00
Piotr Esden-Tempski
858ddf6777
Added debug=2 in release profile to all examples.
...
This makes rtt output work right when using `cargo run` in release mode.
Debug was already enabled for release builds in some of the examples but
not all.
2023-07-26 18:32:40 -07:00
chemicstry
62ab0bf2e7
stm32/can: implement proper RX timestamps
2023-07-25 12:12:45 +03:00
Michael van Niekerk
a60d92cfbb
Tx and Rx setup
2023-07-24 22:20:00 +02:00
Dario Nieuwenhuis
9f898c460f
Merge pull request #1685 from chemicstry/bxcan_async_enable
...
stm32/can: bxcan async enable
2023-07-24 15:24:18 +00:00
chemicstry
2a0fe73045
stm32/can: bxcan async enable
2023-07-24 17:53:23 +03:00
Dario Nieuwenhuis
7fc138c91e
Merge pull request #1676 from adamgreig/fix-dac-example
...
stm32: Fix DAC examples
2023-07-24 14:18:37 +00:00
Adam Greig
fbe30b2453
Add notes about setting chip name correctly for examples.
2023-07-22 21:58:29 +01:00
xoviat
d42dff45de
Merge branch 'main' of https://github.com/embassy-rs/embassy into hrtim
2023-07-22 14:49:31 -05:00
Adam Greig
224fbc8125
stm32: remove duplicate features from stm32f4 examples Cargo.toml
2023-07-22 13:19:29 +01:00
Adam Greig
c83552eadc
stm32: fix DAC examples
...
The DAC driver defaults to enabling the channel trigger, but leaves it
at the default value of TIM6 TRGO, then performs a software trigger
after writing the new output value. We could change the trigger
selection to software trigger, but for this example it's simpler to just
disable the trigger.
2023-07-22 12:57:49 +01:00
xoviat
2cdd593290
Merge branch 'main' of https://github.com/embassy-rs/embassy into mac
2023-07-21 16:24:48 -05:00
xoviat
809d3476aa
wpan: further optimize mac event
2023-07-20 16:45:04 -05:00
xoviat
02d57afd51
rustfmt
2023-07-19 17:52:07 -05:00
xoviat
28254842db
- optimize event to parse opcode only once
...
- optimze channels
- return mut ref for smoltcp rx
2023-07-19 17:49:08 -05:00
xoviat
ca1d4179a7
wpan: implement initial event loop
2023-07-18 20:52:03 -05:00
xoviat
890d113b85
wpan: fully implement initial draft concept
2023-07-18 18:28:12 -05:00
Quentin Smith
2c01f277c2
cargo fmt
2023-07-18 17:17:04 -04:00
Quentin Smith
c333d855fc
Remove merge error
2023-07-18 17:14:25 -04:00