Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2023q2 release #1044

Merged
merged 3 commits into from
Jul 1, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
192 changes: 192 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,163 @@ pay attention to. Medium impact changes are also worth looking at.

<!--releases-->

## 2023-07-01: 2023q2 release

This release covers everything from 2023-04-05 and has been tested with avr-gcc
v12.2.0 from Upstream and arm-none-eabi-gcc v12.2.1 from xpack.

Breaking changes:

- GCC12 requirement for C++23.
- `-fsingle-precision-constant` default compile flag has been removed.
- Removed deprecated `Timer::setPeriod(uint32_t)` in favor of`std::chrono` units.

Features:

- SAMx7x DAC, ADC, DMA, and CAN drivers.
- Enabled C++23 and C23.
- STM32 IWDG driver.
- Fibers are now backward compatible with protothreads and resumable functions.
- Support for STM32G0B/C devices with shared interrupts.

Integrated Projects:

- LVGL upgraded to v8.3.7.
- Pico-SDK upgraded to v1.5.1.
- STM32F1 headers upgraded to v4.3.4.
- STM32F2 headers upgraded to v2.2.6.
- STM32L1 headers upgraded to v2.3.3.
- CMSIS-DSP upgraded to v1.14.4.
- SAMx7x upgraded to v3.0.
- TinyUSB upgraded to v0.15.0.

Fixes:

- Moving average type selection.
- SysTick clock access from both cores on RP2040.
- FDCAN driver on STM32 tx message queue.
- STM32 I2C NACK flag is acknowledged for instances >1.
- Fix arithmetic overflow in `Timer::setPeriod` on STM32.
- Validate calculated CRC on MS5611 driver.

New development boards:

- Adafruit Feather-M4 as [`modm:feather-m4`][].

New device drivers:

- MAX31865 temperature sensor as [`modm:driver:max31865`][].
- Internal cycle counter as [`modm:driver:cycle_counter`][].
- MCP3008 ADC driver as [`modm:driver:mcp3008`][].

Known bugs:

