8. System controller (SYSCFG)

The system controller is a set of registers (configuration, control and status) linked to system features of the STM32WB05xZ device.

8.1 SYSCFG main features

The system controller set of registers are mainly linked to:

Note: This peripheral is in the non-retained power domain so all settings done in the associated registers are lost after a Deepstop.

8.2 System controller registers

8.2.1 Die ID register (DIE_ID)

This register provides the device version and cut information.

Address offset: 0x00

Reset value: 0x0000 0120

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.PRODUCT[3:0]VERSION[3:0]REVISION[3:0]
rrrrrrrrrrrr
Bits 31:12Reserved, must be kept at reset value
Bits 11:8PRODUCT: Product version
Bits 7:4VERSION: Cut version
Bits 3:0REVISION: Cut revision (metal fix)

8.2.2 JTAG ID register (JTAG_ID)

This register provides the JTAG ID of the STM32WB05xZ.

Note: The same information is also available through direct SWD access to test registers.

Address offset: 0x04

Reset value: 0x0202 8041

31302928272625242322212019181716
VERSION_NUMBER[3:0]PART_NUMBER[15:4]
rrrrrrrrrrrrrrrr
1514131211109876543210
PART_NUMBER[3:0]MANUF_ID[10:0]Res.
rrrrrrrrrrrrrrrr
Bits 31:28VERSION_NUMBER: Version.
Bits 27:12PART_NUMBER: Part number
Bits 11:1MANUF_ID: Manufacturer ID
Bit 0RESERVED

8.2.3 I2C Fast-Mode Plus pin capability control register (I2C_FMP_CTRL)

This register allows activating the fast-mode Plus driving capability on I 2 C open-drain pads.

Address offset: 0x08

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.I2C1_PB7_FMPI2C1_PB6_FMPI2C1_PA1_FMPI2C1_PA0_FMP
rwrwrwrw
Bits 31:4Reserved, must be kept at reset value.
Bit 3I2C1_PB7_FMP: I2C1 Fast-Mode Plus driving capability for I2C1_SDA on PB7 I/O.
  • 0: PB7 pin operated in standard mode
  • 1: FM+ mode is enabled on PB7 pin, and speed control is bypassed
Bit 2I2C1_PB6_FMP: I2C1 Fast-Mode Plus driving capability for I2C1_SCL on PB6 I/O.
  • 0: PB6 pin operated in standard mode
  • 1: FM+ mode is enabled on PB6 pin, and speed control is bypassed
Bit 1I2C1_PA1_FMP: I2C1 Fast-Mode Plus driving capability for I2C1_SDA on PA1 I/O.
  • 0: PA1 pin operated in standard mode
  • 1: FM+ mode is enabled on PA1 pin, and speed control is bypassed
Bit 0I2C1_PA0_FMP: I2C1 Fast-Mode Plus driving capability for I2C1_SCL on PA0 I/O.
  • 0: PA0 pin operated in standard mode
  • 1: FM+ mode is enabled on PA0 pin, and speed control is bypassed

8.2.4 I/O interrupt detection type register (IO_DTR)

Address offset: 0x0C

Reset value: 0x0000 0000

31302928272625242322212019181716
PB15_DTPB14_DTPB13_DTPB12_DTRes.Res.Res.Res.PB7_DTPB6_DTPB5_DTPB4_DTPB3_DTPB2_DTPB1_DTPB0_DT
r/wr/wr/wr/wr/wr/wr/wr/wr/wr/wr/wr/w
1514131211109876543210
Res.Res.Res.Res.PA11_DTPA10_DTPA9_DTPA8_DTRes.Res.Res.Res.PA3_DTPA2_DTPA1_DTPA0_DT
r/wr/wr/wr/wr/wr/wr/wr/w
Bits 31:16PBx_DT (x=15 to 0): Interrupt detection type for port B I/Os.
  • 0: Edge detection
  • 1: Level detection
Bits 15:0PAx_DT (x=15 to 0): Interrupt detection type for port A I/Os.
  • 0: Edge detection
  • 1: Level detection

8.2.5 I/O interrupt edge register (IO_IBER)

Address offset: 0x10

Reset value: 0x0000 0000

31302928272625242322212019181716
PB15_IBEPB14_IBEPB13_IBEPB12_IBERes.Res.Res.Res.PB7_IBEPB6_IBEPB5_IBEPB4_IBEPB3_IBEPB2_IBEPB1_IBEPB0_IBE
r/wr/wr/wr/wr/wr/wr/wr/wr/wr/wr/wr/w
1514131211109876543210
Res.Res.Res.Res.PA11_IBEPA10_IBEPA9_IBEPA8_IBERes.Res.Res.Res.PA3_IBEPA2_IBEPA1_IBEPA0_IBE
r/wr/wr/wr/wr/wr/wr/wr/w
Bits 31:16PBx_IBE (x=15 to 0): Interrupt edge selection for port B I/Os.
  • 0: Single edge detection
  • 1: Both edges detection
