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

483 Commits

Author SHA1 Message Date
Marian Buschsieweke
3bede9c734
doc: replace obsolete xitter link with mastodon link 2024-03-01 09:38:46 +01:00
Dylan Laduranty
5b2beea08a
Merge pull request #20426 from maribu/doc/getting-started/windows
doc: Add guide for dev setup on Windows
2024-02-28 09:58:48 +00:00
Marian Buschsieweke
8b088c8d4a
doc: Add guide for dev setup on Windows
This adds a step-by-step guide to install a dev setup based on
WSL2 / Ubuntu and native VS Code with the WSL extension. The guide
uses screenshots and adds annotations on top using Inkscape, so that
every click is documented.

The Inkscape sources are also added to allow adjusting / fixing the
annotations later on without having to record a new set of screenshots.

Co-authored-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
2024-02-28 10:18:39 +01:00
chrysn
9e5e66540d
Merge pull request #20366 from maribu/makefiles/existing_features
build system: add list of features for documentation and sanity checking
2024-02-25 15:36:15 +00:00
chrysn
fee994b9d5
Merge pull request #18589 from chrysn-pull-requests/rdm-board-names
RDM: Naming boards
2024-02-24 23:47:45 +00:00
Marian Buschsieweke
dc040a0fdb
build system: Make use of YAML feature list 2024-02-23 15:12:11 +01:00
chrysn
148a8c195c RDM 0003: is accepted 2024-02-22 22:26:41 +01:00
chrysn
15a090011f RDM: Naming boards 2024-02-22 22:03:27 +01:00
Marian Buschsieweke
3c5ae563d6
doc/roadmap: update contacts
Hauke has stopped working on RIOT for some time now and other
maintainers agreed to step up to take over the steering / contact job
during the VMA. This change replaces Hauke by benpicco and maribu as
contact as agreed upon.
2024-02-22 09:16:50 +01:00
7b92a1beb2
Roadmap: Add Home-Assistant integration on the roadmap 2024-02-21 11:40:54 +01:00
chrysn
2f5ad41e41 doc/roadmap: Make working 6LBR a goal 2024-02-07 14:54:52 +01:00
Marian Buschsieweke
57ecb896ec
doc/getting-started: point out where to run make 2024-02-04 17:54:02 +01:00
chrysn
50c9d93951 rust/doc: Document make info-rust for IDE/editor setup 2024-02-01 14:39:43 +01:00
chrysn
6724884b93 makefiles/rust: Remove CARGO_CHANNEL special casing
Back when specific control of the Rust version used with RIOT was
needed, CARGO_CHANNEL was added to explicitly set the Rust version with
consideration for CI special cases.

Rust's mechansims of selecting a toolchain can be used instead now.
2024-01-31 12:25:09 +01:00
Benjamin Valentin
ca97f8ab2b doc/mainpage: don't claim to be a microkernel
We are clearly not and this just sets wrong expectations.
2024-01-11 16:59:50 +01:00
Marian Buschsieweke
82b7e10988
dist/tools/zsh-completion: provide completion for zsh
This adds command completion that, when manually installed, provides
RIOT-aware command completion for `make` in zsh. The completion
supports:

- most commonly used `make` goals including a help text
- most commonly used `make` variables (such as `BOARD=`, `LTO=`,
  `BUILD_IN_DOCKER=`, `TOOLCHAIN=`)
    - possible values for these variables, including a list of boards
      detected at runtime to complete `BOARD=`

Co-authored-by: mguetschow <mikolai.guetschow@tu-dresden.de>
2024-01-08 13:48:17 +01:00
Marian Buschsieweke
25e3bcca3b
roadmap: extend peripheral drivers section 2023-12-07 09:22:40 +01:00
Marian Buschsieweke
e7e50caa53
doc: clean up roadmap
- drop completed tasks
- drop tasks that make no sense anymore (e.g. cleanup up MIPS, as
  MIPS was dropped or improving xtimer, as it was superseded by
  ztimer)
2023-12-01 12:40:13 +01:00
chrysn
5542ecd9a7 doc: Extend and take responsibility for 802.15.4 security roadmap 2023-11-30 13:42:57 +01:00
chrysn
7b01d41eca doc: Whitespace cleanup 2023-11-30 11:43:20 +01:00
chrysn
b5b7826b0c doc: Adjust markdown styles from GitHub to doxygen 2023-11-30 11:41:58 +01:00
chrysn
07a26742a4 doc: roadmap now done through pull requests 2023-11-30 11:40:13 +01:00
chrysn
437fb43f12 doc: Move roadmap in from the wiki
This copies the version of 2020-05-29, with only the header line added.
2023-11-30 11:22:29 +01:00
Marian Buschsieweke
61af0f38f8
boards/p-nucleo-wb55: Add pinout and clean up doc 2023-11-16 11:14:45 +01:00
Lena Boeckmann
d4c73d6a30 sys: Add PSA Crypto Module 2023-08-31 14:38:49 +02:00
bors[bot]
ddf1fe252d
Merge #19733 #19747 #19769 #19782
19733: cpu/msp430: reorganize code r=maribu a=maribu

