Skip to content

Commit 1e32e81

Browse files
fpistmvaleros
authored andcommitted
Add Generic WBxx
Signed-off-by: Frederic Pillon <[email protected]>
1 parent df9eaf4 commit 1e32e81

16 files changed

+643
-987
lines changed

Diff for: CI/build/conf/cores_config.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@
234234
"NUCLEO_L496ZG-P",
235235
"NUCLEO_L4R5ZI",
236236
"NUCLEO_L4R5ZI-P",
237-
"PNUCLEO_WB55RG",
237+
"P_NUCLEO_WB55RG",
238238
"STM32MP157C_DK2"
239239
]
240240
},
@@ -266,7 +266,7 @@
266266
"applicable": false,
267267
"boards": [
268268
"DISCO_F746NG", "B_L475E_IOT01A", "NUCLEO_F207ZG", "NUCLEO_F429ZI", "NUCLEO_F767ZI",
269-
"NUCLEO_H743ZI2", "PNUCLEO_WB55RG", "STM32MP157C_DK2"
269+
"NUCLEO_H743ZI2", "P_NUCLEO_WB55RG", "STM32MP157C_DK2"
270270
]
271271
},
272272
{

Diff for: README.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
6262
- [Generic STM32L0 boards](#generic-stm32l0-boards)
6363
- [Generic STM32L4 boards](#generic-stm32l4-boards)
6464
- [Generic STM32L5 boards](#generic-stm32l5-boards)
65+
- [Generic STM32WB boards](#generic-stm32wb-boards)
6566
- [3D printer boards](#3d-printer-boards)
6667
- [LoRa boards](#lora-boards)
6768
- [Electronic Speed Controller boards](#electronic-speed-controller-boards)
@@ -110,7 +111,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
110111
| :green_heart: | STM32L452RE | [Nucleo L452RE](http://www.st.com/en/evaluation-tools/nucleo-l452re.html) | *1.5.0* | |
111112
| :green_heart: | STM32L452RE-P | [Nucleo L452RE-P](http://www.st.com/en/evaluation-tools/nucleo-l452re-p.html) | *1.8.0* | |
112113
| :green_heart: | STM32L476RG | [Nucleo L476RG](http://www.st.com/en/evaluation-tools/nucleo-l476rg.html) | *0.1.0* | |
113-
| :green_heart: | STM32WB55RG<br>STM32WB55CG | [P-Nucleo-WB55RG](https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html) | *1.6.0* | No BLE support |
114+
| :green_heart: | STM32WB55RG<br>STM32WB55CG | [P-Nucleo-WB55RG](https://www.st.com/en/evaluation-tools/p-nucleo-wb55.html) | *1.6.0* | BLE support with [STM32duinoBLE](https://github.com/stm32duino/STM32duinoBLE) |
114115

115116
### [Nucleo 32](https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-nucleo-boards.html) boards
116117

@@ -305,6 +306,13 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
305306
| :yellow_heart: | STM32L552ZC-Q<br>STM32L552ZE-Q | Generic Board | **2.0.0** | |
306307
| :yellow_heart: | STM32L562ZE-Q | Generic Board | **2.0.0** | |
307308

309+
### Generic STM32WB boards
310+
311+
| Status | Device(s) | Name | Release | Notes |
312+
| :----: | :-------: | ---- | :-----: | :---- |
313+
| :yellow_heart: | STM32WB55CC<br>STM32WB55CE<br>STM32WB55CG | Generic Board | **2.0.0** | |
314+
| :yellow_heart: | STM32WB55RC<br>STM32WB55RE<br>STM32WB55RG | Generic Board | **2.0.0** | |
315+
308316
### 3D printer boards
309317

310318
| Status | Device(s) | Name | Release | Notes |
@@ -356,7 +364,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
356364

357365
| Status | Device(s) | Name | Release | Notes |
358366
| :----: | :-------: | ---- | :-----: | :---- |
359-
| :green_heart: | STM32WB55CG | [SharkyMKR](https://midatronics.com/shop/development-boards/mkr-sharky-i/) | *1.7.0* | |
367+
| :green_heart: | STM32WB55CE | [SharkyMKR](https://midatronics.com/shop/development-boards/mkr-sharky-i/) | *1.7.0* | |
360368

361369
## Next release
362370

Diff for: boards.txt

+140-19
Original file line numberDiff line numberDiff line change
@@ -466,18 +466,18 @@ Nucleo_64.menu.pnum.NUCLEO_L476RG.build.product_line=STM32L476xx
466466
Nucleo_64.menu.pnum.NUCLEO_L476RG.build.variant=STM32L4xx/L475R(C-E-G)Tx_L476R(C-E-G)Tx_L486RGTx
467467
Nucleo_64.menu.pnum.NUCLEO_L476RG.build.cmsis_lib_gcc=arm_cortexM4lf_math
468468

469-
# PNUCLEO_WB55RG board
470-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG=P-Nucleo WB55RG
471-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.node="NODE_WB55RG,NOD_WB55RG"
472-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.upload.maximum_size=524288
473-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.upload.maximum_data_size=196604
474-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.mcu=cortex-m4
475-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
476-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.board=PNUCLEO_WB55RG
477-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.series=STM32WBxx
478-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.product_line=STM32WB55xx
479-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.variant=STM32WBxx/PNUCLEO_WB55RG
480-
Nucleo_64.menu.pnum.PNUCLEO_WB55RG.build.cmsis_lib_gcc=arm_cortexM4lf_math
469+
# P_NUCLEO_WB55RG board
470+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG=P-Nucleo WB55RG
471+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.node="NODE_WB55RG,NOD_WB55RG"
472+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.upload.maximum_size=524288
473+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.upload.maximum_data_size=196608
474+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.mcu=cortex-m4
475+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
476+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.board=P_NUCLEO_WB55RG
477+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.series=STM32WBxx
478+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.product_line=STM32WB55xx
479+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.variant=STM32WBxx/WB55RCVx_WB55REVx_WB55RGVx
480+
Nucleo_64.menu.pnum.P_NUCLEO_WB55RG.build.cmsis_lib_gcc=arm_cortexM4lf_math
481481

482482
# Upload menu
483483
Nucleo_64.menu.upload_method.MassStorage=Mass Storage
@@ -849,9 +849,6 @@ STM32MP1.menu.upload_method.MassStorage=Generate run_arduino.sh (You need to cop
849849
STM32MP1.menu.upload_method.MassStorage.upload.protocol=
850850
STM32MP1.menu.upload_method.MassStorage.upload.tool=remoteproc_gen
851851

852-
################################################################################
853-
# Other boards
854-
855852
###############################
856853
# Generic F0
857854
GenF0.name=Generic STM32F0 series
@@ -2998,7 +2995,83 @@ GenL5.menu.upload_method.dfuMethod.upload.protocol=2
29982995
GenL5.menu.upload_method.dfuMethod.upload.options=-g
29992996
GenL5.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
30002997

3001-
#################################################################################
2998+
################################################################################
2999+
# Generic WB
3000+
GenWB.name=Generic STM32WB series
3001+
3002+
GenWB.build.core=arduino
3003+
GenWB.build.board=GenWB
3004+
GenWB.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial}
3005+
GenWB.build.mcu=cortex-m4
3006+
GenWB.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
3007+
GenWB.build.series=STM32WBxx
3008+
GenWB.build.cmsis_lib_gcc=arm_cortexM4lf_math
3009+
3010+
# Generic WB55CCUx
3011+
GenWB.menu.pnum.GENERIC_WB55CCUX=Generic WB55CCUx
3012+
GenWB.menu.pnum.GENERIC_WB55CCUX.upload.maximum_size=131072
3013+
GenWB.menu.pnum.GENERIC_WB55CCUX.upload.maximum_data_size=65536
3014+
GenWB.menu.pnum.GENERIC_WB55CCUX.build.board=GENERIC_WB55CCUX
3015+
GenWB.menu.pnum.GENERIC_WB55CCUX.build.product_line=STM32WB55xx
3016+
GenWB.menu.pnum.GENERIC_WB55CCUX.build.variant=STM32WBxx/WB55CCUx_WB55CEUx_WB55CGUx
3017+
3018+
# Generic WB55CEUx
3019+
GenWB.menu.pnum.GENERIC_WB55CEUX=Generic WB55CEUx
3020+
GenWB.menu.pnum.GENERIC_WB55CEUX.upload.maximum_size=262144
3021+
GenWB.menu.pnum.GENERIC_WB55CEUX.upload.maximum_data_size=196608
3022+
GenWB.menu.pnum.GENERIC_WB55CEUX.build.board=GENERIC_WB55CEUX
3023+
GenWB.menu.pnum.GENERIC_WB55CEUX.build.product_line=STM32WB55xx
3024+
GenWB.menu.pnum.GENERIC_WB55CEUX.build.variant=STM32WBxx/WB55CCUx_WB55CEUx_WB55CGUx
3025+
3026+
# Generic WB55CGUx
3027+
GenWB.menu.pnum.GENERIC_WB55CGUX=Generic WB55CGUx
3028+
GenWB.menu.pnum.GENERIC_WB55CGUX.upload.maximum_size=524288
3029+
GenWB.menu.pnum.GENERIC_WB55CGUX.upload.maximum_data_size=196608
3030+
GenWB.menu.pnum.GENERIC_WB55CGUX.build.board=GENERIC_WB55CGUX
3031+
GenWB.menu.pnum.GENERIC_WB55CGUX.build.product_line=STM32WB55xx
3032+
GenWB.menu.pnum.GENERIC_WB55CGUX.build.variant=STM32WBxx/WB55CCUx_WB55CEUx_WB55CGUx
3033+
3034+
# Generic WB55RCVx
3035+
GenWB.menu.pnum.GENERIC_WB55RCVX=Generic WB55RCVx
3036+
GenWB.menu.pnum.GENERIC_WB55RCVX.upload.maximum_size=131072
3037+
GenWB.menu.pnum.GENERIC_WB55RCVX.upload.maximum_data_size=65536
3038+
GenWB.menu.pnum.GENERIC_WB55RCVX.build.board=GENERIC_WB55RCVX
3039+
GenWB.menu.pnum.GENERIC_WB55RCVX.build.product_line=STM32WB55xx
3040+
GenWB.menu.pnum.GENERIC_WB55RCVX.build.variant=STM32WBxx/WB55RCVx_WB55REVx_WB55RGVx
3041+
3042+
# Generic WB55REVx
3043+
GenWB.menu.pnum.GENERIC_WB55REVX=Generic WB55REVx
3044+
GenWB.menu.pnum.GENERIC_WB55REVX.upload.maximum_size=262144
3045+
GenWB.menu.pnum.GENERIC_WB55REVX.upload.maximum_data_size=196608
3046+
GenWB.menu.pnum.GENERIC_WB55REVX.build.board=GENERIC_WB55REVX
3047+
GenWB.menu.pnum.GENERIC_WB55REVX.build.product_line=STM32WB55xx
3048+
GenWB.menu.pnum.GENERIC_WB55REVX.build.variant=STM32WBxx/WB55RCVx_WB55REVx_WB55RGVx
3049+
3050+
# Generic WB55RGVx
3051+
GenWB.menu.pnum.GENERIC_WB55RGVX=Generic WB55RGVx
3052+
GenWB.menu.pnum.GENERIC_WB55RGVX.upload.maximum_size=524288
3053+
GenWB.menu.pnum.GENERIC_WB55RGVX.upload.maximum_data_size=196608
3054+
GenWB.menu.pnum.GENERIC_WB55RGVX.build.board=GENERIC_WB55RGVX
3055+
GenWB.menu.pnum.GENERIC_WB55RGVX.build.product_line=STM32WB55xx
3056+
GenWB.menu.pnum.GENERIC_WB55RGVX.build.variant=STM32WBxx/WB55RCVx_WB55REVx_WB55RGVx
3057+
3058+
# Upload menu
3059+
GenWB.menu.upload_method.swdMethod=STM32CubeProgrammer (SWD)
3060+
GenWB.menu.upload_method.swdMethod.upload.protocol=0
3061+
GenWB.menu.upload_method.swdMethod.upload.options=-g
3062+
GenWB.menu.upload_method.swdMethod.upload.tool=stm32CubeProg
3063+
3064+
GenWB.menu.upload_method.serialMethod=STM32CubeProgrammer (Serial)
3065+
GenWB.menu.upload_method.serialMethod.upload.protocol=1
3066+
GenWB.menu.upload_method.serialMethod.upload.options={serial.port.file} -s
3067+
GenWB.menu.upload_method.serialMethod.upload.tool=stm32CubeProg
3068+
3069+
GenWB.menu.upload_method.dfuMethod=STM32CubeProgrammer (DFU)
3070+
GenWB.menu.upload_method.dfuMethod.upload.protocol=2
3071+
GenWB.menu.upload_method.dfuMethod.upload.options=-g
3072+
GenWB.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
3073+
3074+
################################################################################
30023075
# Electronic Speed Controller boards
30033076

30043077
ESC_board.name=Electronic speed controllers
@@ -3473,14 +3546,14 @@ Midatronics.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.x
34733546
# MKR_SHARKY board
34743547
Midatronics.menu.pnum.MKR_SHARKY=MKR Sharky
34753548
Midatronics.menu.pnum.MKR_SHARKY.node=NODE_WB55CE
3476-
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_size=524288
3477-
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_data_size=196604
3549+
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_size=262144
3550+
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_data_size=196608
34783551
Midatronics.menu.pnum.MKR_SHARKY.build.mcu=cortex-m4
34793552
Midatronics.menu.pnum.MKR_SHARKY.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
34803553
Midatronics.menu.pnum.MKR_SHARKY.build.board=MKR_SHARKY
34813554
Midatronics.menu.pnum.MKR_SHARKY.build.series=STM32WBxx
34823555
Midatronics.menu.pnum.MKR_SHARKY.build.product_line=STM32WB55xx
3483-
Midatronics.menu.pnum.MKR_SHARKY.build.variant=STM32WBxx/MKR_SHARKY
3556+
Midatronics.menu.pnum.MKR_SHARKY.build.variant=STM32WBxx/WB55CCUx_WB55CEUx_WB55CGUx
34843557
Midatronics.menu.pnum.MKR_SHARKY.build.cmsis_lib_gcc=arm_cortexM4lf_math
34853558

34863559
# Upload menu
@@ -3615,6 +3688,12 @@ GenL5.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
36153688
GenL5.menu.xserial.disabled=Disabled (no Serial support)
36163689
GenL5.menu.xserial.disabled.build.xSerial=
36173690

3691+
GenWB.menu.xserial.generic=Enabled (generic 'Serial')
3692+
GenWB.menu.xserial.none=Enabled (no generic 'Serial')
3693+
GenWB.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
3694+
GenWB.menu.xserial.disabled=Disabled (no Serial support)
3695+
GenWB.menu.xserial.disabled.build.xSerial=
3696+
36183697
ESC_board.menu.xserial.generic=Enabled (generic 'Serial')
36193698
ESC_board.menu.xserial.none=Enabled (no generic 'Serial')
36203699
ESC_board.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
@@ -3835,6 +3914,19 @@ GenL5.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
38353914
GenL5.menu.xusb.HSFS=High Speed in Full Speed mode
38363915
GenL5.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
38373916

3917+
GenWB.menu.usb.none=None
3918+
GenWB.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
3919+
GenWB.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
3920+
GenWB.menu.usb.CDC=CDC (no generic 'Serial')
3921+
GenWB.menu.usb.CDC.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB
3922+
GenWB.menu.usb.HID=HID (keyboard and mouse)
3923+
GenWB.menu.usb.HID.build.enable_usb={build.usb_flags} -DUSBD_USE_HID_COMPOSITE
3924+
GenWB.menu.xusb.FS=Low/Full Speed
3925+
GenWB.menu.xusb.HS=High Speed
3926+
GenWB.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
3927+
GenWB.menu.xusb.HSFS=High Speed in Full Speed mode
3928+
GenWB.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
3929+
38383930
3dprinter.menu.usb.none=None
38393931
3dprinter.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
38403932
3dprinter.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
@@ -4192,6 +4284,25 @@ GenL5.menu.opt.o3lto.build.flags.optimize=-O3 -flto
41924284
GenL5.menu.opt.ogstd=Debug (-g)
41934285
GenL5.menu.opt.ogstd.build.flags.optimize=-g -Og
41944286

4287+
GenWB.menu.opt.osstd=Smallest (-Os default)
4288+
GenWB.menu.opt.osstd.build.flags.optimize=-Os
4289+
GenWB.menu.opt.oslto=Smallest (-Os) with LTO
4290+
GenWB.menu.opt.oslto.build.flags.optimize=-Os -flto
4291+
GenWB.menu.opt.o1std=Fast (-O1)
4292+
GenWB.menu.opt.o1std.build.flags.optimize=-O1
4293+
GenWB.menu.opt.o1lto=Fast (-O1) with LTO
4294+
GenWB.menu.opt.o1lto.build.flags.optimize=-O1 -flto
4295+
GenWB.menu.opt.o2std=Faster (-O2)
4296+
GenWB.menu.opt.o2std.build.flags.optimize=-O2
4297+
GenWB.menu.opt.o2lto=Faster (-O2) with LTO
4298+
GenWB.menu.opt.o2lto.build.flags.optimize=-O2 -flto
4299+
GenWB.menu.opt.o3std=Fastest (-O3)
4300+
GenWB.menu.opt.o3std.build.flags.optimize=-O3
4301+
GenWB.menu.opt.o3lto=Fastest (-O3) with LTO
4302+
GenWB.menu.opt.o3lto.build.flags.optimize=-O3 -flto
4303+
GenWB.menu.opt.ogstd=Debug (-g)
4304+
GenWB.menu.opt.ogstd.build.flags.optimize=-g -Og
4305+
41954306
ESC_board.menu.opt.osstd=Smallest (-Os default)
41964307
ESC_board.menu.opt.oslto=Smallest (-Os) with LTO
41974308
ESC_board.menu.opt.oslto.build.flags.optimize=-Os -flto
@@ -4471,6 +4582,16 @@ GenL5.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float
44714582
GenL5.menu.rtlib.full=Newlib Standard
44724583
GenL5.menu.rtlib.full.build.flags.ldspecs=
44734584

4585+
GenWB.menu.rtlib.nano=Newlib Nano (default)
4586+
GenWB.menu.rtlib.nanofp=Newlib Nano + Float Printf
4587+
GenWB.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float
4588+
GenWB.menu.rtlib.nanofs=Newlib Nano + Float Scanf
4589+
GenWB.menu.rtlib.nanofs.build.flags.ldspecs=--specs=nano.specs -u _scanf_float
4590+
GenWB.menu.rtlib.nanofps=Newlib Nano + Float Printf/Scanf
4591+
GenWB.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float -u _scanf_float
4592+
GenWB.menu.rtlib.full=Newlib Standard
4593+
GenWB.menu.rtlib.full.build.flags.ldspecs=
4594+
44744595
ESC_board.menu.rtlib.nano=Newlib Nano (default)
44754596
ESC_board.menu.rtlib.nanofp=Newlib Nano + Float Printf
44764597
ESC_board.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float

0 commit comments

Comments
 (0)