Bits 15:0PAx_IBE (x=15 to 0): Interrupt edge selection for port A I/Os.
  • 0: Single edge detection
  • 1: Both edges detection

8.2.6 I/O interrupt polarity event register (IO_IEVR)

Address offset: 0x14

Reset value: 0x0000 0000

31302928272625242322212019181716
PB15_IEVPB14_IEVPB13_IEVPB12_IEVRes.Res.Res.Res.PB7_IEVPB6_IEVPB5_IEVPB4_IEVPB3_IEVPB2_IEVPB1_IEVPB0_IEV
rWrWrWrWrWrWrWrWrWrWrWrW
1514131211109876543210
Res.Res.Res.Res.PA11_IEVPA10_IEVPA9_IEVPA8_IEVRes.Res.Res.Res.PA3_IEVPA2_IEVPA1_IEVPA0_IEV
rWrWrWrWrWrWrWrWrWrWrWrW
Bits 31:16PBx_IEV (x=15 to 0): Interrupt polarity event for port B I/Os.
  • 0: Falling edge / low level
  • 1: Rising edge / high level
Bits 15:0PAx_IEV (x=15 to 0): Interrupt polarity event for port A I/Os.
  • 0: Falling edge / low level
  • 1: Rising edge / high level

8.2.7 I/O interrupt enable register (IO_IER)

Address offset: 0x18

Reset value: 0x0000 0000

31302928272625242322212019181716
PB15_IEPB14_IEPB13_IEPB12_IERes.Res.Res.Res.PB7_IEPB6_IEPB5_IEPB4_IEPB3_IEPB2_IEPB1_IEPB0_IE
rWrWrWrWrWrWrWrWrWrWrWrW
1514131211109876543210
Res.Res.Res.Res.PA11_IEPA10_IEPA9_IEPA8_IERes.Res.Res.Res.PA3_IEPA2_IEPA1_IEPA0_IE
rWrWrWrWrWrWrWrW
Bits 31:16PBx_IE (x=15 to 0): Interrupt enable for port B I/Os.
  • 0: Interrupt is disabled
  • 1: Interrupt is enabled
Bits 15:0PAx_IE (x=15 to 0): Interrupt enable for port A I/Os.
  • 0: Interrupt is disabled
  • 1: Interrupt is enabled

8.2.8 I/O Interrupt status and clear register (IO_ISCR)

Address offset: 0x1C

Reset value: 0x0000 0000

31302928272625242322212019181716
PB15_ISCPB14_ISCPB13_ISCPB12_ISCRes.Res.Res.Res.PB7_ISCPB6_ISCPB5_ISCPB4_ISCPB3_ISCPB2_ISCPB1_ISCPB0_ISC
rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1
1514131211109876543210
Res.Res.Res.Res.PA11_ISCPA10_ISCPA9_ISCPA8_ISCRes.Res.Res.Res.PA3_ISCPA2_ISCPA1_ISCPA0_ISC
rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1rc_w1
Bits 31:16PBx_ISC (x=15 to 0): Interrupt status (before mask) for port B I/Os.
  • 0: No pending interrupt
  • 1: Event occurred on corresponding I/O / interrupt occurred (if enabled).
Cleared by writing 1 in the bit
Bits 15:0PAx_ISC (x=15 to 0): Interrupt status (before mask) for port A I/Os.
  • 0: No pending interrupt
  • 1: Event occurred on corresponding I/O / interrupt occurred (if enabled).
Cleared by writing 1 in the bit

8.2.9 Power controller interrupt enable register (PWRC_IER)

This register allows control of the enable or mask on the interrupt sources of the power controller (PWRC) block.

Address offset: 0x20

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.WKUP_IEPVD_IERes.
rwrw
Bits 31:3Reserved, must be kept at reset value.
Bit 2WKUP_IE : Power controller wakeup event interrupt enable.
  • 0: Interrupt on wakeup event seen by the PWRC is disabled
  • 1: Interrupt on wakeup event seen by the PWRC is enabled
Bit 1PVD_IE : Programmable voltage detector interrupt enable.
  • 0: PVD interrupt is disabled
  • 1: PVD interrupt is enabled
Bit 0Reserved, must be kept at reset value.

8.2.10 Power controller interrupt status and clear register (PWRC_ISCR)

This register allows status checking, and clearing of the power controller (PWRC) block interrupt sources .

Address offset: 0x24

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.WKUP_ISCPVD_ISCRes.
rc_w1rc_w1
Bits 31:3Reserved, must be kept at reset value.
Bit 2

