Skip to content

Commit ceb6a04

Browse files
committed
[variant] Add Generic WBxx
Signed-off-by: Frederic Pillon <[email protected]>
1 parent ca616fd commit ceb6a04

16 files changed

+645
-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

@@ -308,6 +309,13 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
308309
| :yellow_heart: | STM32L552ZC-Q<br>STM32L552ZE-Q | Generic Board | **2.0.0** | |
309310
| :yellow_heart: | STM32L562ZE-Q | Generic Board | **2.0.0** | |
310311

312+
### Generic STM32WB boards
313+
314+
| Status | Device(s) | Name | Release | Notes |
315+
| :----: | :-------: | ---- | :-----: | :---- |
316+
| :yellow_heart: | STM32WB55CC<br>STM32WB55CE<br>STM32WB55CG | Generic Board | **2.0.0** | |
317+
| :yellow_heart: | STM32WB55RC<br>STM32WB55RE<br>STM32WB55RG | Generic Board | **2.0.0** | |
318+
311319
### 3D printer boards
312320

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

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

364372
## Next release
365373

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)T_L476R(C-E-G)T_L486RGT
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/WB55R(C-E-G)V
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
@@ -863,9 +863,6 @@ STM32MP1.menu.upload_method.MassStorage=Generate run_arduino.sh (You need to cop
863863
STM32MP1.menu.upload_method.MassStorage.upload.protocol=
864864
STM32MP1.menu.upload_method.MassStorage.upload.tool=remoteproc_gen
865865

866-
################################################################################
867-
# Other boards
868-
869866
###############################
870867
# Generic F0
871868
GenF0.name=Generic STM32F0 series
@@ -3044,7 +3041,83 @@ GenL5.menu.upload_method.dfuMethod.upload.protocol=2
30443041
GenL5.menu.upload_method.dfuMethod.upload.options=-g
30453042
GenL5.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
30463043

3047-
#################################################################################
3044+
################################################################################
3045+
# Generic WB
3046+
GenWB.name=Generic STM32WB series
3047+
3048+
GenWB.build.core=arduino
3049+
GenWB.build.board=GenWB
3050+
GenWB.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial}
3051+
GenWB.build.mcu=cortex-m4
3052+
GenWB.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
3053+
GenWB.build.series=STM32WBxx
3054+
GenWB.build.cmsis_lib_gcc=arm_cortexM4lf_math
3055+
3056+
# Generic WB55CCUx
3057+
GenWB.menu.pnum.GENERIC_WB55CCUX=Generic WB55CCUx
3058+
GenWB.menu.pnum.GENERIC_WB55CCUX.upload.maximum_size=131072
3059+
GenWB.menu.pnum.GENERIC_WB55CCUX.upload.maximum_data_size=65536
3060+
GenWB.menu.pnum.GENERIC_WB55CCUX.build.board=GENERIC_WB55CCUX
3061+
GenWB.menu.pnum.GENERIC_WB55CCUX.build.product_line=STM32WB55xx
3062+
GenWB.menu.pnum.GENERIC_WB55CCUX.build.variant=STM32WBxx/WB55C(C-E-G)U
3063+
3064+
# Generic WB55CEUx
3065+
GenWB.menu.pnum.GENERIC_WB55CEUX=Generic WB55CEUx
3066+
GenWB.menu.pnum.GENERIC_WB55CEUX.upload.maximum_size=262144
3067+
GenWB.menu.pnum.GENERIC_WB55CEUX.upload.maximum_data_size=196608
3068+
GenWB.menu.pnum.GENERIC_WB55CEUX.build.board=GENERIC_WB55CEUX
3069+
GenWB.menu.pnum.GENERIC_WB55CEUX.build.product_line=STM32WB55xx
3070+
GenWB.menu.pnum.GENERIC_WB55CEUX.build.variant=STM32WBxx/WB55C(C-E-G)U
3071+
3072+
# Generic WB55CGUx
3073+
GenWB.menu.pnum.GENERIC_WB55CGUX=Generic WB55CGUx
3074+
GenWB.menu.pnum.GENERIC_WB55CGUX.upload.maximum_size=524288
3075+
GenWB.menu.pnum.GENERIC_WB55CGUX.upload.maximum_data_size=196608
3076+
GenWB.menu.pnum.GENERIC_WB55CGUX.build.board=GENERIC_WB55CGUX
3077+
GenWB.menu.pnum.GENERIC_WB55CGUX.build.product_line=STM32WB55xx
3078+
GenWB.menu.pnum.GENERIC_WB55CGUX.build.variant=STM32WBxx/WB55C(C-E-G)U
3079+
3080+
# Generic WB55RCVx
3081+
GenWB.menu.pnum.GENERIC_WB55RCVX=Generic WB55RCVx
3082+
GenWB.menu.pnum.GENERIC_WB55RCVX.upload.maximum_size=131072
3083+
GenWB.menu.pnum.GENERIC_WB55RCVX.upload.maximum_data_size=65536
3084+
GenWB.menu.pnum.GENERIC_WB55RCVX.build.board=GENERIC_WB55RCVX
3085+
GenWB.menu.pnum.GENERIC_WB55RCVX.build.product_line=STM32WB55xx
3086+
GenWB.menu.pnum.GENERIC_WB55RCVX.build.variant=STM32WBxx/WB55R(C-E-G)V
3087+
3088+
# Generic WB55REVx
3089+
GenWB.menu.pnum.GENERIC_WB55REVX=Generic WB55REVx
3090+
GenWB.menu.pnum.GENERIC_WB55REVX.upload.maximum_size=262144
3091+
GenWB.menu.pnum.GENERIC_WB55REVX.upload.maximum_data_size=196608
3092+
GenWB.menu.pnum.GENERIC_WB55REVX.build.board=GENERIC_WB55REVX
3093+
GenWB.menu.pnum.GENERIC_WB55REVX.build.product_line=STM32WB55xx
3094+
GenWB.menu.pnum.GENERIC_WB55REVX.build.variant=STM32WBxx/WB55R(C-E-G)V
3095+
3096+
# Generic WB55RGVx
3097+
GenWB.menu.pnum.GENERIC_WB55RGVX=Generic WB55RGVx
3098+
GenWB.menu.pnum.GENERIC_WB55RGVX.upload.maximum_size=524288
3099+
GenWB.menu.pnum.GENERIC_WB55RGVX.upload.maximum_data_size=196608
3100+
GenWB.menu.pnum.GENERIC_WB55RGVX.build.board=GENERIC_WB55RGVX
3101+
GenWB.menu.pnum.GENERIC_WB55RGVX.build.product_line=STM32WB55xx
3102+
GenWB.menu.pnum.GENERIC_WB55RGVX.build.variant=STM32WBxx/WB55R(C-E-G)V
3103+
3104+
# Upload menu
3105+
GenWB.menu.upload_method.swdMethod=STM32CubeProgrammer (SWD)
3106+
GenWB.menu.upload_method.swdMethod.upload.protocol=0
3107+
GenWB.menu.upload_method.swdMethod.upload.options=-g
3108+
GenWB.menu.upload_method.swdMethod.upload.tool=stm32CubeProg
3109+
3110+
GenWB.menu.upload_method.serialMethod=STM32CubeProgrammer (Serial)
3111+
GenWB.menu.upload_method.serialMethod.upload.protocol=1
3112+
GenWB.menu.upload_method.serialMethod.upload.options={serial.port.file} -s
3113+
GenWB.menu.upload_method.serialMethod.upload.tool=stm32CubeProg
3114+
3115+
GenWB.menu.upload_method.dfuMethod=STM32CubeProgrammer (DFU)
3116+
GenWB.menu.upload_method.dfuMethod.upload.protocol=2
3117+
GenWB.menu.upload_method.dfuMethod.upload.options=-g
3118+
GenWB.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg
3119+
3120+
################################################################################
30483121
# Electronic Speed Controller boards
30493122

