Skip to content

Commit ab7c1ca

Browse files
committed
[release] Update changelog for 2024q4 release
1 parent 7ba2fbb commit ab7c1ca

File tree

4 files changed

+285
-0
lines changed

4 files changed

+285
-0
lines changed

.mailmap

+1
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ Hans Schily <[email protected]>
3838
Henrik Hose <[email protected]>
3939
Jacob Schultz Andersen <[email protected]>
4040
Jakob Riepler <[email protected]>
41+
Jan-Gerd Meß <[email protected]>
4142
Jeff McBride <[email protected]>
4243
Jens Böckmann <[email protected]>
4344
Jonas Kazem Andersen <[email protected]>

CHANGELOG.md

+150
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,139 @@ pay attention to. Medium impact changes are also worth looking at.
5252

5353
<!--releases-->
5454

55+
## 2025-01-01: 2024q4 release
56+
57+
This release covers everything from 2024-10-01 and has been tested with avr-gcc
58+
v13.2.0 from Upstream and arm-none-eabi-gcc v13.2.1 from xpack.
59+
60+
Breaking changes:
61+
62+
**Protothreads and Resumables are deprecated! Please use Fibers instead!**
63+
Note that you can disable the deprecation by resetting the option
64+
`modm:processing:protothread:use_fiber` to `false`, however, you will be limited
65+
to using GCC12 as GCC13 and newer does not compile our implementation anymore.
66+
67+
A shim is provided to allow the use of Protothreads and Resumables with Fibers
68+
without any significant modification of the existing code. However you must
69+
replace the main loop calling all protothreads with the fiber scheduler:
70+
71+
```cpp
72+
int main()
73+
{
74+
/*
75+
while(true)
76+
{
77+
protothread1.update();
78+
protothread2.update();
79+
}
80+
*/
81+
modm::fiber::Scheduler::run();
82+
return 0;
83+
}
84+
```
85+
86+
The `modm:processing:protothread` and `modm:processing:resumable` modules will
87+
be removed by the end of 2025. Please port your code to use fibers instead.
88+
Consult the `modm:processing:fiber` module docs for more information.
89+
90+
Features:
91+
92+
- Add efficient stack overflow check in fiber yield function.
93+
- Enable D-Cache for Cortex-M7 if DMA is not used.
94+
- Support for GCC13 which was blocked on deprecating Resumables and Protothreads.
95+
- Add RTC driver for STM32.
96+
- Enable low speed clock input on all STM32 boards.
97+
98+
Integrated Projects:
99+
100+
- CMSIS-Core upgraded to v6.1.0.
101+
- CMSIS-DSP upgraded to v1.16.2.
102+
- STM32L4 headers upgraded to v1.7.4.
103+
- STM32F1 headers upgraded to v4.3.5.
104+
- LVGL upgraded to v9.2.0.
105+
- TinyUSB upgraded to v0.17.
106+
- printf upgraded to v6.2.0.
107+
- ETL upgraded to v20.39.4.
108+
- nanopb upgraded to v0.4.9.
109+
110+
Fixes:
111+
112+
- Make AMNB usable in Fibers.
113+
- Reset AVRs on abandonment.
114+
- Prevent RX FIFO overflow in STM32 SPI master.
115+
- Fix `Timeout::wait()` implementation not waiting.
116+
- Fix IWDG prescaler computation on STM32.
117+
- Support Python 3.13 in modm_tools.
118+
119+
New device drivers:
120+
121+
- DW3310 Ultra-Wide Band driver as [`modm:driver:dw3110`][].
122+
123+
New development boards:
124+
125+
- WeAct Studio STM32C011F6 as [`modm:board:weact-c011f6`][].
126+
127+
Known bugs:
128+
129+
- STM32F723 is missing support to use built-in USB HS PHY. See [#1171][].
130+
- OpenOCD cannot enable SWO on STM32H7 targets. See [#1079][].
131+
- `arm-none-eabi-gdb` TUI and GDBGUI interfaces are not supported on Windows.
132+
See [#591][].
133+
- Generating modm on Windows creates paths with `\` that are not compatible with
134+
Unix. See [#310][].
135+
- `lbuild build` and `lbuild clean` do not remove all previously generated files
136+
when the configuration changes. See [#285][].
137+
138+
Many thanks to all our contributors.
139+
A special shoutout to first timers 🎉:
140+
141+
- Andrey Kunitsyn ([@andryblack][])
142+
- Christopher Durand ([@chris-durand][])
143+
- Elias H. 🎉
144+
- Frank Altheim ([@frnktank][]) 🎉
145+
- Jan-Gerd Meß ([@jgmess-dlr][]) 🎉
146+
- Kaelin Laundry ([@WasabiFan][])
147+
- Michael Jossen ([@Javask][])
148+
- Niklas Hauser ([@salkinium][])
149+
- Raphael Lehmann ([@rleh][])
150+
- Rasmus Kleist ([@rasmuskleist][])
151+
- Vishwanath Martur ([@vishwamartur][]) 🎉
152+
153+
PR [#1248][] -> [2024q4][].
154+
155+
<details>
156+
<summary>Detailed changelog</summary>
157+
158+
#### 2025-01-01: Add WeAct Studio STM32C011F6 board
159+
160+
PR [#1249][] -> [7ba2fbb][].
161+
Tested in hardware by [@salkinium][].
162+
163+
#### 2024-12-30: Add RTC peripheral driver for STM32
164+
165+
PR [#1242][] -> [f402893][].
166+
Tested in hardware by [@salkinium][].
167+
168+
#### 2024-12-01: Deprecate Protothreads and Resumable Functions
169+
170+
PR [#1232][] -> [e92dc1d][].
171+
Tested in hardware by [@salkinium][].
172+
173+
#### 2024-11-10: Add stack overflow check to fibers
174+
175+
Stack overflows lead to abandonment with the `fbr.stkof` assertion.
176+
177+
PR [#1219][] -> [ae74049][].
178+
Tested in hardware by [@salkinium][].
179+
180+
#### 2024-11-05: Add driver for DW3110
181+
182+
PR [#1210][] -> [e579250][].
183+
Tested in hardware by [@Javask][] and [@rleh][].
184+
185+
</details>
186+
187+
55188
## 2024-10-01: 2024q3 release
56189

57190
This release covers everything from 2024-07-01 and has been tested with avr-gcc
@@ -3270,6 +3403,7 @@ Please note that contributions from xpcc were continuously ported to modm.
32703403
[2024q1]: https://github.com/modm-io/modm/releases/tag/2024q1
32713404
[2024q2]: https://github.com/modm-io/modm/releases/tag/2024q2
32723405
[2024q3]: https://github.com/modm-io/modm/releases/tag/2024q3
3406+
[2024q4]: https://github.com/modm-io/modm/releases/tag/2024q4
32733407
32743408
[@19joho66]: https://github.com/19joho66
32753409
[@ASMfreaK]: https://github.com/ASMfreaK
@@ -3302,11 +3436,13 @@ Please note that contributions from xpcc were continuously ported to modm.
33023436
[@dergraaf]: https://github.com/dergraaf
33033437
[@dhebbeker]: https://github.com/dhebbeker
33043438
[@el-han]: https://github.com/el-han
3439+
[@frnktank]: https://github.com/frnktank
33053440
[@gueldenstone]: https://github.com/gueldenstone
33063441
[@henrikssn]: https://github.com/henrikssn
33073442
[@hshose]: https://github.com/hshose
33083443
[@jasa]: https://github.com/jasa
33093444
[@jensboe]: https://github.com/jensboe
3445+
[@jgmess-dlr]: https://github.com/jgmess-dlr
33103446
[@kapacuk]: https://github.com/kapacuk
33113447
[@klsc-zeat]: https://github.com/klsc-zeat
33123448
[@lgili]: https://github.com/lgili
@@ -3335,6 +3471,7 @@ Please note that contributions from xpcc were continuously ported to modm.
33353471
[@twasilczyk]: https://github.com/twasilczyk
33363472
[@twast92]: https://github.com/twast92
33373473
[@victorandrehc]: https://github.com/victorandrehc
3474+
[@vishwamartur]: https://github.com/vishwamartur
33383475
[@xgzeng]: https://github.com/xgzeng
33393476
33403477
[`modm:board:arduino-nano`]: https://modm.io/reference/module/modm-board-arduino-nano
@@ -3374,6 +3511,7 @@ Please note that contributions from xpcc were continuously ported to modm.
33743511
[`modm:board:srxe`]: https://modm.io/reference/module/modm-board-srxe
33753512
[`modm:board:stm32_f32ve`]: https://modm.io/reference/module/modm-board-stm32_f32ve
33763513
[`modm:board:thingplus-rp2040`]: https://modm.io/reference/module/modm-board-thingplus-rp2040
3514+
[`modm:board:weact-c011f6`]: https://modm.io/reference/module/modm-board-weact-c011f6
33773515
[`modm:disco-f401vc`]: https://modm.io/reference/module/modm-disco-f401vc
33783516
[`modm:disco-f411ve`]: https://modm.io/reference/module/modm-disco-f411ve
33793517
[`modm:disco-f469ni:b-03`]: https://modm.io/reference/module/modm-disco-f469ni-b-03
@@ -3389,6 +3527,7 @@ Please note that contributions from xpcc were continuously ported to modm.
33893527
[`modm:driver:bno055`]: https://modm.io/reference/module/modm-driver-bno055
33903528
[`modm:driver:cat24aa`]: https://modm.io/reference/module/modm-driver-cat24aa
33913529
[`modm:driver:cycle_counter`]: https://modm.io/reference/module/modm-driver-cycle_counter
3530+
[`modm:driver:dw3110`]: https://modm.io/reference/module/modm-driver-dw3110
33923531
[`modm:driver:encoder.output`]: https://modm.io/reference/module/modm-driver-encoder-output
33933532
[`modm:driver:encoder_input.bitbang`]: https://modm.io/reference/module/modm-driver-encoder_input-bitbang
33943533
[`modm:driver:encoder_input`]: https://modm.io/reference/module/modm-driver-encoder_input
@@ -3489,7 +3628,13 @@ Please note that contributions from xpcc were continuously ported to modm.
34893628
[#1204]: https://github.com/modm-io/modm/pull/1204
34903629
[#1206]: https://github.com/modm-io/modm/pull/1206
34913630
[#1209]: https://github.com/modm-io/modm/pull/1209
3631+
[#1210]: https://github.com/modm-io/modm/pull/1210
3632+
[#1219]: https://github.com/modm-io/modm/pull/1219
34923633
[#122]: https://github.com/modm-io/modm/pull/122
3634+
[#1232]: https://github.com/modm-io/modm/pull/1232
3635+
[#1242]: https://github.com/modm-io/modm/pull/1242
3636+
[#1248]: https://github.com/modm-io/modm/pull/1248
3637+
[#1249]: https://github.com/modm-io/modm/pull/1249
34933638
[#132]: https://github.com/modm-io/modm/pull/132
34943639
[#136]: https://github.com/modm-io/modm/pull/136
34953640
[#153]: https://github.com/modm-io/modm/pull/153
@@ -3818,6 +3963,7 @@ Please note that contributions from xpcc were continuously ported to modm.
38183963
[77ae899]: https://github.com/modm-io/modm/commit/77ae899
38193964
[78d18f6]: https://github.com/modm-io/modm/commit/78d18f6
38203965
[7b5827f]: https://github.com/modm-io/modm/commit/7b5827f
3966+
[7ba2fbb]: https://github.com/modm-io/modm/commit/7ba2fbb
38213967
[7d1f7cc]: https://github.com/modm-io/modm/commit/7d1f7cc
38223968
[7d7490d]: https://github.com/modm-io/modm/commit/7d7490d
38233969
[7df2e7d]: https://github.com/modm-io/modm/commit/7df2e7d
@@ -3874,6 +4020,7 @@ Please note that contributions from xpcc were continuously ported to modm.
38744020
[a8edbe8]: https://github.com/modm-io/modm/commit/a8edbe8
38754021
[ab9bcee]: https://github.com/modm-io/modm/commit/ab9bcee
38764022
[ac46099]: https://github.com/modm-io/modm/commit/ac46099
4023+
[ae74049]: https://github.com/modm-io/modm/commit/ae74049
38774024
[af2b352]: https://github.com/modm-io/modm/commit/af2b352
38784025
[afaea7f]: https://github.com/modm-io/modm/commit/afaea7f
38794026
[afbd533]: https://github.com/modm-io/modm/commit/afbd533
@@ -3929,9 +4076,12 @@ Please note that contributions from xpcc were continuously ported to modm.
39294076
[e3c0321]: https://github.com/modm-io/modm/commit/e3c0321
39304077
[e46e7df]: https://github.com/modm-io/modm/commit/e46e7df
39314078
[e4b1a4a]: https://github.com/modm-io/modm/commit/e4b1a4a
4079+
[e579250]: https://github.com/modm-io/modm/commit/e579250
4080+
[e92dc1d]: https://github.com/modm-io/modm/commit/e92dc1d
39324081
[eb2748e]: https://github.com/modm-io/modm/commit/eb2748e
39334082
[eba68a4]: https://github.com/modm-io/modm/commit/eba68a4
39344083
[eda224e]: https://github.com/modm-io/modm/commit/eda224e
4084+
[f402893]: https://github.com/modm-io/modm/commit/f402893
39354085
[f4c7492]: https://github.com/modm-io/modm/commit/f4c7492
39364086
[f4d5d6c]: https://github.com/modm-io/modm/commit/f4d5d6c
39374087
[f5cdf6a]: https://github.com/modm-io/modm/commit/f5cdf6a

docs/release/2024q4.md

+131
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
## 2025-01-01: 2024q4 release
2+
3+
This release covers everything from 2024-10-01 and has been tested with avr-gcc
4+
v13.2.0 from Upstream and arm-none-eabi-gcc v13.2.1 from xpack.
5+
6+
Breaking changes:
7+
8+
**Protothreads and Resumables are deprecated! Please use Fibers instead!**
9+
Note that you can disable the deprecation by resetting the option
10+
`modm:processing:protothread:use_fiber` to `false`, however, you will be limited
11+
to using GCC12 as GCC13 and newer does not compile our implementation anymore.
12+
13+
A shim is provided to allow the use of Protothreads and Resumables with Fibers
14+
without any significant modification of the existing code. However you must
15+
replace the main loop calling all protothreads with the fiber scheduler:
16+
17+
```cpp
18+
int main()
19+
{
20+
/*
21+
while(true)
22+
{
23+
protothread1.update();
24+
protothread2.update();
25+
}
26+
*/
27+
modm::fiber::Scheduler::run();
28+
return 0;
29+
}
30+
```
31+
32+
The `modm:processing:protothread` and `modm:processing:resumable` modules will
33+
be removed by the end of 2025. Please port your code to use fibers instead.
34+
Consult the `modm:processing:fiber` module docs for more information.
35+
36+
Features:
37+
38+
- Add efficient stack overflow check in fiber yield function.
39+
- Enable D-Cache for Cortex-M7 if DMA is not used.
40+
- Support for GCC13 which was blocked on deprecating Resumables and Protothreads.
41+
- Add RTC driver for STM32.
42+
- Enable low speed clock input on all STM32 boards.
43+
44+
Integrated Projects:
45+
46+
- CMSIS-Core upgraded to v6.1.0.
47+
- CMSIS-DSP upgraded to v1.16.2.
48+
- STM32L4 headers upgraded to v1.7.4.
49+
- STM32F1 headers upgraded to v4.3.5.
50+
- LVGL upgraded to v9.2.0.
51+
- TinyUSB upgraded to v0.17.
52+
- printf upgraded to v6.2.0.
53+
- ETL upgraded to v20.39.4.
54+
- nanopb upgraded to v0.4.9.
55+
56+
Fixes:
57+
58+
- Make AMNB usable in Fibers.
59+
- Reset AVRs on abandonment.
60+
- Prevent RX FIFO overflow in STM32 SPI master.
61+
- Fix `Timeout::wait()` implementation not waiting.
62+
- Fix IWDG prescaler computation on STM32.
63+
- Support Python 3.13 in modm_tools.
64+
65+
New device drivers:
66+
67+
- DW3310 Ultra-Wide Band driver as `modm:driver:dw3110`.
68+
69+
New development boards:
70+
71+
- WeAct Studio STM32C011F6 as `modm:board:weact-c011f6`.
72+
73+
Known bugs:
74+
75+
- STM32F723 is missing support to use built-in USB HS PHY. See #1171.
76+
- OpenOCD cannot enable SWO on STM32H7 targets. See #1079.
77+
- `arm-none-eabi-gdb` TUI and GDBGUI interfaces are not supported on Windows.
78+
See #591.
79+
- Generating modm on Windows creates paths with `\` that are not compatible with
80+
Unix. See #310.
81+
- `lbuild build` and `lbuild clean` do not remove all previously generated files
82+
when the configuration changes. See #285.
83+
84+
Many thanks to all our contributors.
85+
A special shoutout to first timers 🎉:
86+
87+
- Andrey Kunitsyn (@andryblack)
88+
- Christopher Durand (@chris-durand)
89+
- Elias H. 🎉
90+
- Frank Altheim (@frnktank) 🎉
91+
- Jan-Gerd Meß (@jgmess-dlr) 🎉
92+
- Kaelin Laundry (@WasabiFan)
93+
- Michael Jossen (@Javask)
94+
- Niklas Hauser (@salkinium)
95+
- Raphael Lehmann (@rleh)
96+
- Rasmus Kleist (@rasmuskleist)
97+
- Vishwanath Martur (@vishwamartur) 🎉
98+
99+
PR #1248 -> 2024q4.
100+
101+
<details>
102+
<summary>Detailed changelog</summary>
103+
104+
#### 2025-01-01: Add WeAct Studio STM32C011F6 board
105+
106+
PR #1249 -> 7ba2fbb.
107+
Tested in hardware by @salkinium.
108+
109+
#### 2024-12-30: Add RTC peripheral driver for STM32
110+
111+
PR #1242 -> f402893.
112+
Tested in hardware by @salkinium.
113+
114+
#### 2024-12-01: Deprecate Protothreads and Resumable Functions
115+
116+
PR #1232 -> e92dc1d.
117+
Tested in hardware by @salkinium.
118+
119+
#### 2024-11-10: Add stack overflow check to fibers
120+
121+
Stack overflows lead to abandonment with the `fbr.stkof` assertion.
122+
123+
PR #1219 -> ae74049.
124+
Tested in hardware by @salkinium.
125+
126+
#### 2024-11-05: Add driver for DW3110
127+
128+
PR #1210 -> e579250.
129+
Tested in hardware by @Javask and @rleh.
130+
131+
</details>

tools/scripts/authors.py

+3
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,14 @@
4040
"Erik Henriksson": "henrikssn",
4141
"Fabian Greif": "dergraaf",
4242
"Felix Petriconi": "FelixPetriconi",
43+
"Frank Altheim": "frnktank",
4344
"Georgi Grinshpun": "georgi-g",
4445
"Hannes Ellinger": "el-han",
4546
"Hans Schily": "RzwoDzwo",
4647
"Henrik Hose": "hshose",
4748
"Jacob Schultz Andersen": "jasa",
4849
"Jakob Riepler": "XDjackieXD",
50+
"Jan-Gerd Meß": "jgmess-dlr",
4951
"Jeff McBride": "mcbridejc",
5052
"Jens Böckmann": "jensboe",
5153
"Jonas Kazem Andersen": "JKazem",
@@ -96,6 +98,7 @@
9698
"Tomasz Wasilczyk": "twasilczyk",
9799
"Valeriy Osipov": "SgtPepperFTW",
98100
"Victor Costa": "victorandrehc",
101+
"Vishwanath Martur": "vishwamartur",
99102
"Vivien Henry": "lukh",
100103
"Zawadniak Pedro": "PDR5",
101104
"Álan Crístoffer": "acristoffers",

0 commit comments

Comments
 (0)