Commit Graph

912 Commits

Author SHA1 Message Date
NBonaparte
ba2b4aad81 fix(nrf/spim): use OutputDrive to set pin drives 2024-02-19 17:46:25 -08:00
NBonaparte
6ecac3bc95 feat(nrf/spim): allow specifying drive of SPI pins 2024-02-18 19:37:35 -08:00
Priit Laes
8507b0ad30 nrf: Remove useless lifetimes 2024-02-17 13:30:19 +02:00
Priit Laes
7f2f701c87 nrf: Remove useless returns 2024-02-17 13:30:19 +02:00
Priit Laes
580ab48451 nrf: More nits cleaned up - useless cast and struct item 2024-02-17 13:30:19 +02:00
Priit Laes
a8710e943d nrf: Drop needless let 2024-02-17 13:30:19 +02:00
Priit Laes
bb2fb59a87 nrf: Remove useless borrows 2024-02-17 13:30:19 +02:00
Priit Laes
1aa999c2a8 nrf: Use .is_empty() instead of .len() == 0 2024-02-17 13:30:19 +02:00
Dario Nieuwenhuis
6b0e4dfb2d
Merge pull request #2584 from ohrlabs/fix-pdm-gain
embassy-nrf: Fix PDM gain register value derivation
2024-02-17 01:47:18 +00:00
Frank Plowman
7d11119168
embassy-nrf: Don't break lines; make rustfmt happy 2024-02-16 20:47:19 +00:00
Frank Plowman
07987aea4e
embassy-nrf: Fix various typos and make style more consistent 2024-02-16 20:45:58 +00:00
Frank Plowman
c5f39d5c89
embassy-nrf: Use fully-qualified core::mem::transmute 2024-02-16 20:42:14 +00:00
Frank Plowman
bcb0be21c1
embassy-nrf: Fix PDM gain register value derivation
Co-authored-by: Sol Harter <sol@glowinthedark.co.uk>
2024-02-16 17:24:58 +00:00
Priit Laes
50b8100fd3 nrf: Implement chunked DMA transfers for SPIM peripheral
On some chips (notably nrf52832), the maximum DMA transfer is 255
bytes, which has caused subtle issues while interfacing with various
devices over SPI bus.
2024-02-15 12:34:51 +02:00
Guilherme S. Salustiano
b4f0f57538 remove first person comments 2024-02-12 13:21:01 +01:00
Guilherme S. Salustiano
fdb15b2054 add comments about buffer unsound 2024-02-10 08:58:31 +01:00
Guilherme S. Salustiano
40282c2666 add buffer input on transmit/receive 2024-02-10 08:49:14 +01:00
Guilherme S. Salustiano
3773928425 apply clippy sugestions 2024-02-10 08:18:32 +01:00
Guilherme S. Salustiano
802bdd1af8 remove first person comments and assert disable state when it's necessary 2024-02-10 08:09:08 +01:00
Priit Laes
27411658d9 nrf: spim/spis: Add size checks for EasyDMA buffer
On most nRF chips, maximum buffer size for EasyDMA is 255, thus
we never got any data when attempting to use 256 bytes as RX/TX buffer.
2024-02-08 21:48:41 +02:00
Guilherme S. Salustiano
9527d1d934 remove radio implementation on chips not tested 2024-02-07 18:35:03 +01:00
Guilherme S. Salustiano
ea8bfb4f38 remove some supports 2024-02-07 18:25:06 +01:00
Guilherme S. Salustiano
3ad45655ec ci rerun 2024-02-07 18:22:47 +01:00
Guilherme S. Salustiano
add7894314 remove radio feature 2024-02-07 18:21:08 +01:00
Guilherme S. Salustiano
5f1b80d40b remove jewel dependency 2024-02-07 18:04:29 +01:00
Guilherme S. Salustiano
d408056a66 remove default on radio 2024-02-07 17:16:46 +01:00
Guilherme S. Salustiano
847b8be814 feat/implement ble radio on nrf 2024-02-07 15:38:39 +01:00
Dario Nieuwenhuis
ad7d4494fa
Merge pull request #2502 from jbeaurivage/nrf-uarte-errors
NRF: handle `uarte` RX errors
2024-02-05 23:36:42 +00:00
Justin Beaurivage
2575f597cc Address @Dirbaio's comments 2024-02-05 18:05:59 -05:00
Dario Nieuwenhuis
d5d86b866f nrf/gpiote: add support for nrf51. 2024-02-04 21:36:19 +01:00
Justin Beaurivage
cc12eb9680 Rustfmt 2024-01-31 14:20:06 -05:00
Justin Beaurivage
d364447a34 Add error handling to UarteRxWithIdle 2024-01-31 14:16:58 -05:00
Dario Nieuwenhuis
68be63c0e8
Merge pull request #2469 from embassy-rs/nrf51-basic-support
feat: add basic support for nRF51 chips to embassy-nrf
2024-01-31 00:20:40 +00:00
Justin Beaurivage
7ff21e8b8b Handle Uarte RX errors 2024-01-30 17:06:57 -05:00
Martin Marmsoler
319b0fe3d7 Do not wait when the pwm is disabled
Reason: because in this case no seqend event is raised and therefore an infinity loop occurs
2024-01-27 18:21:40 +01:00
Martin Marmsoler
b08a0955c3 implement retriving duty.
Description: When disabling the pwm and enabling again, it is required to restart the sequence. If the previous duty is not known, it is not possible to turn on the pwm again
2024-01-27 18:21:40 +01:00
Matthew Tran
6efb5fd284 nrf/spi: add bit order config 2024-01-26 22:38:03 -06:00
Martin Marmsoler
2809d3bd45 add is_enabled() function 2024-01-26 22:09:49 +01:00
Martin Marmsoler
c26e62e4f4 add documentation 2024-01-26 21:24:14 +01:00
Martin Marmsoler
dd2577fcf0 use constant for the pwm clock
Description: So it can be used outside of the crate to calculate max duty
2024-01-26 20:55:53 +01:00
Ulf Lilleengen
531645e5d4 docs: mention nrf51 2024-01-26 09:11:17 +01:00
Ulf Lilleengen
1263d28595 nightly fmt 2024-01-25 08:39:25 +01:00
Ulf Lilleengen
3739cc0699 fix warnings 2024-01-25 08:38:28 +01:00
Ulf Lilleengen
1989c229f9 fix: make inner state send as it's protected critical section 2024-01-25 08:38:01 +01:00
Ulf Lilleengen
db0f4a0b91 cleanup 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
7d961a7f44 cargo fmt 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
3ac52b2c48 remove portable-atomic dependency 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
00d66cce1d modify time driver to not require portable-atomic 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
6126183db8 fix: remove portable-atomic from rng 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
53ea850d28 rustfmt again 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
2a810a1a6a rustfmt 2024-01-24 21:23:54 +01:00
Ulf Lilleengen
4410aacafb feat: add basic support for nRF51 chips to embassy-nrf 2024-01-24 21:23:54 +01:00
Dario Nieuwenhuis
2bc5e9523d nrf/gpio: remove generics. 2024-01-22 21:32:10 +01:00
Dario Nieuwenhuis
4c23f197b3 Fix invalid "async" crates.io category. 2024-01-12 00:39:01 +01:00
Dario Nieuwenhuis
6a1c415a4c Complete cargo.tomls more. 2024-01-12 00:32:47 +01:00
Dario Nieuwenhuis
9f6517e408 stm32,nrf: add warning on docs.rs directing the user to docs.embassy.dev. 2024-01-11 23:43:17 +01:00
Dario Nieuwenhuis
5304994363 Add docs.rs metadata to all crates. 2024-01-11 23:17:02 +01:00
Dario Nieuwenhuis
22197320ff bump embassy-time 0.3, embassy-executor 0.5, embassy-net 0.4. 2024-01-11 23:01:24 +01:00
Dario Nieuwenhuis
e18d673721 More readme fixes. 2024-01-11 21:23:07 +01:00
Dario Nieuwenhuis
b0b1ef9181
Merge pull request #2436 from embassy-rs/embassy-nrf-docs-nrf91-example
Embassy nrf docs and nrf91 example
2024-01-11 19:52:18 +00:00
Ulf Lilleengen
4cc2648547 change title 2024-01-11 20:34:30 +01:00
Ulf Lilleengen
9a269803bd restructure 2024-01-11 20:32:07 +01:00
Ulf Lilleengen
46602903f5 note on timer 2024-01-11 19:26:49 +01:00
Ulf Lilleengen
f9e274e057 docs: more docs on nrf 2024-01-11 19:21:33 +01:00
Dario Nieuwenhuis
b452a6bcf6 Centralize license and MSRV boilerplate into the repo readme. 2024-01-11 18:18:35 +01:00
Dario Nieuwenhuis
15f94fb0fc time: split driver into a separate embassy-time-driver crate. 2024-01-11 16:56:08 +01:00
Dario Nieuwenhuis
495b8b739a Change GPIO inherent methods back to &self.
With the embedded-hal rc3 update I changed them to require `&mut self`, but
in retrospect I think `&self` is better, for extra flexibility.