30503123
ESC_board.name=Electronic speed controllers
@@ -3519,14 +3592,14 @@ Midatronics.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.x
35193592
# MKR_SHARKY board
35203593
Midatronics.menu.pnum.MKR_SHARKY=MKR Sharky
35213594
Midatronics.menu.pnum.MKR_SHARKY.node=NODE_WB55CE
3522-
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_size=524288
3523-
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_data_size=196604
3595+
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_size=262144
3596+
Midatronics.menu.pnum.MKR_SHARKY.upload.maximum_data_size=196608
35243597
Midatronics.menu.pnum.MKR_SHARKY.build.mcu=cortex-m4
35253598
Midatronics.menu.pnum.MKR_SHARKY.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
35263599
Midatronics.menu.pnum.MKR_SHARKY.build.board=MKR_SHARKY
35273600
Midatronics.menu.pnum.MKR_SHARKY.build.series=STM32WBxx
35283601
Midatronics.menu.pnum.MKR_SHARKY.build.product_line=STM32WB55xx
3529-
Midatronics.menu.pnum.MKR_SHARKY.build.variant=STM32WBxx/MKR_SHARKY
3602+
Midatronics.menu.pnum.MKR_SHARKY.build.variant=STM32WBxx/WB55C(C-E-G)U
35303603
Midatronics.menu.pnum.MKR_SHARKY.build.cmsis_lib_gcc=arm_cortexM4lf_math
35313604

35323605
# Upload menu
@@ -3661,6 +3734,12 @@ GenL5.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
36613734
GenL5.menu.xserial.disabled=Disabled (no Serial support)
36623735
GenL5.menu.xserial.disabled.build.xSerial=
36633736