WKUP_ISC: Indicates the power controller receives a wakeup event.

  • 0: No pending interrupt
  • 1: wakeup event on PWRC occurred / interrupt occurred (if enabled). Cleared by writing 1 in the bit.

This flag is read at 1 if a wakeup event arrives so close to the low-power mode entry requests that the PWRC aborts before shutting down the system.

Bit 1

PVD_ISC: Programmable voltage detector status.

  • 0: No pending interrupt
  • 1: Voltage went under programmed threshold / interrupt occurred (if enabled).

Cleared by writing 1 in the bit.

See Section 5.3.2: Power voltage detection (PVD) for details.

Bit 0Reserved, must be kept at default value.

8.2.11 MR_BLE RX or TX sequence information detection type register (BLERXTX_DTR)

This register allows selecting the type of detection (level or edge) on RADIO_RX_SEQUENCE and RADIO_TX_SEQUENCE coming from the MR_BLE IP.

Address offset: 0x2C

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_DTTX_DT
rwrw
Bits 31:2Reserved, must be kept at reset value.
Bit 1RX_DT : Detection type on RADIO_RX_SEQUENCE signal:
  • 0: Detection on edge (default)
  • 1: Detection on level
Bit 0TX_DT : Detection type on RADIO_TX_SEQUENCE signal:
  • 0: Detection on edge (default)
  • 1: Detection on level

8.2.12 MR_BLE RX or TX sequence information detection type register (BLERXTX_IBER)

This register is used to activate RADIO_RX_SEQUENCE and RADIO_TX_SEQUENCE signal detection on single edge or both edges when edge detection type is active.

Address offset: 0x30

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IBETX_IBE
rwrw
Bits 31:2Reserved, must be kept at reset value.
Bit 1RX_IBE : Interrupt edge register on RADIO_RX_SEQUENCE signal:
  • • 0: Detection on single edge (default)
  • • 1: Detection on both edges
Bit 0TX_IBE : Interrupt edge register on RADIO_TX_SEQUENCE signal:
  • • 0: Detection on single edge(default)
  • • 1: Detection on both edges

8.2.13 MR_BLE RX or TX sequence information detection event register (BLERXTX_IEVR)

This register defines the polarity of the RADIO_RX_SEQUENCE and RADIO_TX_SEQUENCE signals detection.

Address offset: 0x34

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IEVTX_IEV
rwrw
Bits 31:2Reserved, must be kept at reset value.
Bit 1RX_IEV: Interrupt polarity event on RADIO_RX_SEQUENCE signal:
  • 0: Detection on falling edge / low level (default)
  • 1: Detection on rising edge / high level
Bit 0TX_IEV: Interrupt polarity event on RADIO_TX_SEQUENCE signal:
  • 0: Detection on falling edge / low level (default)
  • 1: Detection on rising edge / high level

8.2.14 MR_BLE RX or TX sequence information detection interrupt enable register (BLERXTX_IER)

This register defines the interrupt enable of the RADIO_RX_SEQUENCE and RADIO_TX_SEQUENCE signals.

Address offset: 0x38

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IERX_IE
rwrw
Bits 31:2Reserved, must be kept at reset value.
Bit 1RX_IE: RADIO_RX_SEQUENCE interrupt enable on RADIO_RX_SEQUENCE signal:
  • 0: RADIO_RX_SEQUENCE interrupt disabled (default)
  • 1: RADIO_RX_SEQUENCE interrupt enabled
Bit 0TX_IE: RADIO_TX_SEQUENCE interrupt enable on RADIO_TX_SEQUENCE signal:
  • 0: RADIO_TX_SEQUENCE interrupt disabled (default)
  • 1: RADIO_TX_SEQUENCE interrupt enabled

8.2.15 MR_BLE RX or TX sequence information detection status and clear register (BLERXTX_ISCR)

This register allows checking the status and clear the interrupt linked to the RADIO_RX_SEQUENCE and RADIO_TX_SEQUENCE information provided by the MR_BLE IP.

Address offset: 0x3C

Reset value: 0x0000 0000

31302928272625242322212019181716
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.
1514131211109876543210
Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IS EDGETX_ISEDGERX_ISCTX_ISC
rrrc_wc1rc_wr1
Bits 31:4Reserved, must be kept at reset value
Bit3RX_ISEDGE: interrupt edge status on RADIO_RX_SEQUENCE signal:
  • 0: falling edge on RADIO_RX_SEQUENCE detected
  • 1: rising edge on RADIO_RX_SEQUENCE detected
Bit2TX_ISEDGE: interrupt edge status on RADIO_TX_SEQUENCE signal:
  • 0: falling edge on RADIO_TX_SEQUENCE detected
  • 1: rising edge on RADIO_TX_SEQUENCE detected