This PR reverts the changes from the rc3 update to inherent methods.
2024-01-10 00:00:10 +01:00
Dario Nieuwenhuis
c9ac39df94 Update embedded-hal to v1.0 2024-01-09 23:37:14 +01:00
ftilde
eb70d744a9 Expose rx_delay in nrf qspi config 2024-01-05 20:12:28 +01:00
swanandx
bdaf722cb8 fix: check if sck is some before setting high or low 2024-01-03 19:35:30 +05:30
swanandx
046af81a10 fix: info_ref! can't be called on Option 2024-01-03 19:33:43 +05:30
swanandx
8352d13cfd feat: new_txonly_nosck in spim 2024-01-03 19:25:39 +05:30
swanandx
face031245 feat: new_txonly_nosck in spis 2024-01-03 19:22:01 +05:30
Ulf Lilleengen
c924f89ead fix: add missing impl block for async qspi multiwrite 2024-01-03 13:08:53 +01:00
ftilde
3916b26b25 Reset rx_started state of nrf buffered_uarte on init
This was likely forgotten as part of c46418f12. Without this, when
creating a uarte instance, dropping it and then creating another
instance, this instance would never receive any bytes.
2023-12-29 12:27:52 +01:00
Dario Nieuwenhuis
7fa954c027 nrf/gpio: add toggle. 2023-12-26 17:35:49 +01:00
Dario Nieuwenhuis
c46b076d5b nrf: some doc fixes. 2023-12-23 15:48:47 +01:00
Barnaby Walters
05c8d410a2 [embassy-nrf] auto-documented features 2023-12-22 23:37:29 +01:00
Ulf Lilleengen
e45e3e76b5 docs: embassy-rp rustdoc and refactoring 2023-12-19 10:56:22 +01:00
Dario Nieuwenhuis
49534cd405 stm32: more docs. 2023-12-19 00:10:36 +01:00
Ulf Lilleengen
2a542bc143 feat: support multiwrite flash traits if configured 2023-12-18 13:58:12 +01:00
Dario Nieuwenhuis
80c9d04bbd stm32: add some docs. 2023-12-18 00:53:18 +01:00
Dario Nieuwenhuis
d81395fab3 Update embedded-hal to 1.0.0-rc.3 2023-12-14 16:19:32 +01:00
Dario Nieuwenhuis
6c746dcf39 Document how to bind multiple interrupts and handlers in bind_interrupts!. 2023-12-08 21:26:28 +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
Peter Hansen
9fb2eb7470 nrf52/qspi: avoid infinite busy-wait on QSPI read/write with zero-len buffer, fixes #2115 2023-12-03 16:35:39 -05:00
Peter Hansen
dd62bb16e5 minimum build code for new APPROTECT is chip type-specific 2023-12-03 13:47:26 -05: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
c46418f123 nrf/buffered_uarte: fix hang when buffer full due to PPI missing the endrx event.
Fixes #2181
2023-11-14 00:22:17 +01:00
Dario Nieuwenhuis
19ff043acd nrf/buffered_uarte: fix missing hwfc enable. 2023-11-13 22:37:13 +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
Dario Nieuwenhuis
2795e1350d
Merge pull request #2128 from bugadani/poll
Drop `futures` dependency in `embassy-nrf`
2023-10-31 15:53:54 +00:00
Dániel Buga
aed3e5674f Drop futures dependency in embassy-nrf 2023-10-31 10:13:27 +01: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
Dániel Buga
ad07ea0290 Re-add impl_trait_projections 2023-10-30 19:10:45 +01:00
Dario Nieuwenhuis
213b4c9dca time: add links key, release v0.1.5. 2023-10-16 20:11:35 +02:00
Dario Nieuwenhuis
ea0e83a7f9 nrf/pac: reeport s and ns peripherals always independently of the current mode.
You sometimes need this, for example for using nrf91 modem from S mode
you need to acces IPC_NS.
2023-10-16 19:38:53 +02:00
Dániel Buga
02d2c06b23 Release embassy-time 0.1.4 2023-10-12 18:14:33 +02:00