### Contribution description

RIOT supports two distinct families of the MSP430: The [MSP430 x1xx] MCU family and the [MSP430 F2xx/G2xx] MCU family. For both incompatible MCU families the code was located in the msp430fxyz folder, resulting in case of the UART driver in particularly bizarre code looking roughly like this:

```C
#ifndef UART_USE_USCI
/* implementation of x1xx peripheral ... */
#else
/* implementation of F2xx/G2xx peripheral ... */
#endif
/* zero shared code between both variants */
```

This moves peripheral drivers shared between the two families to msp430_common and splits the SPI and UART driver into two MCU families.

In addition, it cleans up the `msp430_regs.h` by dropping most of it and using the macros and symbols provided by the vendor header files. There is little reason for us to maintain constants when TI is already doing that.

[MSP430 x1xx]: https://www.ti.com/lit/ug/slau049f/slau049f.pdf
[MSP430 F2xx/G2xx]: https://www.ti.com/lit/ug/slau144k/slau144k.pdf


19747: gnrc/ipv6/nib: reset rs_sent counter also for not-6LN interfaces r=maribu a=fabian18



19769: cpu/nrf53: add initial support with nRF5340DK-APP board r=maribu a=dylad

### Contribution description

This PR adds support for nRF5340 MCU and its associated Nordic development board, nRF5340DK.
This MCU provides a dual Cortex-M33, one application core running at up to 128MHz, and one network core running at up to 64MHz.
Peripherals are inherited from others Nordic MCUs families so it shouldn't be hard to add more of them in followup PRs.

For now, only the minimal set of peripherals is supported:
- GPIO / GPIO_IRQ
- UART
- TIMER

### Testing procedure
Build the usual test application for the supported peripherals and flash the board.
nRF5340DK provides two serial ports on its embedded debugger. RIOT's shell should be available on the first one (/dev/ttyACM0)


### Issues/PRs references
#18576
#19267 


19782: cpu/msp430: fix for ti's msp430-gcc-opensource package ld version r=maribu a=hugueslarrive