- STM32F7: D-Cache not enabled by default. See [#485][].
- `lbuild build` and `lbuild clean` do not remove all previously generated files
when the configuration changes. See [#285][].
- Generating modm on Windows creates paths with `\` that are not compatible with
Unix. See [#310][].
- `arm-none-eabi-gdb` TUI and GDBGUI interfaces are not supported on Windows.
See [#591][].

Many thanks to all our contributors.
A special shoutout to first timers 🎉:

- Christopher Durand ([@chris-durand][])
- Daniel Waldhäusl 🎉
- Henrik Hose ([@hshose][])
- Niklas Hauser ([@salkinium][])
- Raphael Lehmann ([@rleh][])
- Rasmus Kleist ([@rasmuskleist][])
- Sascha Schade ([@strongly-typed][])
- Sergey Pluzhnikov ([@ser-plu][])
- Thomas Rush ([@tarush53][])
- Victor Costa ([@victorandrehc][])
- Vivien Henry ([@lukh][])

PR [#1044][] -> [2023q2][].

<details>
<summary>Detailed changelog</summary>

#### 2023-06-20: Extend support for ELF2UF2 tool to STM32 and SAM

PR [#1038][] -> [b05df3e][].
Tested in hardware by [@tarush53][].

#### 2023-06-09: Remove `-fsingle-precision-constant` compile flag

PR [#1037][] -> [2384756][] with medium-impact in floating point variables.
Tested in hardware by [@salkinium][].

#### 2023-06-08: Add Adafruit Feather-M4 board support

PR [#1032][] -> [81b86be][].
Tested in hardware by [@tarush53][].

#### 2023-06-07: Add support for STM32G0B/C devices

PR [#1036][] -> [768d749][].
Tested in hardware by [@chris-durand][].

#### 2023-06-01: Add MCP3008 ADC driver

PR [#1028][] -> [eda224e][].
Tested in hardware by [@chris-durand][].

#### 2023-05-19: Add complementary channels to TIM driver on STM32

PR [#1018][] -> [45ae68a][].
Tested in hardware by [@ser-plu][].

#### 2023-05-15: Implement Protothreads/Resumables using Fibers

PR [#1001][] -> [45ae68a][].
Tested in hardware by [@salkinium][].

#### 2023-05-13: Fix FDCAN transmission queue on STM32

PR [#1017][] -> [9d33843][].
Tested in hardware by [@ser-plu][], [@chris-durand][], and [@rleh][].

#### 2023-05-09: Add MCAN driver for SAMx7x

PR [#955][] -> [bfafcd3][].
Tested in hardware by [@rleh][].

#### 2023-05-05: Add IWDG driver for STM32

PR [#1009][] -> [d772940][].
Tested in hardware by Daniel Waldhäusl.

#### 2023-05-03: Fix RP2040 multicore access to modm::Clock

PR [#1010][] -> [389a9c3][].
Tested in hardware by [@salkinium][].

#### 2023-05-02: Add MAX31865 temperature sensor

PR [#993][] -> [65bbccf][].
Tested in hardware by [@hshose][].

#### 2023-04-19: Add ADC driver for SAMx7x

PR [#998][] -> [c7c4c57][].
Tested in hardware by [@chris-durand][].

#### 2023-04-12: Add DAC and DMA driver for SAMx7x

PR [#987][] -> [94580b4][].
Tested in hardware by [@chris-durand][].

#### 2023-04-08: Fix STM32 SPI configuration while running

PR [#994][] -> [972b74b][].
Tested in hardware by [@chris-durand][].

</details>


## 2023-04-06: 2023q1 release

This release covers everything from 2023-01-01 and has been tested with avr-gcc
Expand Down Expand Up @@ -2502,6 +2659,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[2022q3]: https://github.com/modm-io/modm/releases/tag/2022q3
[2022q4]: https://github.com/modm-io/modm/releases/tag/2022q4
[2023q1]: https://github.com/modm-io/modm/releases/tag/2023q1
[2023q2]: https://github.com/modm-io/modm/releases/tag/2023q2

[@19joho66]: https://github.com/19joho66
[@ASMfreaK]: https://github.com/ASMfreaK
Expand Down Expand Up @@ -2601,6 +2759,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[`modm:driver:at24mac402`]: https://modm.io/reference/module/modm-driver-at24mac402
[`modm:driver:bno055`]: https://modm.io/reference/module/modm-driver-bno055
[`modm:driver:cat24aa`]: https://modm.io/reference/module/modm-driver-cat24aa
[`modm:driver:cycle_counter`]: https://modm.io/reference/module/modm-driver-cycle_counter
[`modm:driver:encoder.output`]: https://modm.io/reference/module/modm-driver-encoder-output
[`modm:driver:encoder_input.bitbang`]: https://modm.io/reference/module/modm-driver-encoder_input-bitbang
[`modm:driver:encoder_input`]: https://modm.io/reference/module/modm-driver-encoder_input
Expand All @@ -2612,7 +2771,9 @@ Please note that contributions from xpcc were continuously ported to modm.
[`modm:driver:lp503x`]: https://modm.io/reference/module/modm-driver-lp503x
[`modm:driver:lsm6ds33`]: https://modm.io/reference/module/modm-driver-lsm6ds33
[`modm:driver:lsm6dso`]: https://modm.io/reference/module/modm-driver-lsm6dso
[`modm:driver:max31865`]: https://modm.io/reference/module/modm-driver-max31865
[`modm:driver:max7219`]: https://modm.io/reference/module/modm-driver-max7219
[`modm:driver:mcp3008`]: https://modm.io/reference/module/modm-driver-mcp3008
[`modm:driver:mcp7941x`]: https://modm.io/reference/module/modm-driver-mcp7941x
[`modm:driver:mcp990x`]: https://modm.io/reference/module/modm-driver-mcp990x
[`modm:driver:mmc5603`]: https://modm.io/reference/module/modm-driver-mmc5603
Expand All @@ -2631,9 +2792,21 @@ Please note that contributions from xpcc were continuously ported to modm.
[`modm:driver:tmp12x`]: https://modm.io/reference/module/modm-driver-tmp12x
[`modm:driver:touch2046`]: https://modm.io/reference/module/modm-driver-touch2046
[`modm:driver:ws2812`]: https://modm.io/reference/module/modm-driver-ws2812
[`modm:feather-m4`]: https://modm.io/reference/module/modm-feather-m4
[`modm:nucleo-u575zi-q`]: https://modm.io/reference/module/modm-nucleo-u575zi-q

[#1001]: https://github.com/modm-io/modm/pull/1001
[#1009]: https://github.com/modm-io/modm/pull/1009
[#1010]: https://github.com/modm-io/modm/pull/1010
[#1017]: https://github.com/modm-io/modm/pull/1017
[#1018]: https://github.com/modm-io/modm/pull/1018
[#1028]: https://github.com/modm-io/modm/pull/1028
[#102]: https://github.com/modm-io/modm/pull/102
[#1032]: https://github.com/modm-io/modm/pull/1032
[#1036]: https://github.com/modm-io/modm/pull/1036
[#1037]: https://github.com/modm-io/modm/pull/1037
[#1038]: https://github.com/modm-io/modm/pull/1038
[#1044]: https://github.com/modm-io/modm/pull/1044
[#118]: https://github.com/modm-io/modm/pull/118
[#122]: https://github.com/modm-io/modm/pull/122
[#132]: https://github.com/modm-io/modm/pull/132
Expand Down Expand Up @@ -2822,6 +2995,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[#951]: https://github.com/modm-io/modm/pull/951
[#952]: https://github.com/modm-io/modm/pull/952
[#954]: https://github.com/modm-io/modm/pull/954
[#955]: https://github.com/modm-io/modm/pull/955
[#956]: https://github.com/modm-io/modm/pull/956
[#957]: https://github.com/modm-io/modm/pull/957
[#960]: https://github.com/modm-io/modm/pull/960
Expand All @@ -2836,7 +3010,11 @@ Please note that contributions from xpcc were continuously ported to modm.
[#981]: https://github.com/modm-io/modm/pull/981
[#982]: https://github.com/modm-io/modm/pull/982
[#986]: https://github.com/modm-io/modm/pull/986
[#987]: https://github.com/modm-io/modm/pull/987
[#993]: https://github.com/modm-io/modm/pull/993
[#994]: https://github.com/modm-io/modm/pull/994
[#995]: https://github.com/modm-io/modm/pull/995
[#998]: https://github.com/modm-io/modm/pull/998

[00471ca]: https://github.com/modm-io/modm/commit/00471ca
[0217a19]: https://github.com/modm-io/modm/commit/0217a19
Expand Down Expand Up @@ -2872,6 +3050,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[21ba120]: https://github.com/modm-io/modm/commit/21ba120
[2273bae]: https://github.com/modm-io/modm/commit/2273bae
[22867e0]: https://github.com/modm-io/modm/commit/22867e0
[2384756]: https://github.com/modm-io/modm/commit/2384756
[23ec952]: https://github.com/modm-io/modm/commit/23ec952
[241b0d1]: https://github.com/modm-io/modm/commit/241b0d1
[276f5b3]: https://github.com/modm-io/modm/commit/276f5b3
Expand All @@ -2883,6 +3062,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[3072005]: https://github.com/modm-io/modm/commit/3072005
[30e24e6]: https://github.com/modm-io/modm/commit/30e24e6
[387a625]: https://github.com/modm-io/modm/commit/387a625
[389a9c3]: https://github.com/modm-io/modm/commit/389a9c3
[3936a28]: https://github.com/modm-io/modm/commit/3936a28
[399a533]: https://github.com/modm-io/modm/commit/399a533
[3ba71c9]: https://github.com/modm-io/modm/commit/3ba71c9
Expand All @@ -2891,6 +3071,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[3f3ff3d]: https://github.com/modm-io/modm/commit/3f3ff3d
[416ced6]: https://github.com/modm-io/modm/commit/416ced6
[43f32e6]: https://github.com/modm-io/modm/commit/43f32e6
[45ae68a]: https://github.com/modm-io/modm/commit/45ae68a
[47adfd6]: https://github.com/modm-io/modm/commit/47adfd6
[4885c53]: https://github.com/modm-io/modm/commit/4885c53
[48d73dc]: https://github.com/modm-io/modm/commit/48d73dc
Expand All @@ -2917,6 +3098,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[62b63f5]: https://github.com/modm-io/modm/commit/62b63f5
[62ccc26]: https://github.com/modm-io/modm/commit/62ccc26
[64d177a]: https://github.com/modm-io/modm/commit/64d177a
[65bbccf]: https://github.com/modm-io/modm/commit/65bbccf
[66c0868]: https://github.com/modm-io/modm/commit/66c0868
[6b4d656]: https://github.com/modm-io/modm/commit/6b4d656
[6b5b4ce]: https://github.com/modm-io/modm/commit/6b5b4ce
Expand All @@ -2926,6 +3108,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[72d5ae9]: https://github.com/modm-io/modm/commit/72d5ae9
[7330500]: https://github.com/modm-io/modm/commit/7330500
[740fd51]: https://github.com/modm-io/modm/commit/740fd51
[768d749]: https://github.com/modm-io/modm/commit/768d749
[77ae899]: https://github.com/modm-io/modm/commit/77ae899
[78d18f6]: https://github.com/modm-io/modm/commit/78d18f6
[7b5827f]: https://github.com/modm-io/modm/commit/7b5827f
Expand All @@ -2936,6 +3119,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[80a9c66]: https://github.com/modm-io/modm/commit/80a9c66
[80ed738]: https://github.com/modm-io/modm/commit/80ed738
[8179e6b]: https://github.com/modm-io/modm/commit/8179e6b
[81b86be]: https://github.com/modm-io/modm/commit/81b86be
[821677b]: https://github.com/modm-io/modm/commit/821677b
[8230fef]: https://github.com/modm-io/modm/commit/8230fef
[82bc4a9]: https://github.com/modm-io/modm/commit/82bc4a9
Expand All @@ -2955,11 +3139,14 @@ Please note that contributions from xpcc were continuously ported to modm.
[923f9c1]: https://github.com/modm-io/modm/commit/923f9c1
[9381fd0]: https://github.com/modm-io/modm/commit/9381fd0
[93bba13]: https://github.com/modm-io/modm/commit/93bba13
[94580b4]: https://github.com/modm-io/modm/commit/94580b4
[95713ee]: https://github.com/modm-io/modm/commit/95713ee
[972b74b]: https://github.com/modm-io/modm/commit/972b74b
[98a2483]: https://github.com/modm-io/modm/commit/98a2483
[98b1337]: https://github.com/modm-io/modm/commit/98b1337
[9b6aeee]: https://github.com/modm-io/modm/commit/9b6aeee
[9cbea26]: https://github.com/modm-io/modm/commit/9cbea26
[9d33843]: https://github.com/modm-io/modm/commit/9d33843
[9d8bbfa]: https://github.com/modm-io/modm/commit/9d8bbfa
[9e285db]: https://github.com/modm-io/modm/commit/9e285db
[9e50a16]: https://github.com/modm-io/modm/commit/9e50a16
Expand All @@ -2977,6 +3164,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[afbd533]: https://github.com/modm-io/modm/commit/afbd533
[afdb5ba]: https://github.com/modm-io/modm/commit/afdb5ba
[b010775]: https://github.com/modm-io/modm/commit/b010775
[b05df3e]: https://github.com/modm-io/modm/commit/b05df3e
[b153186]: https://github.com/modm-io/modm/commit/b153186
[b18385c]: https://github.com/modm-io/modm/commit/b18385c
[b1e5588]: https://github.com/modm-io/modm/commit/b1e5588
Expand All @@ -2986,13 +3174,15 @@ Please note that contributions from xpcc were continuously ported to modm.
[b78acd5]: https://github.com/modm-io/modm/commit/b78acd5
[b8648be]: https://github.com/modm-io/modm/commit/b8648be
[ba61a34]: https://github.com/modm-io/modm/commit/ba61a34
[bfafcd3]: https://github.com/modm-io/modm/commit/bfafcd3
[c0a8c51]: https://github.com/modm-io/modm/commit/c0a8c51
[c148bf8]: https://github.com/modm-io/modm/commit/c148bf8
[c347f00]: https://github.com/modm-io/modm/commit/c347f00
[c38550a]: https://github.com/modm-io/modm/commit/c38550a
[c63a536]: https://github.com/modm-io/modm/commit/c63a536
[c7b35ca]: https://github.com/modm-io/modm/commit/c7b35ca
[c7bd876]: https://github.com/modm-io/modm/commit/c7bd876
[c7c4c57]: https://github.com/modm-io/modm/commit/c7c4c57
[c868f59]: https://github.com/modm-io/modm/commit/c868f59
[c93dd2c]: https://github.com/modm-io/modm/commit/c93dd2c
[c949daf]: https://github.com/modm-io/modm/commit/c949daf
Expand All @@ -3006,6 +3196,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[d2d38a0]: https://github.com/modm-io/modm/commit/d2d38a0
[d3496a3]: https://github.com/modm-io/modm/commit/d3496a3
[d46c09d]: https://github.com/modm-io/modm/commit/d46c09d
[d772940]: https://github.com/modm-io/modm/commit/d772940
[d8be0a2]: https://github.com/modm-io/modm/commit/d8be0a2
[d982a85]: https://github.com/modm-io/modm/commit/d982a85
[dab6c79]: https://github.com/modm-io/modm/commit/dab6c79
Expand All @@ -3020,6 +3211,7 @@ Please note that contributions from xpcc were continuously ported to modm.
[e4b1a4a]: https://github.com/modm-io/modm/commit/e4b1a4a
[eb2748e]: https://github.com/modm-io/modm/commit/eb2748e
[eba68a4]: https://github.com/modm-io/modm/commit/eba68a4
[eda224e]: https://github.com/modm-io/modm/commit/eda224e
[f4c7492]: https://github.com/modm-io/modm/commit/f4c7492
[f4d5d6c]: https://github.com/modm-io/modm/commit/f4d5d6c
[f5cdf6a]: https://github.com/modm-io/modm/commit/f5cdf6a
Expand Down
Loading