1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

6435 Commits

Author SHA1 Message Date
Miquel-HAW
d45a179a2e boards/b-l475e-iot01a: Adapt lsm6dsxx params 2024-01-24 09:57:04 +01:00
Marian Buschsieweke
e5cb676dfe
Merge pull request #20286 from chrysn-pull-requests/nrf52dk-arduino
boards/nrf52dk: Minimal Arduino pinout support
2024-01-23 05:27:23 +00:00
chrysn
7452a61e64 fixup! boards/nrf52dk: Minimal Arduino pinout support 2024-01-23 01:12:06 +01:00
chrysn
b0a46c2eba boards/nrf52dk arduino: Declare SPI (side SPI) support 2024-01-23 00:39:03 +01:00
chrysn
ecfa2f7573 boards/nrf52dk: Minimal Arduino pinout support 2024-01-22 23:44:16 +01:00
Marian Buschsieweke
63ec7fc7b5
Merge pull request #19835 from maribu/msp430
cpu/msp430: rework MSP430 x1xx periph drivers
2024-01-22 18:41:23 +00:00
Marian Buschsieweke
407deabc0f
boards/olimex-msp430-h1611: uart_stdio @ 9600 Bd 2024-01-22 16:59:23 +01:00
Marian Buschsieweke
675dcc381c
cpu/msp430: rework MSP430 x1xx periph drivers
- Move common code for USART (shared SPI / UART peripheral) to its
  own file and allow sharing the USART peripheral to provide both
  UART and SPI in round-robin fashion.
- Configure both UART and SPI bus via a `struct` in the board's
  `periph_conf.h`
    - this allows allocating the two UARTs as needed by the use case
    - since both USARTs signals have a fixed connection to a single
      GPIO, most configuration is moved to the CPU
    - the board now only needs to decide which bus is provided by
      which USART

Note: Sharing an USART used as UART requires cooperation from the app:
- If the UART is used in TX-only mode (no RX callback), the driver
  will release the USART while not sending
- If the UART is used to also receive, the application needs to power
  the UART down while not expecting something to send. An
  `spi_acquire()` will be blocked while the UART is powered up.
2024-01-22 16:59:23 +01:00
Marian Buschsieweke
504c169346
Merge pull request #20270 from maribu/boards/gd32vf103c-start
boards/gd32vf103c-start: new board
2024-01-20 16:11:31 +00:00
Marian Buschsieweke
c6c5d9a1a7
boards/common/gd32v: reorder members in initialization
C has this feature that the order of struct members in the
initialization doesn't need to match the order in the declaration.
C++ has not yet caught up:

    boards/common/gd32v/include/cfg_usbdev_default.h:50:1: error: designator order for field 'dwc2_usb_otg_fshs_config_t::type' does not match declaration order in 'const dwc2_usb_otg_fshs_config_t'

So, just reorder the fields for now by hand.
2024-01-20 16:42:49 +01:00
Marian Buschsieweke
7f27e6cc7f
boards/gd32vf103c-start: new board
This adds support for the GD32VF103C-START, the official "starter board"
for the GD32VF103C MCU by the MCU vendor.
2024-01-19 23:17:35 +01:00
Marian Buschsieweke
9fbb23b167
boards/common/gd32v: make common OpenOCD config opt-in
Let boards explicitly use the common OpenOCD config if it works for
them, rather than having boards with specific needs opt out.
2024-01-19 23:17:35 +01:00
benpicco
912294912a
Merge pull request #20264 from benpicco/boards/native-term_fix
boards/native: only use pyterm wrapper with term target
2024-01-19 14:31:39 +00:00
Benjamin Valentin
e5618f705b boards/native: set and test for pyterm explicitly 2024-01-19 14:42:03 +01:00
Marian Buschsieweke
c4fbcfad21
boards/e180-zg120b-tb: Document correct pin mapping
Revision 10199-V1.0 of the board has an incorrect pin labeling on the
silkscreen, presumably because the board was initially developed
for a different E180 module and the silkscreen was not updated when
populated with a different E180 module.