3737+
GenWB.menu.xserial.generic=Enabled (generic 'Serial')
3738+
GenWB.menu.xserial.none=Enabled (no generic 'Serial')
3739+
GenWB.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
3740+
GenWB.menu.xserial.disabled=Disabled (no Serial support)
3741+
GenWB.menu.xserial.disabled.build.xSerial=
3742+
36643743
ESC_board.menu.xserial.generic=Enabled (generic 'Serial')
36653744
ESC_board.menu.xserial.none=Enabled (no generic 'Serial')
36663745
ESC_board.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
@@ -3881,6 +3960,19 @@ GenL5.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
38813960
GenL5.menu.xusb.HSFS=High Speed in Full Speed mode
38823961
GenL5.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
38833962

3963+
GenWB.menu.usb.none=None
3964+
GenWB.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
3965+
GenWB.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
3966+
GenWB.menu.usb.CDC=CDC (no generic 'Serial')
3967+
GenWB.menu.usb.CDC.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB
3968+
GenWB.menu.usb.HID=HID (keyboard and mouse)
3969+
GenWB.menu.usb.HID.build.enable_usb={build.usb_flags} -DUSBD_USE_HID_COMPOSITE
3970+
GenWB.menu.xusb.FS=Low/Full Speed
3971+
GenWB.menu.xusb.HS=High Speed
3972+
GenWB.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
3973+
GenWB.menu.xusb.HSFS=High Speed in Full Speed mode
3974+
GenWB.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS
3975+
38843976
3dprinter.menu.usb.none=None
38853977
3dprinter.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
38863978
3dprinter.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
@@ -4238,6 +4330,25 @@ GenL5.menu.opt.o3lto.build.flags.optimize=-O3 -flto
42384330
GenL5.menu.opt.ogstd=Debug (-g)
42394331
GenL5.menu.opt.ogstd.build.flags.optimize=-g -Og
42404332

4333+
GenWB.menu.opt.osstd=Smallest (-Os default)
4334+
GenWB.menu.opt.osstd.build.flags.optimize=-Os
4335+
GenWB.menu.opt.oslto=Smallest (-Os) with LTO
4336+
GenWB.menu.opt.oslto.build.flags.optimize=-Os -flto
4337+
GenWB.menu.opt.o1std=Fast (-O1)
4338+
GenWB.menu.opt.o1std.build.flags.optimize=-O1
4339+
GenWB.menu.opt.o1lto=Fast (-O1) with LTO
4340+
GenWB.menu.opt.o1lto.build.flags.optimize=-O1 -flto
4341+
GenWB.menu.opt.o2std=Faster (-O2)
4342+
GenWB.menu.opt.o2std.build.flags.optimize=-O2
4343+
GenWB.menu.opt.o2lto=Faster (-O2) with LTO
4344+
GenWB.menu.opt.o2lto.build.flags.optimize=-O2 -flto
4345+
GenWB.menu.opt.o3std=Fastest (-O3)
4346+
GenWB.menu.opt.o3std.build.flags.optimize=-O3
4347+
GenWB.menu.opt.o3lto=Fastest (-O3) with LTO
4348+
GenWB.menu.opt.o3lto.build.flags.optimize=-O3 -flto
4349+
GenWB.menu.opt.ogstd=Debug (-g)
4350+
GenWB.menu.opt.ogstd.build.flags.optimize=-g -Og
4351+
42414352
ESC_board.menu.opt.osstd=Smallest (-Os default)
42424353
ESC_board.menu.opt.oslto=Smallest (-Os) with LTO
42434354
ESC_board.menu.opt.oslto.build.flags.optimize=-Os -flto
@@ -4517,6 +4628,16 @@ GenL5.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float
45174628
GenL5.menu.rtlib.full=Newlib Standard
45184629
GenL5.menu.rtlib.full.build.flags.ldspecs=
45194630

4631+
GenWB.menu.rtlib.nano=Newlib Nano (default)
4632+
GenWB.menu.rtlib.nanofp=Newlib Nano + Float Printf
4633+
GenWB.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float
4634+
GenWB.menu.rtlib.nanofs=Newlib Nano + Float Scanf
4635+
GenWB.menu.rtlib.nanofs.build.flags.ldspecs=--specs=nano.specs -u _scanf_float
4636+
GenWB.menu.rtlib.nanofps=Newlib Nano + Float Printf/Scanf
4637+
GenWB.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float -u _scanf_float
4638+
GenWB.menu.rtlib.full=Newlib Standard
4639+
GenWB.menu.rtlib.full.build.flags.ldspecs=
4640+
45204641
ESC_board.menu.rtlib.nano=Newlib Nano (default)
45214642
ESC_board.menu.rtlib.nanofp=Newlib Nano + Float Printf
45224643
ESC_board.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float

0 commit comments

Comments
 (0)