### Contribution description
My msp430 toolchain (https://www.ti.com/tool/MSP430-GCC-OPENSOURCE) was broken by #19484:
```
hugues@p700:~/github/cpu_msp430_common/RIOT$ BOARD=msb-430 make -j64 -C examples/hello-world
make : on entre dans le répertoire « /home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world »
Building application "hello-world" for "msb-430" with MCU "msp430fxyz".

"make" -C /home/hugues/github/cpu_msp430_common/RIOT/boards/common/init
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/boards/msb-430
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/core
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/core/lib
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430fxyz
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/drivers
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/boards/common/msb-430
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/drivers/periph_common
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/auto_init
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/div
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/libc
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/malloc_thread_safe
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430_common
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/newlib_syscalls_default
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430fxyz/periph
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/preprocessor
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/stdio_uart
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430_common/periph
/opt/ti/msp430-gcc/bin/../lib/gcc/msp430-elf/9.3.1/../../../../msp430-elf/bin/ld: .rodata not found for insert
collect2: error: ld returned 1 exit status
make: *** [/home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world/../../Makefile.include:761 : /home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world/bin/msb-430/hello-world.elf] Erreur 1
make : on quitte le répertoire « /home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world »
hugues@p700:~/github/cpu_msp430_common/RIOT$ /opt/ti/msp430-gcc/msp430-elf/bin/ld --version
GNU ld (Mitto Systems Limited - msp430-gcc 9.3.1.11) 2.34
Copyright (C) 2020 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) a later version.
This program has absolutely no warranty.
hugues@p700:~/github/cpu_msp430_common/RIOT$ /opt/ti/msp430-gcc/msp430-elf/bin/ld --version | grep -Eo '[0-9]\.[0-9]+'
9.3
1.11
2.34
hugues@p700:~/github/cpu_msp430_common/RIOT$ /opt/ti/msp430-gcc/msp430-elf/bin/ld --version | grep -Eo '[0-9]\.[0-9]+$'
2.34
```


### Testing procedure
```
hugues@p700:~/github/cpu_msp430_common/RIOT$ BOARD=msb-430 make -j64 -C examples/hello-world
make : on entre dans le répertoire « /home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world »
Building application "hello-world" for "msb-430" with MCU "msp430fxyz".

"make" -C /home/hugues/github/cpu_msp430_common/RIOT/boards/common/init
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/boards/msb-430
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/core
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/core/lib
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430fxyz
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/drivers
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/boards/common/msb-430
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/drivers/periph_common
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/auto_init
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/div
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/libc
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/malloc_thread_safe
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/newlib_syscalls_default
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/preprocessor
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430_common
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/sys/stdio_uart
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430fxyz/periph
"make" -C /home/hugues/github/cpu_msp430_common/RIOT/cpu/msp430_common/periph
   text	   data	    bss	    dec	    hex	filename
   8612	    722	    866	  10200	   27d8	/home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world/bin/msb-430/hello-world.elf
make : on quitte le répertoire « /home/hugues/github/cpu_msp430_common/RIOT/examples/hello-world »
```


### Issues/PRs references
Introduced by #19484, highlighted in #16727.


Co-authored-by: Marian Buschsieweke <marian.buschsieweke@posteo.net>
Co-authored-by: Fabian Hüßler <fabian.huessler@ml-pa.com>
Co-authored-by: Dylan Laduranty <dylan.laduranty@mesotic.com>
Co-authored-by: Hugues Larrive <hlarrive@pm.me>
2023-07-04 18:43:26 +00:00
Marian Buschsieweke
043e8cc88e
boards,sys/arduino: major clean up
- Rename all `arduino_pinmap.h` to `arduino_iomap.h`
    - An empty `arduino_pinmap.h` that just includes `arduino_iomap.h`
      is provided for backward compatibility
    - Move all info from `arduino_board.h` into the new file as trivial
      macros, so that they can also be used outside of sketches
    - The new name reflects the fact not just pin mappings, but also
      other I/O features such as PWMs are mapped
- Drop all `arduino_board.h`
    - `arduino_board.h` and `arduino_iomap.h` now provide the exact
      same information, just in a different format
    - a generic `arduino_board.h` is provided instead that just
      uses the info in `arduinio_iomap.h` and provides them in the
      format the code in `sys/arduino` expects it
- Add fine grained features to indicate for mappings
    - availability of mappings for analog pins, DAC pins, PWM pins,
      UART devices, SPI/I2C buses to the corresponding RIOT
      identification can now be expressed:
        - `arduino_pins`: `ARDUINO_PIN_0` etc. are available
        - `arduino_analog`: `ARDUINO_A0` etc. are available
        - `arduino_pwm`: `ARDUINO_PIN_13_PWM_DEV` etc. are available
        - `arduino_dac`: `ARDUINO_DAC0` etc. are available
        - `arduino_uart`: `ARDUINO_UART_D0D1` or similar are available
        - `arduino_spi`: `ARDUINO_SPI_ISP` or similar are available
        - `arduino_i2c`: `ARDUINO_I2C_UNO` or similar are available
    - mechanical/electrical compatibility with specific form factors
      can now be expressed as features:
        - `aruino_shield_nano`: Arduino NANO compatible headers
        - `aruino_shield_uno`: Arduino UNO compatible headers
        - `aruino_shield_mega`: Arduino MEGA compatible headers
        - `aruino_shield_isp`: ISP header is available

This provides the groundwork to implement shield support as modules
that can rely on the I/O mappings, rather than having to provide a
configuration per board.
2023-06-26 17:24:07 +02:00
Marian Buschsieweke
ff7f8ae2f0
cpu/msp430: reorganize code
RIOT supports two distinct families of the MSP430: The [MSP430 x1xx]
MCU family and the [MSP430 F2xx/G2xx] MCU family. For both incompatible
MCU families the code was located in the msp430fxyz folder, resulting
in case of the UART driver in particularly bizarre code looking roughly
like this:

    #ifndef UART_USE_USCI
    /* implementation of x1xx peripheral ... */
    #else
    /* implementation of F2xx/G2xx peripheral ... */
    #endif
    /* zero shared code between both variants */

This splits the peripheral drivers for USCI and USART serial IP blocks
into separate files and relocates everything in cpu/msp430, similar to
how cpu/stm32 is organized.

[MSP430 x1xx]: https://www.ti.com/lit/ug/slau049f/slau049f.pdf
[MSP430 F2xx/G2xx]: https://www.ti.com/lit/ug/slau144k/slau144k.pdf
2023-06-19 17:14:57 +02:00
Benjamin Valentin
6983782891 rdm/radio_hal: remove appendix A
This has no use and will just get outdated - just refer to the actual
file in RIOT instead of a fossilized copy.
2023-06-05 15:54:55 +02:00
bors[bot]
84a3078a93
Merge #19665
19665: doc: do not rebuild riot.css r=maribu a=maribu

### Contribution description

- simplify the makefile
    - changing behavior depending on lessc being installed is surprising and makes the Makefile less readable
    - failing with `make: lessc: No such file or directory` is helpful, but `make: No rule to make target 'src/css/riot.css'` is not clearly indicating that `lessc` was not found
- don't rebuild `riot.css` when generating HTML output
    - anyone touching the less file will have to manually call `make src/css/riot.css -C doc/doxygen`
    - this happens so rarely that implementing a convenient mechanism is not worth the trouble


Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2023-05-25 17:09:27 +00:00
Marian Buschsieweke
cfee27cfb2
doc: do not rebuild riot.css
- simplify the makefile
    - changing behavior depending on lessc being installed is
      surprising and makes the Makefile less readable
    - failing with `make: lessc: No such file or directory` is helpful,
      but `make: No rule to make target 'src/css/riot.css'` is not
      clearly indicating that `lessc` was not found
- don't rebuild `riot.css` when generating HTML output
    - anyone touching the less file will have to manually call
      `make src/css/riot.css -C doc/doxygen`
    - this happens so rarely that implementing a convenient mechanism
      is not worth the trouble

Fixes https://github.com/RIOT-OS/RIOT/issues/8122
2023-05-24 21:24:08 +02:00
bors[bot]
993c10a2a2
Merge #19556 #19662
19556: tools/mspdebug: fix `make debug` and `make debugserver` r=aabadie a=maribu

### Contribution description

The semantics of `make debug` and `make debugserver` have changed in the years since the MSP430 integration. This brings the implementation back into line with the current semantics

- `make debug` now starts both mspdebug and GDB, no need to run `make debugserver` prior to `make debug` anymore
- `make debug` no longer flashes the target to not waste flash erase cycles
- GDB mutliarch support is added
- support for selecting a debug adapter by its serial is added


19662: driver/lc709203f: remove unnecessary use of float r=aabadie a=kfessel

### Contribution description

removes a unnecessary use of float

### Testing procedure

read and test if you got that hardware (I don't)

### Issues/PRs references

#19614 

Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
Co-authored-by: Karl Fessel <karl.fessel@ovgu.de>
2023-05-24 15:54:23 +00:00
Marian Buschsieweke
ca15b1e1f8
tools/mspdebug: fix make debug and make debugserver
The semantics of `make debug` and `make debugserver` have changed in
the years since the MSP430 integration. This brings the implementation
back into line with the current semantics

- `make debug` now starts both mspdebug and GDB, no need to
  run `make debugserver` prior to `make debug` anymore
- `make debug` no longer flashes the target to not waste flash erase
  cycles
- GDB mutliarch support is added
- support for selecting a debug adapter by its serial is added
2023-05-24 17:00:38 +02:00
22fda62623
doc/mainpage: fix punctuation 2023-05-17 14:51:48 +02:00
a1c60faa2a
doc/mainpage: point to supported board on main website
The wiki page is fairly outdated
2023-05-17 14:51:11 +02:00
Marian Buschsieweke
5457014c4a
build-system: Allow out of tree BUILD_DIR
- Replace all users of `$(RIOTBASE)/build` with the already present
  `$(BUILD_DIR)` variable
- Replace all users of `$(BUILD_DIR)/pkg` with the already present
  `$(PKGDIRBASE)` variable
- Create a `CACHEDIR.TAG` file in the `$(BUILD_DIR)`
2023-05-16 22:23:03 +02:00
bors[bot]
4b4d77a0fe
Merge #19588
19588: doc: Remove ANSI r=benpicco a=bergzand

### Contribution description

> We moved to C11. And before that, we were at C99.

(When can we add Rust to this list?)

### Testing procedure

Check the docs

### Issues/PRs references

None


Co-authored-by: Koen Zandberg <koen@bergzand.net>
2023-05-15 12:09:24 +00:00
0cdeafd85d
doc: fix path to build system related test applications 2023-05-13 19:08:38 +02:00
5f3a9de7fa
treewide: fix path to ztimer test applications 2023-05-13 19:08:38 +02:00
953f233e82
doc: Remove ANSI 2023-05-12 11:45:37 +02:00
Marian Buschsieweke
b671ee7cae
doc/doxygen/src/flashing.md: work around Doxygen bug
Doxygen fails to render inline code in headers correctly in the
version the CI uses. So, work around the issue by not typestetting
`stm32flash` as inline code but as regular text.
2023-05-11 13:45:28 +02:00
Marian Buschsieweke
29ec91fed3
boards/nucleo64: Add pinout diagrams from UM1724
ST's UM1724 user manual provides pinout diagrams for many Nucleo-64
boards. This adds them to the doc for easy of use.
2023-03-17 15:16:31 +01:00
bors[bot]
d7dba6206b
Merge #19390 #19391
19390: doxygen: Point to contributing.md document r=kaspar030 a=bergzand

### Contribution description

Shortcuts a referral on the wiki


### Testing procedure

Check the url in the doxygen main page

### Issues/PRs references

None

19391: cord: convert to ztimer r=kaspar030 a=bergzand

### Contribution description

As the subject describes


### Testing procedure

The `examples/cord_ep` example should work as before.


### Issues/PRs references

None


Co-authored-by: Koen Zandberg <koen@bergzand.net>
2023-03-14 20:28:56 +00:00
aa29646c0e
doxygen: Point to contributing.md document
Shortcuts a referral on the wiki
2023-03-14 16:00:55 +01:00
bors[bot]
fae992e82b
Merge #19343 #19349 #19353 #19361 #19363
19343: ztimer: add ztimer_stopwatch convenience functions r=benpicco a=benpicco



19349: cpu/native: Switch to ztimer for gettimeofday r=benpicco a=MrKevinWeiss

### Contribution description

A xtimer is somewhat taken over by ztimer this explicitly uses ztimer instead of relying on the compatibility layer.

### Testing procedure

`make all test -C tests/cpp11_mutex/`

and green murdock I guess.

### Issues/PRs references


19353: doc: add quicklink to boards in navbar r=benpicco a=OlegHahm

### Contribution description

Finding a list of supported boards and how to use them is an essential information. Currently this list is somewhat hidden under "Modules" which is not very intuitive. Hence, I propose to (at least) put a link in the side menu to this overview page.

### Testing procedure

1. Call `make doc`
2. Check the sidebar `${RIOT_BASE}/doc/doxygen/html/index.html` for an entry "Supported Boards"

19361: nanocoap_sock: ensure response address is the same as request address r=benpicco a=benpicco



19363: Fix stm32 timer periodic r=benpicco a=Enoch247

### Contribution description

From the commit msg:

>     cpu/stm32/periph/timer: remove unneeded header
>     
>     I see no reason this header should be included. It does not exist in
>     RIOT's source tree. This patch removes the include.

and 

>     cpu/stm32/periph/timer: fix execution flow
>     
>     The implmentation of `timer_set_absolute()` has The following problems.
>     First, it attempts to restore the auto reload register (ARR) to it's
>     default if the ARR was previosly set by `timer_set_periodic()` by
>     comparing it to the channel's capture compare (CC) register _after_ it
>     has already set the CC register. Secondly, it clears spurious IRQs
>     _after_ the CC register has been set. If the value being set is equal to
>     the timer's current count (or the two become equal before the supurios
>     IRQ clearing happens), this could cause a legitimate IRQ to be cleared.
>     
>     The implmentation of `timer_set()` has the same error in handling the
>     ARR as described above.
>     
>     This patch reorders the operations of both functions to do:
>     
>     1. handle ARR
>     2. clear spurious IRQs
>     3. set channel's CC
>     4. enable IRQ
>     
>     Additionally, the calulation of `value` in `timer_set()` is moved
>     earlier in the function's exec path as a pedantic measure.


### Testing procedure

I tested by doing the following:

1. `make -C tests/periph_timer BOARD=nucleo-f767zi all flash term`
2. press s
3. press [ENTER]
4. observe test passes
5. `make -C tests/periph_timer_periodic BOARD=nucleo-f767zi all flash term`
6. press s
7. press [ENTER]
8. observe test passes
9. `make -C tests/periph_timer_short_relative_set BOARD=nucleo-f767zi all flash term`
10. press s
11. press [ENTER]
12. observe test passes


### Issues/PRs references

- none known


Co-authored-by: Benjamin Valentin <benpicco@beuth-hochschule.de>
Co-authored-by: MrKevinWeiss <weiss.kevin604@gmail.com>
Co-authored-by: Oleg Hahm <oleg@hobbykeller.org>
Co-authored-by: Benjamin Valentin <benjamin.valentin@bht-berlin.de>
Co-authored-by: Joshua DeWeese <jdeweese@primecontrols.com>
2023-03-08 02:09:42 +00:00
Oleg Hahm
9aa0c0fc8c doc: add quicklink to boards in navbar 2023-03-06 18:50:17 +01:00
Marian Buschsieweke
8a4b4fb8dd
boards/common/blxxxpill: Update pinout
Also document the OSC32 connection of PC14/PC15 in the pinout.
2023-02-28 08:35:17 +01:00
68bc404f94
doc: Add out of tree RIOT app documentation 2023-02-27 14:48:47 +01:00
Marian Buschsieweke
015ee050f2
makefiles/tools/serial.inc.mk: Allow detection of debug adapter
Boards with an integrated debugger/programmer that also provides the
serial as UART <--> USB adapter, the TTY serial matches the serial of
the programmer.

This adapts the `serial.inc.mk` to set the `DEBUG_ADAPTER_ID` to the
TTY serial if (and only if) `MOST_RECENT_PORT` *and*
`DEBUG_ADAPTER_ID_IS_TTY_SERIAL` both have a value of `1`. Boards with
an integrated programmer are expected to set
`DEBUG_ADAPTER_ID_IS_TTY_SERIAL` to `1` in their `Makefile.include`.
2023-02-24 16:50:56 +01:00
bors[bot]
e738fdd44c
Merge #13943
13943: RDM: The 802.15.4 Radio HAL r=miri64 a=jia200x



Co-authored-by: Jose Alamos <jose@alamos.cc>
2023-02-22 12:37:05 +00:00
Jose Alamos
7ac3052388
rdm/radio_hal: add radio HAL design document 2023-02-22 11:15:49 +01:00
Marian Buschsieweke
660990afd3
boards/common/blxxxpill: Fix mixup in pinout
TX0 and RX0 in the pinout got mixed up. This swaps them back.
2023-02-08 14:54:45 +01:00
fc471d659d
Doc: document generate-makefile.ci 2023-02-03 10:56:05 +01:00
bors[bot]
053f5266a5
Merge #19228
19228: doccheck: avoid generating dot or html r=benpicco a=kfessel

### Contribution description

doccheck without generating dot or html

this also has some new generated lines for exclude_pattern (some of them where broke so I regenerated the block)

### Testing procedure

doccheck 

### Issues/PRs references



Co-authored-by: Karl Fessel <karl.fessel@ovgu.de>
2023-02-01 13:25:03 +00:00
Karl Fessel
3de68c7651 doccheck: check without building 2023-01-31 19:36:23 +01:00
krzysztof-cabaj
dba9c2729f doc/porting-boards.md: fix code snippets in Riot web page/doxygen 2023-01-30 15:05:12 -05:00
krzysztof-cabaj
9f0cf1c384 doc/porting-boards.md: fix code snippets in md view 2023-01-26 15:02:37 -05:00
96e37a4f41
blobs: include documentation in doxygen 2023-01-26 09:27:47 +01:00
Marian Buschsieweke
208bf7eef3
build system: improve MOST_RECENT_PORT=1 handling
Allow overriding the shell command used to auto-detect the TTY of a
board with `MOST_RECENT_PORT=1` via the `TTY_SELECT_CMD` variable.
The use case is to also detect Arduino Mega 2560 clones with cheap
USB UART bridges (for which the filter command may yield false
positives) while preferring genuine Arduino Mega 2560 boards (if
found) over the clones (as the filter for genuine boards does not yield
false positives).
2022-12-11 18:58:18 +01:00
Marian Buschsieweke
26d5b7ca0b
Merge pull request #18839 from chrysn-pull-requests/rust-use-stable
rust: Use stable Rust
2022-11-24 20:41:51 +01:00
chrysn
75836268e6 doc/rust: Nightly is not needed any more 2022-11-24 11:07:45 +01:00
Gregory Holder
7de170cf27
docs/kconfig: not longer -> no longer typo 2022-11-17 08:35:26 +00:00
benpicco
ed1d8e0a3d
Merge pull request #18785 from maribu/boards/blxxxpill/periph_conf
boards/common/blxxxpill: Fix pin conflicts in periph_conf
2022-10-27 21:22:10 +02:00
Marian Buschsieweke
051a1f1e32
boards/common/blxxxpill: rework periph configuration
The peripheral configuration has been completely reworked to resolve
pin conflicts while provided as much of the peripherals as possible.
The changes include:

- Move `I2C_DEV(0)` from PB6/PB7 to PB8/PB9 to solve pin conflict with
  `QDEC_DEV(2)`.
- Use pins PB0, PB1, PB4, and PB5 for PWM instead PA8, PA9, PA10, and
  PA11
    - PA9 and PA10 is in pin conflict with `UART_DEV(0)` which is used
      for stdio with `stdio_uart`, PA8 was in conflict with
      `QDEC_DEV(0)`, PA11 was in conflict with USB D-
- Use PB6, PB7 as `QDEC_DEV(0)` (previously `QDEC_DEV(2)`), as this is
  the only completely conflict free setting
- Use PB4/PB5 instead of PA6/PA7 for QDEC_DEV(1)
    - This fixes a pin conflict with `SPI_DEV(0)` MISO (and
      `ADC_LINE(4)`)
- Only provide QDEC at PB4/PB5 when PWM is not used to avoid conflict
- Only provide QDEC at PA8/PA9 when UART is not used to avoid conflict
- Use SPI2 (PB15, PB14, PB13, PB12) as `SPI_DEV(0)` instead of SPI1,
  use SPI1 (PA7, PA6, PA5, PA4) as `SPI_DEV(1)`
- Only provide `SPI_DEV(1)` if the ADC is not in used to resolve a
  pin conflict
- Move PB0 and PB1 at the end of the ADC lines (previously
  `ADC_LINE(6)` and `ADC_LINE(7)`, now `ADC_LINE(8)` and `ADC_LINE(9)`)
   - Only provide them when PWM is not in use (to resolve pin conflict
     with PWM)
   - Also do not provide them for the Blackpill boards, which are
     missing pins PB0 and PB1 on the headers

To make life of users easier, a Pinout diagram with the new
configuration was added.
2022-10-27 14:28:07 +02:00
Teufelchen1
35a06c4806 boards/native: Remove macOS as native target 2022-10-25 19:11:23 +02:00
MrKevinWeiss
6cad5d2477
cpu/mips: Remove all mips 2022-09-27 13:42:37 +02:00
chrysn
95c540058d doc/getting-started: Add C++ standard library to the list 2022-09-20 16:42:19 +02:00
Marian Buschsieweke
b2bcfabcfb
Merge pull request #18452 from maribu/makefiles/boards/stm32.inc.mk
makefiles/boards/stm32.inc.mk: improve stm32flash support
2022-09-15 00:29:33 +02:00
Marian Buschsieweke
0c58b6b037
doc: improve flashing documentation
- The tool compatibility matrix got super large
    - split out all "single-purpose" tools and list them per platform
- Highlighting code via backticks in titles doesn't render well with
  Doxygen
2022-09-12 09:19:15 +02:00
Alf Sebastian Houge
58dfe0315e Change git clone protocol to https in docs 2022-08-30 13:13:25 +02:00
Marian Buschsieweke
08d88ee557
makefiles/boards/stm32.inc.mk: improve stm32flash support
Allow issuing a reset to bootloader sequence by abusing the RTS and
the DTR pins of a TTL adapter. This makes flashing via UART much
more convenient, as no jumpers need to be placed to select booting to
the bootloader / flash and no reset buttons need to be pressed.
2022-08-16 22:00:06 +02:00
benpicco
ecbe686b03
Merge pull request #18455 from maribu/doc/doxygen/src/flashing.md
doc: Add high-level documentation on flashing boards
2022-08-16 21:12:32 +02:00
Benjamin Valentin
28ff28aee0 gnrc/ipv6_auto_subnets: document the role of the RIO 2022-08-16 11:31:23 +02:00
Benjamin Valentin
18e74ae8c0 gnrc/ipv6_auto_subnets: document subnet generation better 2022-08-16 11:31:23 +02:00
Marian Buschsieweke
cc451a5531
doc: Add documentation for TTY_BOARD_FILTER 2022-08-15 16:30:36 +02:00
Marian Buschsieweke
1fd908bd70
doc: Move flashing tips to flashing.md 2022-08-15 16:27:19 +02:00
Marian Buschsieweke
81c2f05fa9
doc: Add high level documentation on flashing
This is mostly intended as a place to add available configuration
options for each `<foo>` in `PROGRAMMER=<foo>`.
2022-08-15 16:18:16 +02:00
Benjamin Valentin
7812564d16 doc/doxygen: use DuckDuckGo for search 2022-07-22 14:39:51 +02:00
Benjamin Valentin
d4a3521501 doc/doxygen: add gnrc_ipv6_auto_subnets.c to INPUT 2022-07-15 11:47:01 +02:00
chrysn
d9879c96ca
Merge pull request #16833 from chrysn-pull-requests/rust-lib
Add some Rust library building infrastructure
2022-07-10 21:39:35 +02:00
chrysn
cd6393a4d3 doc: Update for Rust libraries
Co-authored-by: Marian Buschsieweke <marian.buschsieweke@ovgu.de>
2022-07-10 21:27:12 +02:00
Marian Buschsieweke
fcbba02daf
Merge pull request #18256 from Teufelchen1/chore/macos
Documentation: Renaming OS X to macOS
2022-06-30 07:05:48 +02:00
Teufelchen1
1231807bab Documentation: Renaming OS X to macOS 2022-06-23 17:25:48 +02:00
chrysn
5cde02177c rust: Explicitly select nightly
Examples have previously relied on the (really: some) nightly toolchain
to be the default. As that, in practice, is a problematic assumption,
the latest toolchain to use is now determined programmatically, and that
is set explicitly on the examples that use nightly.

Workaround-For: https://github.com/rust-lang/rustup/issues/3015
2022-06-22 12:07:45 +02:00
chrysn
1e7ac17e07 doc/rust: Migrate and modernize text from rust_minimal README
This is a rewrite of text that has come to be quite outdated, pulled
into the central location for information about RIOT's Rust integration.
2022-06-15 00:01:27 +02:00
chrysn
af0e673c04 doc/rust: Updates on Rust and C2Rust versions
This better reflects the current state of things. Setting the nightly
toolchain as default works better for new users with the current
settings of the examples. Not pinning the C2Rust version -- we don't pin
the nightly version in the docs either, and breakage is easy to track
given the container builds as a base line.
2022-06-14 23:02:11 +02:00
chrysn
6b49a391c8 doc/rust: Typo and link fixes 2022-06-14 22:52:03 +02:00
Chris Moore
6e90780190 doc: fix broken link/footnote in using-rust/maintenance 2022-04-17 19:32:47 -05:00
chrysn
82a91d7ef4 doc/rust: Update to cover stable installation 2022-04-07 10:02:00 +02:00
Francisco Molina
c16119b815 doc/doxygen: recommend adding ADJUST ztimer values for new boards 2022-03-23 10:04:02 +01:00
Francisco Molina
822bef48da doc/doxygen: add BUILD_IN_DOCKER extended doc 2022-03-18 07:57:50 +01:00
chrysn
cd1c64c8ff
Merge pull request #17737 from maribu/dist/tools/usb-serial
dist/tools/usb_serial: Add tool for listing and filtering TTY interfaces
2022-03-10 13:19:58 +01:00
Marian Buschsieweke
b296ade6b2
dist/tools/usb-serial: Add ttys.py
- Provide a new tool to list and filter TTYs
- Change `Makefile.include` to use `$(RIOTTOOLS)/usb-serial/ttys.py`
  instead of `$(Q)$(RIOTTOOLS)/usb-serial/list-ttys.sh` to implement
  `make list-ttys`
- Extend `makefiles/tools/serial.inc.mk` to allow using the most recent
  port by passing `MOST_RECENT_PORT=1` as environment variable or
  parameter to make

Co-authored-by: chrysn <chrysn@fsfe.org>
Co-authored-by: Koen Zandberg <koen@bergzand.net>
2022-03-09 15:40:36 +01:00
chrysn
01573a154a doc: C2Rust does not need patching any more. 2022-03-09 12:09:30 +01:00
chrysn
f4c298fc32 doc/rust: Note that stable Rust can be used with some examples
Closes: https://github.com/RIOT-OS/RIOT/issues/17526
2022-03-08 12:44:49 +01:00
7e587b068e
Merge pull request #17756 from gschorcht/doc/fix_getitng_started_docker
doc: small fix of "Getting Started" document structure in section docker
2022-03-07 07:47:50 +01:00
Gunar Schorcht
4220f65bf8 doc: remove backticks from headings in "Getting Started"
Backticks in headings no longer seem to work in doxygen markdown support.
2022-03-06 23:41:28 +01:00
Gunar Schorcht
d1fd11c2f5 doc: fix "Getting Started" structure for section docker
Fixes two problems:
- Section "Usage" which describes the usage of docker is on heading level 1 but has to be on  heading level 2
- Section "Setup" has only one subsection. A second subsection was added. Now, the section "Setup" has two subsections, one that describes the installation of docker and one that describes downloading and testing of the RIOT docker build image.
2022-03-06 23:41:28 +01:00
eec8b7a8d4
tree-wide: emulators: s/RUNTIME_TMP_DIR/EMULATOR_TMP_DIR 2022-03-04 13:44:51 +01:00
7cc5787ecb
doc/emulator: update EMULATOR_SERIAL_PORT documentation 2022-03-04 13:34:57 +01:00