It is very likely that if newer revisions of the test board get
produced, they will use the same very systematical routing as revision
1.0 and only the silkscreen labeling will be fixed. Hence, documenting
the correct pin mapping will be useful even for newer revisions.
2024-01-18 13:52:36 +01:00
Marian Buschsieweke
f22fc0080b
boards/common/gd32v: Allow overwriting OPENOCD_TRANSPORT 2024-01-17 09:16:26 +01:00
Benjamin Valentin
3c31000a61 boards/native: only use pyterm wrapper with term target 2024-01-16 15:15:06 +01:00
Marian Buschsieweke
f5a9e084c9
boards/e180-zg120b-tb: add support for OpenOCD 2024-01-13 12:03:15 +01:00
Benjamin Valentin
235d3f059c boards/samd2x-xpro: enable riotboot 2024-01-11 14:38:35 +01:00
Gunar Schorcht
517cbc59ff boards/esp32-wrover-kit: add SDMMC support 2024-01-05 07:22:27 +01:00
Gunar Schorcht
7ba9cbe736 boards/esp32-olimex-evb: add SDMMC support 2024-01-05 07:22:27 +01:00
Gunar Schorcht
a376b3c915 boards/common/esp32x: add sanity check for SPI in case SDMMC is used 2024-01-05 07:22:27 +01:00
Gunar Schorcht
c4de343577 board/esp32-mh-et-live-minikit: improve the use of SPI SD Card module 2024-01-05 07:22:27 +01:00
Gunar Schorcht
5646cc02e4 boards/common/esp32x: add SDMMC support 2024-01-05 07:22:27 +01:00
Marian Buschsieweke
866f2a00c0
Merge pull request #20226 from maribu/boards/generic-cc2538-cc2592-dk
boards/generic-cc2538-cc2592-dk: add board support
2024-01-05 00:35:11 +00:00
Marian Buschsieweke
947d05ed77
boards/generic-cc2538-cc2592-dk: add board support
The CC2538-CC2592-DK is one of the few readily available and
affordable boards featuring a legacy CC2538 MCU. This should make
maintaining RIOT support for that legacy MCU more affordable :-)
2024-01-05 00:00:48 +01:00
benpicco
a04167004f
Merge pull request #20225 from MrKevinWeiss/pr/nucleo413/dmafix
boards/nucleo-f413zh: Fix DMA mapping
2024-01-03 14:07:37 +00:00
MrKevinWeiss
9f04b78c2e
boards/nucleo-f413zh: Fix DMA mapping 2024-01-03 14:20:20 +01:00
Marian Buschsieweke
f860d96a25
Merge pull request #19891 from chrysn-pull-requests/ws2181x_timer
drivers/ws281x: Add gpio_ll and timer based driver
2024-01-03 09:22:26 +00:00
Marian Buschsieweke
0aa87aa242
Merge pull request #20215 from benpicco/tests/native-term
makefiles/tests/tests.inc.mk: use native term for tests
2024-01-02 10:35:36 +00:00
krzysztof-cabaj
3326b0cd5b boards/nucleo: fix typo - or RAM 2024-01-01 13:07:49 +01:00
benpicco
7c2f091b39
Merge pull request #19540 from gschorcht/cpu/stm32/periph/sdmmc
cpu/stm32/periph: add low-level SDMMC peripheral driver
2023-12-23 21:25:59 +00:00
Oleg Hahm
59b687cf68 boards/native: forward eeprom flags to pyterm 2023-12-23 20:27:47 +01:00
Gunar Schorcht
b3f3e16771 boards/stm32f7508-dk: add SDMMC support 2023-12-23 17:18:37 +01:00
Oleg Hahm
c0e71b0592
Merge pull request #20172 from OlegHahm/pr/pyterm_native_pipe
pyterm: add native support
2023-12-21 23:08:22 +00:00
Gunar Schorcht
2c2e70fb17 boards/stm32l496g-disco: add SDMMC support 2023-12-21 18:37:43 +01:00
Gunar Schorcht
ae4ba633d9 boards/stm32f746g-disco: add SD Card interface support 2023-12-21 18:37:43 +01:00
krzysztof-cabaj
d8423cb4d6 boards/nucleo-l452re: fix typo 2023-12-20 19:48:43 +01:00
krzysztof-cabaj
fb07cc054a boards/nucleo-l452re: doc update 2023-12-20 16:56:01 +01:00
MrKevinWeiss
6a0b1c59c5
boards/nrf9160dk: Override WS281X_TIMER_* 2023-12-19 11:13:45 +01:00
MrKevinWeiss
fb5ebea1a5
boards/common/e104-bt50xxa-tb: Override WS281X_TIMER_* 2023-12-19 11:13:44 +01:00
MrKevinWeiss
0d31432cb3
boards/nrf51: Defined TIMER_x_MAX_VALUE 2023-12-19 11:13:44 +01:00
chrysn
d32c32ffae
boards/nrf52: Defined TIMER_x_MAX_VALUE
The macro's presence is documented in `timer_init`, but was missing from
this platform.
2023-12-19 11:13:41 +01:00
Oleg Hahm
dd184614d8 pyterm: native: remove superfluous tap argument 2023-12-18 20:00:44 +01:00
Oleg Hahm
075f2ffd6a pyterm: label pyterm arg for native generically 2023-12-18 20:00:44 +01:00
Oleg Hahm
273486be78 examples: tests: unify native arguments for ZEP 2023-12-18 20:00:44 +01:00
Oleg Hahm
2b779fc5a9 native: only set TERMFLAGS for pyterm
If TERMPROG is unset the default is pyterm. If TERMPROG is pyterm we
need to set the native flag.
2023-12-18 13:44:20 +01:00
Oleg Hahm
66343e3bc7 pyterm: add native support
Start RIOT native as a subprocess and communicate to it via a pipe.
2023-12-18 13:44:20 +01:00
Dylan Laduranty
75c27f8c31
Merge pull request #20183 from benpicco/boards/same54-xpro-uart_hw_fc
boards/same54-xpro: configure pins for UART HW flow control & ethernet LED
2023-12-14 19:55:08 +00:00
Benjamin Valentin
8db01f6df1 boards/same54-xpro: configure orange ethernet LED
There is a software controlled LED on the RJ45 connector.
Export it via SAUL.
2023-12-14 15:21:54 +01:00
Benjamin Valentin
fb6e3c01c7 boards/same54-xpro: configure pins for UART HW flow control 2023-12-14 15:07:10 +01:00
Marian Buschsieweke
1d11a2a281
boards/wemos-zero: fix flashing and doc
Fix flashing with `MOST_RECENT_PORT=1` by detecting the board when
either in RIOT mode or in bootloader mode (which matches different
USB vendor and model strings).