Bit 1RX_ISC: Interrupt status on RADIO_RX_SEQUENCE signal (can be a rising or a falling edge depending on BLERXTX_IEVR and BLERXTX_IBER):
  • 0: No activity on RADIO_RX_SEQUENCE detected
  • 1: Activity on RADIO_RX_SEQUENCE occurred
Bit 0TX_ISC: Interrupt status on RADIO_TX_SEQUENCE signal (can be a rising or a falling edge depending on BLERXTX_IEVR and BLERXTX_IBER):
  • 0: No activity on RADIO_TX_SEQUENCE detected
  • 1: Activity on RADIO_TX_SEQUENCE occurred

8.2.16 System controller register map

Refer to Table 3. STM32WB05xZ memory map and peripheral register boundary addresses for the system controller base address location in the STM32WB05xZ.

Table 19. SYSCFG register map and reset values

OffsetRegister313029282726252423222120191817161514131211109876543210
0x00DIE_IDRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.PRODUCTVERSIONREVISION
Reset value000100100000
0x04JTAG_IDVERSION_NUMBERPART_NUMBERMANUF_IDRes.
Reset value00000010000000101000000001000001
0x08I2C_FMP_CTRLRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.I2C1_PB7_FMPI2C1_PB6_FMPI2C1_PA1_FMP
Reset value0000
0x0CIO_DTRPB15_DTPB14_DTPB13_DTPB12_DTRes.Res.Res.Res.PB7_DTPB6_DTPB5_DTPB4_DTPB3_DTPB2_DTPB1_DTPB0_DTRes.Res.Res.Res.PA11_DTPA10_DTPA9_DTPA8_DTRes.Res.Res.Res.PA3_DTPA2_DTPA1_DTPA0_DT
Reset value00000000000000000000000000000000
0x10IO_IBEPB15_IBEPB14_IBEPB13_IBEPB12_IBERes.Res.Res.Res.PB7_IBEPB6_IBEPB5_IBEPB4_IBEPB3_IBEPB2_IBEPB1_IBEPB0_IBERes.Res.Res.Res.PA11_IBEPA10_IBEPA9_IBEPA8_IBERes.Res.Res.Res.PA3_IBEPA2_IBEPA1_IBEPA0_IBE
Reset value00000000000000000000000000000000
0x14IO_IEVPB15_IEVPB14_IEVPB13_IEVPB12_IEVRes.Res.Res.PB8_IEVPB7_IEVPB6_IEVPB5_IEVPB4_IEVPB3_IEVPB2_IEVPB1_IEVPB0_IEVRes.Res.Res.Res.PA11_IEVPA10_IEVPA9_IEVPA8_IEVRes.Res.Res.Res.PA3_IEVPA2_IEVPA1_IEVPA0_IEV
Reset value00000000000000000000000000000000
STMicroelectronics logo
STMicroelectronics logo
OffsetRegister313029282726252423222120191817161514131211109876543210
0x18IO_IERPB15_IEPB14_IEPB13_IEPB12_IERes.Res.Res.PB8_IEPB7_IEPB6_IEPB5_IEPB4_IEPB3_IEPB2_IEPB1_IEPB0_IERes.Res.Res.Res.PA11_IEPA10_IEPA9_IEPA8_IERes.Res.Res.Res.PA3_IEPA2_IEPA1_IEPA0_IE
Reset value00000000000000000000000000000000
0x1CIO_ISCRPB15_ISCPB14_ISCPB13_ISCPB12_ISCRes.Res.Res.PB8_ISCPB7_ISCPB6_ISCPB5_ISCPB4_ISCPB3_ISCPB2_ISCPB1_ISCPB0_ISCRes.Res.Res.Res.PA11_ISCPA10_ISCPA9_ISCPA8_ISCRes.Res.Res.Res.PA3_ISCPA2_ISCPA1_ISCPA0_ISC
Reset value00000000000000000000000000000000
0x20PWRC_IERRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.WKUP_IEPVD_IERes.
Reset value00
0x24PWRC_ISCRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.WKUP_ISCPVD_ISCRes.
Reset value00
0x28Reserved
0x2CBLERXTX_DTRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_DTTX_DT
Reset value00
0x30BLERXTX_IBERRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IBETX_IBE
Reset value00
0x34BLERXTX_IEVRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IEVTX_IBV
Reset value00
0x38BLERXTX_IERRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_IETX_IB
Reset value00
OffsetRegister313029282726252423222120191817161514131211109876543210
0x3CBLERXTX_ISCRRes.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.Res.RX_ISEDGETX_ISEDGERX_ISCTX_ISC
Reset value0000
STMicroelectronics logo
STMicroelectronics logo