Support for programming with the nrf52-u2f bootloader was dropped
apparently, but the documentation still recommends that over the
Arduino Bootloader. This brings doc and code in sync.
2023-12-13 15:40:41 +01:00
Marian Buschsieweke
bb07bb6613
Merge pull request #20160 from maribu/cpu/msp430/timer
cpu/msp430: improve periph_timer
2023-12-10 13:02:30 +00:00
Marian Buschsieweke
b51ea4ca24
boards: clean up MSP430 board configuration
Move common configuration for MSP430 based boards to
`boards/common/msp430` and make use of that.
2023-12-10 09:11:24 +01:00
Marian Buschsieweke
7044699388
cpu/msp430: improve periph_timer
- add support for multiple timers
- add support for selecting clock source in the board's `periph_conf.h`
- add support for the prescaler
- implement `periph_timer_query_freqs`
- add a second timer to all MSP430 boards
    - the first timer is fast ticking, high-power
    - the second is slow ticking, low-power
2023-12-10 09:11:23 +01:00
Gunar Schorcht
26030e28af boards: remove extern mtd_dev_t* Declarations 2023-12-07 15:32:49 +01:00
Gunar Schorcht
8f01dbfecb
Merge pull request #20153 from maribu/boards/esp32-ethernet-kit/board-filter
boards/esp32*: add TTY board filter
2023-12-06 10:41:29 +00:00
Marian Buschsieweke
f80f47ccf6
boards/esp32s2-lilygo-ttgo-t8: add TTY board filter
When using `make flash` or `make term` with `MOST_RECENT_PORT=1`, RIOT
should now only consider plausible TTYs and select the most recently
connected one. The filter is a bit broad, though, and will match
any board with a CH430 UART2USB bridge. But depending on the boards
attached, it might be good enough to reliably tell it apart from
other boards.
2023-12-06 11:14:22 +01:00
Marian Buschsieweke
9dcbab218a
boards/esp32-olimex-evb,esp32-wemos-lolin-d32-pro: add TTY board filter
When using `make flash` or `make term` with `MOST_RECENT_PORT=1`, RIOT
should now only consider plausible TTYs and select the most recently
connected one. The filter is a bit broad, though, and will match
any board with a CH430 USB 2.0 UART2USB bridge. But depending on the
boards attached, it might be good enough to reliably tell it apart from
other boards.
2023-12-06 11:14:22 +01:00
Marian Buschsieweke
9308a6f526
boards/esp32-mh-et-live-minikit,esp32-ttgo-t-beam: add TTY board filter
When using `make flash` or `make term` with `MOST_RECENT_PORT=1`, RIOT
should now only consider plausible TTYs and select the most recently
connected one. The filter is a bit broad, though, and will match
any board with a CP2104 USB2UART bridge. But depending on the boards
attached, it might be good enough to reliably tell it apart from other
boards.
2023-12-06 11:14:21 +01:00
Marian Buschsieweke
7228cf1108
boards/esp32*-devkit: add TTY board filter
When using `make flash` or `make term` with `MOST_RECENT_PORT=1`, RIOT
should now only consider plausible TTYs and select the most recently
connected one. The filter is a bit broad, though, and will match
any board with a CP2102N USB2UART bridge. But depending on the boards
attached, it might be good enough to reliably tell it apart from other
boards.
2023-12-06 11:14:21 +01:00
Marian Buschsieweke
03a1a02ec2
boards/esp32-wroom-32: add TTY board filter
When using `make flash` or `make term` with `MOST_RECENT_PORT=1`, RIOT
should now only consider plausible TTYs and select the most recently
connected one. The filter is a bit broad, though, and will match
any board with a CP2102 USB2UART bridge. But depending on the boards
attached, it might be good enough to reliably tell it apart from other
boards.
2023-12-06 11:14:21 +01:00
Marian Buschsieweke
28a5ec3911
boards/esp32-*-kit*: add TTY board filter
When using `make flash` or `make term` with `MOST_RECENT_PORT=1`, RIOT
should now select relatively robustly the most recently connected
ESP32 Ethernet Kit / ESP32 Wrover Kit board, even with other TTYs
present. This is because the FTDI Dual RS232-HS with two USB2UART
bridges in the chip would be an expensive overkill for most boards,
unless one is using the FTDI chip to big-bang JTAG as well - as done
on the Ethernet Kit and Wrover Kit boards.
2023-12-06 11:14:21 +01:00
Gunar Schorcht
6c1b93d2a7 boards/esp32s3-usb-otg: fix table of contents in doc 2023-12-06 08:02:48 +01:00
Gerson Fernando Budke
859d587afd
boards/atmega328p-xplained-mini: Add BTN0 and LED0
The board have one user button and a user led but are not enabled.
This add necessary support to use the button and the led. It include
the configs to use with SAUL and button interrupt.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2023-12-01 14:12:24 +01:00
krzysztof-cabaj
c0a4b9c3a5 boards/p-nucleo-wb55: doc update concerning PWM 2023-11-29 19:45:37 +01:00
krzysztof-cabaj
4a2ea66e16 boards/p-nucleo-wb55: full PWM config in periph_conf.h 2023-11-29 19:43:06 +01:00
krzysztof-cabaj
2e4018ea57 boards/p-nucleo-wb55: PWM config: Kconfig, Makefile.features, periph_conf.h 2023-11-29 19:43:06 +01:00
benpicco
0306600c84
Merge pull request #20115 from krzysztof-cabaj/nucleo-wb55-DOC
boards/p-nucleo-wb55: documentation update
2023-11-28 17:44:12 +00:00
krzysztof-cabaj
e73c18167a boards/p-nucleo-wb55: documentation update 2023-11-27 20:22:20 +01:00
benpicco
c93a5b84a3
Merge pull request #20020 from gompper/periph/freqm
drivers/include/periph: add FREQM peripheral driver
2023-11-27 16:06:52 +00:00
Marian Buschsieweke
73bde97e9d
Merge pull request #20102 from maribu/cpu/nrf5x_common/clean_up_uart
cpu/nrf5x: clean up periph_uart
2023-11-26 20:43:29 +00:00
Marian Buschsieweke
63faa5f162
cpu/nrf5x: clean up periph_uart
- nRF51: Use `uart_conf_t` for consistency with nRF52
- nRF52832: Use UARTE (UART with EasyDMA) over UART (without DMA), as
  done for all other nRF52 family members
- use `UARTE_PRESENT` to detect whether an UARTE can be used, rather
  than family names
2023-11-26 21:33:23 +01:00
Marian Buschsieweke
f55af92735
boards/nrf51dk: add arduino features 2023-11-24 09:49:19 +01:00
Marian Buschsieweke
fa0b6824d2
boards/nrf51dk: add periph_adc 2023-11-24 09:49:11 +01:00
Urs Gompper
a2e4fa30fd boards/same54-xpro: overwrite GCLK definitions 2023-11-23 21:00:16 +01:00
Urs Gompper
6849ef9827 boards/same54-xpro: added FREQM peripheral configuration 2023-11-23 21:00:16 +01:00
Urs Gompper
82f803b7cf boards/same54-xpro: add freqm peripheral to Kconfig 2023-11-23 20:53:15 +01:00
Urs Gompper
c2f7aa66f9 boards/same54-xpro: add periph_freqm to Makefile.features 2023-11-23 20:53:14 +01:00
Marian Buschsieweke
1cdd114e6c
Merge pull request #20097 from maribu/boards/nucleo-f303re
boards/nucleo-f303re: add more timers
2023-11-21 12:59:09 +00:00
Marian Buschsieweke
2853e9b59c
Merge pull request #20098 from krzysztof-cabaj/nucleo-l433rc-DOC
boards/nucleo-l433rc: doc update - image and MCU table
2023-11-21 09:06:43 +00:00
Marian Buschsieweke
3848a37d14
boards/nucleo-f303re: add more timers 2023-11-21 09:02:31 +01:00
krzysztof-cabaj
04d08e4c2e boards/nucleo-l433rc: doc update - image and MCU table 2023-11-20 21:34:13 +01:00
Marian Buschsieweke
f9e4affd19
Merge pull request #19792 from kyleb29/bugfix-19787
cpu/stm32/periph_i2c: prevent corrupting AFIO->MAPR
2023-11-20 20:33:16 +00:00
Kyle Burk
986488db85
cpu/stm32/f1: prevent corrupting AFIO->MAPR
The `SWJ_CFG` field of the `AFIO_MAPR` register is write only and values
read are undefined (random). Hence, using `AFIO->MAPR |= mask;` to
enable flags can corrupt the state of the `SWJ_CFG` (configure it to
an unintended value).

Two helper functions have been introduced:
- `afio_mapr_read()` reads the value, but sanitizes the `SWJ_CFG` field
  to zero
- `afio_mapr_write()` writes the given value, but applies the `SWJ_CFG`
  configured by the board before writing.

Finally, the `nucleo-f103rb` and `bluepill*`/`blackpill*` boards have
been updated to no longer specify `STM32F1_DISABLE_JTAG`, as this
is handled by the `SWJ_CFG` setting (which defaults to disabling JTAG).
2023-11-20 20:28:52 +01:00
Marian Buschsieweke
61af0f38f8
boards/p-nucleo-wb55: Add pinout and clean up doc 2023-11-16 11:14:45 +01:00
Marian Buschsieweke
7446cf543a
boards/common/nucleo64: fix doc 2023-11-15 09:57:42 +01:00
Marian Buschsieweke
08379cde27
boards/p-nucleo-wb55: provide Arduino features
This provides the features:
- `arduino_i2c`
- `arduino_spi`
- `arduino_uart`
2023-11-15 09:56:45 +01:00
Marian Buschsieweke
c7ded84e0c
boards/nucleo-wl55jc: Fix Arduino SPI bus
The macro `ARDUINO_SPI_D11D12D13` is used to refer to the SPI bus
on the pins D11/D12/D13 on Arduino UNO compatible boards. For all
Nucleo64 boards this is `SPI_DEV(0)`, but for this board `SPI_DEV(0)`
is internally connected to the radio. Instead `SPI_DEV(1)` is connected
to the correct pins. This provides the macro explicitly in
`periph_conf.h`, which takes preference over the fallback in
`boards/common/nucleo64` when provided.
2023-11-14 16:16:28 +01:00
benpicco
a24066be93
Merge pull request #20082 from maribu/board/nucleo-f030r8
boards/nucleo-f030r8: enable SPI and I2C
2023-11-14 13:18:35 +00:00
Marian Buschsieweke
882ab0059a
boards/nucleo-f030r8: enable SPI and I2C
The SPI configuration was already provided, but the feature never
exposed. The common PB8/PB9 I2C config is used to for I2C.
2023-11-13 16:18:04 +01:00
Gunar Schorcht
4e85968145 boards/esp32s3-wt32-sc01-plus: enable LCD parallel interface 2023-11-13 13:01:57 +01:00
benpicco
5e0968a6f6
Merge pull request #20075 from krzysztof-cabaj/nucleo-f070-SPI
boards/nucleo-f070rb: add SPI configuration
2023-11-10 23:06:38 +00:00
krzysztof-cabaj
ca93d1793e boards/nucleo-f070rb: full SPI config in periph_conf.h 2023-11-10 16:31:23 +01:00
Marian Buschsieweke
fe6c94070b
boards/nucleo-wl55jc: Add missing ARDUINO_I2C_UNO
The feature `arduino_i2c` was already provided, but the define this
feature indicates to be present is missing.
2023-11-10 16:29:51 +01:00
krzysztof-cabaj
d97ea9dbd3 boards/nucleo-f070rb: SPI config: Kconfig, Makefile.features, periph_conf.h 2023-11-10 14:05:14 +01:00
fce429d19f
Merge pull request #20072 from gschorcht/boards/esp32/fix_doc
boards/common/esp32x: fix doxygen group
2023-11-09 18:54:17 +00:00
Gunar Schorcht
03e2537be5 boards/common/esp32x: fix doxygen group 2023-11-09 16:46:09 +01:00
bors[bot]
c0ae75b339
Merge #20003 #20028 #20036 #20041
20003: coap: create typedef for CoAP methods r=benpicco a=benpicco



20028: nanocoap: fix incorrect uses of coap_get_code() r=benpicco a=benpicco



20036: boards/nucleo-l4r5zi : add PWM configuration r=benpicco a=krzysztof-cabaj

### Contribution description

This PR adds to the Nucleo-l4r5zi PWM configuration

### Testing procedure

Flash the board using `tests/periph/pwm` program. Check if you could, for example, change LED 
intensity using PWM. 

### Issues/PRs references

None.

20041: pkg/littlefs2: bump to v2.8.1 r=benpicco a=bergzand

### Contribution description

Minor version number bump.

### Testing procedure

- Check if I copied the correct commit hash.
- Run the tests.


### Issues/PRs references

None

Co-authored-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
Co-authored-by: krzysztof-cabaj <kcabaj@gmail.com>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
2023-11-02 11:01:23 +00:00
krzysztof-cabaj
8899a5996f boards/nucleo-l4r5zi: full PWM config in periph_conf.h 2023-11-01 18:33:44 +01:00