Skip to main content
Associate II
July 3, 2026
Solved

CubeMX fails to generate Multimode Config call

  • July 3, 2026
  • 1 reply
  • 53 views

Using project setup from NUCLEO-U3C5ZI-Q, when ADC1>ADCs_Common_Settings>Mode is set to `Dual regular simultaneous mode only` CubeMX fails to generate the HAL_ADCEx_MultiModeConfigChannel() call to configure the ADCs for dual mode. This must be manually added by the user, otherwise the slave ADC does not trigger conversions. I believe this call was supposed to generate in MX_ADC1_Init. Am I missing something here?

Here is my ioc file:

#MicroXplorer Configuration settings - do not modify
ADC1.Channel-2\#ChannelRegularConversion=ADC_CHANNEL_3
ADC1.ConversionDataManagement=ADC_CONVERSIONDATA_DMA_CIRCULAR
ADC1.DMAAccessModeView=ENABLE
ADC1.EOCSelection=ADC_EOC_SINGLE_CONV
ADC1.EnableInjectedConversion=DISABLE
ADC1.ExternalTrigConv=ADC_EXTERNALTRIG_T1_TRGO
ADC1.IPParameters=Rank-2\#ChannelRegularConversion,Channel-2\#ChannelRegularConversion,SamplingTime-2\#ChannelRegularConversion,OffsetNumber-2\#ChannelRegularConversion,MonitoredBy-2\#ChannelRegularConversion,NbrOfConversionFlag,NbrOfConversion,EOCSelection,EnableInjectedConversion,ConversionDataManagement,master,ExternalTrigConv,Mode,DMAAccessModeView
ADC1.Mode=ADC_DUALMODE_REGSIMULT
ADC1.MonitoredBy-2\#ChannelRegularConversion=__NULL
ADC1.NbrOfConversion=1
ADC1.NbrOfConversionFlag=1
ADC1.OffsetNumber-2\#ChannelRegularConversion=ADC_OFFSET_NONE
ADC1.Rank-2\#ChannelRegularConversion=1
ADC1.SamplingTime-2\#ChannelRegularConversion=ADC_SAMPLETIME_46CYCLES_5
ADC1.master=1
ADC2.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_5
ADC2.ConversionDataManagement=ADC_CONVERSIONDATA_DMA_CIRCULAR
ADC2.DMAAccessModeView=ENABLE
ADC2.IPParameters=Rank-0\#ChannelRegularConversion,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,OffsetNumber-0\#ChannelRegularConversion,MonitoredBy-0\#ChannelRegularConversion,NbrOfConversionFlag,ConversionDataManagement,Mode,DMAAccessModeView
ADC2.Mode=ADC_DUALMODE_REGSIMULT
ADC2.MonitoredBy-0\#ChannelRegularConversion=__NULL
ADC2.NbrOfConversionFlag=1
ADC2.OffsetNumber-0\#ChannelRegularConversion=ADC_OFFSET_NONE
ADC2.Rank-0\#ChannelRegularConversion=1
ADC2.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_46CYCLES_5
BSP_IP_NAME=NUCLEO-U3C5ZI-Q
CAD.formats=
CAD.pinconfig=
CAD.provider=
CORTEX_M33_NS.userName=CORTEX_M33
File.Version=6
GPDMA1.CIRCULARMODE_GPDMACH0=ENABLE
GPDMA1.DATAHANDLING_GPDMACH0=NONE
GPDMA1.DESTBURSTLENGTH_GPDMACH0=1
GPDMA1.DESTDATAWIDTH_GPDMACH0=DMA_DEST_DATAWIDTH_WORD
GPDMA1.DESTINC_GPDMACH0=DMA_DINC_INCREMENTED
GPDMA1.IPHANDLE_GPDMACH0-SIMPLEREQUEST_GPDMACH0=__NULL
GPDMA1.IPParameters=CIRCULARMODE_GPDMACH0,TRANSFERALLOCATEDPORTDEST_GPDMACH0,DESTDATAWIDTH_GPDMACH0,DESTINC_GPDMACH0,DESTBURSTLENGTH_GPDMACH0,SRCINC_GPDMACH0,SRCDATAWIDTH_GPDMACH0,DATAHANDLING_GPDMACH0,REQUEST_GPDMACH0,IPHANDLE_GPDMACH0-SIMPLEREQUEST_GPDMACH0
GPDMA1.REQUEST_GPDMACH0=GPDMA1_REQUEST_ADC1
GPDMA1.SRCDATAWIDTH_GPDMACH0=DMA_SRC_DATAWIDTH_WORD
GPDMA1.SRCINC_GPDMACH0=DMA_SINC_FIXED
GPDMA1.TRANSFERALLOCATEDPORTDEST_GPDMACH0=DMA_DEST_ALLOCATED_PORT1
GPIO.groupedBy=Group By Peripherals
HSP_ENGINE.DspLib=false
HSP_ENGINE.IPParameters=DspLib
HSP_Engine.BufferListNb=0
HSP_Engine.EventListNb=0
HSP_Engine.ProcessingElementCount=4
HSP_Engine.ProcessingListCount=3
HSP_Engine.ProcessingListIds=
HSP_Engine.ProcessingListNb=0
KeepUserPlacement=true
Mcu.CPN=STM32U3C5ZITxQ
Mcu.ContextProject=TrustZoneDisabled
Mcu.Family=STM32U3
Mcu.IP0=ADC1
Mcu.IP1=ADC2
Mcu.IP10=SYS
Mcu.IP11=TIM1
Mcu.IP2=CORTEX_M33_NS
Mcu.IP3=GPDMA1
Mcu.IP4=HSP1
Mcu.IP5=HSP_ENGINE
Mcu.IP6=NUCLEO-U3C5ZI-Q
Mcu.IP7=NVIC
Mcu.IP8=PWR
Mcu.IP9=RCC
Mcu.IPNb=13
Mcu.Name=STM32U3C5ZITxQ
Mcu.Package=LQFP144
Mcu.Pin0=PE2
Mcu.Pin1=PE3
Mcu.Pin10=PH0-OSC_IN (PH0)
Mcu.Pin11=PH1-OSC_OUT (PH1)
Mcu.Pin12=PC2
Mcu.Pin13=PA0
Mcu.Pin14=PA1
Mcu.Pin15=PA2
Mcu.Pin16=PA3
Mcu.Pin17=PA4
Mcu.Pin18=PA5
Mcu.Pin19=PA6
Mcu.Pin2=PE4
Mcu.Pin20=PF12
Mcu.Pin21=PE14
Mcu.Pin22=PA9
Mcu.Pin23=PA10
Mcu.Pin24=PA11
Mcu.Pin25=PA12
Mcu.Pin26=PA13 (JTMS/SWDIO)
Mcu.Pin27=PA14 (JTCK/SWCLK)
Mcu.Pin28=PA15 (JTDI)
Mcu.Pin29=PC10
Mcu.Pin3=PE5
Mcu.Pin30=PD2
Mcu.Pin31=PD7
Mcu.Pin32=PB3 (JTDO/TRACESWO)
Mcu.Pin33=VP_CORTEX_M33_NS_VS_Hclk
Mcu.Pin34=VP_GPDMA1_VS_GPDMACH0
Mcu.Pin35=VP_HSP1_VS_HSP
Mcu.Pin36=VP_HSP_ENGINE_VS_HSP_DSP_CMSIS_2
Mcu.Pin37=VP_HSP_ENGINE_VS_HSP_DSP_CMSIS_3
Mcu.Pin38=VP_PWR_VS_SECSignals
Mcu.Pin39=VP_PWR_VS_DBSignals
Mcu.Pin4=PE6
Mcu.Pin40=VP_SYS_VS_Systick
Mcu.Pin41=VP_TIM1_VS_no_output1
Mcu.Pin42=VP_NUCLEO-U3C5ZI-Q_VS_BSP_COMMON
Mcu.Pin5=PC13
Mcu.Pin6=PC14-OSC32_IN (PC14)
Mcu.Pin7=PC15-OSC32_OUT (PC15)
Mcu.Pin8=PF7
Mcu.Pin9=PF8
Mcu.PinsNb=43
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32U3C5ZITxQ
MxCube.Version=6.18.0
MxDb.Version=DB.6.0.180
NUCLEO-U3C5ZI-Q.BUTTON=1
NUCLEO-U3C5ZI-Q.Bsp_Common_DEMO=true
NUCLEO-U3C5ZI-Q.IPParameters=BUTTON,VCP,LD1,LD2,LD3,Bsp_Common_DEMO
NUCLEO-U3C5ZI-Q.LD1=true
NUCLEO-U3C5ZI-Q.LD2=true
NUCLEO-U3C5ZI-Q.LD3=true
NUCLEO-U3C5ZI-Q.VCP=true
NVIC.ADC1_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true
NVIC.ADC2_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.EXTI13_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:true
NVIC.ForceEnableDMAVector=true
NVIC.GPDMA1_Channel0_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.SecureFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true\:false
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
PA0.Locked=true
PA0.Mode=IN3-Single-Ended
PA0.Signal=ADC1_IN3
PA1.Mode=Debug
PA1.Signal=HSP1_SNP1
PA10.Locked=true
PA10.Signal=USART1_RX
PA11.GPIOParameters=GPIO_Label
PA11.GPIO_Label=USB_DM
PA11.Locked=true
PA11.Signal=USB_DM
PA12.GPIOParameters=GPIO_Label
PA12.GPIO_Label=USB_DP
PA12.Locked=true
PA12.Signal=USB_DP
PA13\ (JTMS/SWDIO).GPIOParameters=GPIO_Label
PA13\ (JTMS/SWDIO).GPIO_Label=DEBUG_JTMS-SWDIO
PA13\ (JTMS/SWDIO).Locked=true
PA13\ (JTMS/SWDIO).Signal=DEBUG_JTMS-SWDIO
PA14\ (JTCK/SWCLK).GPIOParameters=GPIO_Label
PA14\ (JTCK/SWCLK).GPIO_Label=DEBUG_JTCK-SWCLK
PA14\ (JTCK/SWCLK).Locked=true
PA14\ (JTCK/SWCLK).Signal=DEBUG_JTCK-SWCLK
PA15\ (JTDI).GPIOParameters=GPIO_Label
PA15\ (JTDI).GPIO_Label=DEBUG_JTDI
PA15\ (JTDI).Locked=true
PA15\ (JTDI).Signal=DEBUG_JTDI
PA2.Mode=Debug
PA2.Signal=HSP1_SNP2
PA3.Mode=Debug
PA3.Signal=HSP1_SNP3
PA4.Mode=Debug
PA4.Signal=HSP1_SNP4
PA5.Locked=true
PA6.Mode=IN5-Single-Ended
PA6.Signal=ADC2_IN5
PA9.Locked=true
PA9.Signal=USART1_TX
PB3\ (JTDO/TRACESWO).GPIOParameters=GPIO_Label
PB3\ (JTDO/TRACESWO).GPIO_Label=DEBUG_JTDO-SWO
PB3\ (JTDO/TRACESWO).Locked=true
PB3\ (JTDO/TRACESWO).Signal=DEBUG_JTDO-SWO
PC10.Mode=Debug
PC10.Signal=HSP1_SNP5
PC13.Locked=true
PC13.Signal=GPIO_Input
PC14-OSC32_IN\ (PC14).GPIOParameters=GPIO_Label
PC14-OSC32_IN\ (PC14).GPIO_Label=RCC_OSC32_IN
PC14-OSC32_IN\ (PC14).Locked=true
PC14-OSC32_IN\ (PC14).Signal=RCC_OSC32_IN
PC15-OSC32_OUT\ (PC15).GPIOParameters=GPIO_Label
PC15-OSC32_OUT\ (PC15).GPIO_Label=RCC_OSC32_OUT
PC15-OSC32_OUT\ (PC15).Locked=true
PC15-OSC32_OUT\ (PC15).Signal=RCC_OSC32_OUT
PC2.GPIOParameters=GPIO_Label
PC2.GPIO_Label=VSENSE(ADC2_IN1)
PC2.Locked=true
PC2.Signal=ADC2_IN1
PD2.Mode=Debug
PD2.Signal=HSP1_SNP0
PD7.GPIOParameters=GPIO_Label
PD7.GPIO_Label=FDCAN_STBY
PD7.Locked=true
PD7.Signal=GPIO_Output
PE14.Locked=true
PE2.Locked=true
PE2.Signal=DEBUG_TRACECLK
PE3.Locked=true
PE3.Signal=DEBUG_TRACED0
PE4.Locked=true
PE4.Signal=DEBUG_TRACED1
PE5.Locked=true
PE5.Signal=DEBUG_TRACED2
PE6.Locked=true
PE6.Signal=DEBUG_TRACED3
PF12.GPIOParameters=GPIO_Label
PF12.GPIO_Label=VBUS_DET
PF12.Locked=true
PF12.Signal=GPIO_Input
PF7.Locked=true
PF7.Signal=FDCAN1_RX
PF8.Locked=true
PF8.Signal=FDCAN1_TX
PH0-OSC_IN\ (PH0).Locked=true
PH0-OSC_IN\ (PH0).Signal=RCC_OSC_IN
PH1-OSC_OUT\ (PH1).Locked=true
PH1-OSC_OUT\ (PH1).Signal=RCC_OSC_OUT
PinOutPanel.RotationAngle=0
ProjectManager.AskForMigrate=true
ProjectManager.BackupPrevious=false
ProjectManager.CompilerLinker=Starm-Clang
ProjectManager.CompilerOptimize=6
ProjectManager.ComputerToolchain=false
ProjectManager.CoupleFile=true
ProjectManager.CustomerFirmwarePackage=
ProjectManager.DefaultFWLocation=true
ProjectManager.DeletePrevious=true
ProjectManager.DeviceId=STM32U3C5ZITxQ
ProjectManager.FirmwarePackage=STM32Cube FW_U3 V1.4.0
ProjectManager.FreePins=false
ProjectManager.FreePinsContext=
ProjectManager.HalAssertFull=false
ProjectManager.HeapSize=0x200
ProjectManager.KeepUserCode=true
ProjectManager.LastFirmware=true
ProjectManager.LibraryCopy=1
ProjectManager.MainLocation=Core/Src
ProjectManager.NoMain=false
ProjectManager.PreviousToolchain=
ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=Wakeup-Receiver-Firmware.ioc
ProjectManager.ProjectName=Wakeup-Receiver-Firmware
ProjectManager.ProjectStructure=
ProjectManager.RegisterCallBack=HSP
ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=CMake
ProjectManager.ToolChainLocation=
ProjectManager.UAScriptAfterPath=
ProjectManager.UAScriptBeforePath=
ProjectManager.UnderRoot=false
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_GPDMA1_Init-GPDMA1-false-HAL-true,4-MX_ADC1_Init-ADC1-false-HAL-true,5-MX_TIM1_Init-TIM1-false-HAL-true,6-MX_HSP_Engine_Init-HSP_ENGINE-false-HAL-false,7-MX_ADC2_Init-ADC2-false-HAL-true,0-MX_CORTEX_M33_NS_Init-CORTEX_M33_NS-false-HAL-true,0-MX_PWR_Init-PWR-false-HAL-true,false-0--NUCLEO-U3C5ZI-Q-true-HAL-true
RCC.ADCFreq_Value=24000000
RCC.ADC_DIV=RCC_ADCDACCLK_DIV4
RCC.ADF1Freq_Value=96000000
RCC.AHBFreq_Value=96000000
RCC.APB1Freq_Value=96000000
RCC.APB1TimFreq_Value=96000000
RCC.APB2Freq_Value=96000000
RCC.APB2TimFreq_Value=96000000
RCC.APB3Freq_Value=96000000
RCC.CRSFreq_Value=48000000
RCC.CortexFreq_Value=12000000
RCC.DACFreq_Value=32000
RCC.FCLKCortexFreq_Value=96000000
RCC.FDCANFreq_Value=96000000
RCC.FamilyName=M
RCC.HCLKFreq_Value=96000000
RCC.HSE_VALUE=16000000
RCC.HSI48_VALUE=48000000
RCC.HSI_VALUE=16000000
RCC.I2C1Freq_Value=96000000
RCC.I2C2Freq_Value=96000000
RCC.I2C3Freq_Value=96000000
RCC.I2C4Freq_Value=96000000
RCC.I3C1Freq_Value=96000000
RCC.I3C2Freq_Value=96000000
RCC.IPParameters=ADCFreq_Value,ADC_DIV,ADF1Freq_Value,AHBFreq_Value,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,APB3Freq_Value,CRSFreq_Value,CortexFreq_Value,DACFreq_Value,FCLKCortexFreq_Value,FDCANFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI48_VALUE,HSI_VALUE,I2C1Freq_Value,I2C2Freq_Value,I2C3Freq_Value,I2C4Freq_Value,I3C1Freq_Value,I3C2Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM3Freq_Value,LPUART1Freq_Value,LSCOPinFreq_Value,LSE_VALUE,LSIDIV_VALUE,LSI_VALUE,MCO1PinFreq_Value,MCO2PinFreq_Value,MSISDIV,MSISFreq_Value,OCTOSPIMFreq_Value,RNGFreq_Value,SAESFreq_Value,SAI1Freq_Value,SDMMCFreq_Value,SPI1Freq_Value,SPI2Freq_Value,SPI3Freq_Value,SPI4Freq_Value,SYSCLKFreq_VALUE,UART4Freq_Value,UART5Freq_Value,USART1Freq_Value,USART2Freq_Value,USART3Freq_Value,USBFreq_Value,USB_DIV
RCC.LPTIM1Freq_Value=96000000
RCC.LPTIM2Freq_Value=96000000
RCC.LPTIM3Freq_Value=96000000
RCC.LPUART1Freq_Value=96000000
RCC.LSCOPinFreq_Value=32000
RCC.LSE_VALUE=32768
RCC.LSIDIV_VALUE=32000
RCC.LSI_VALUE=32000
RCC.MCO1PinFreq_Value=96000000
RCC.MCO2PinFreq_Value=96000000
RCC.MSISDIV=RCC_MSI_DIV1
RCC.MSISFreq_Value=96000000
RCC.OCTOSPIMFreq_Value=96000000
RCC.RNGFreq_Value=48000000
RCC.SAESFreq_Value=96000000
RCC.SAI1Freq_Value=96000000
RCC.SDMMCFreq_Value=96000000
RCC.SPI1Freq_Value=96000000
RCC.SPI2Freq_Value=96000000
RCC.SPI3Freq_Value=96000000
RCC.SPI4Freq_Value=96000000
RCC.SYSCLKFreq_VALUE=96000000
RCC.UART4Freq_Value=96000000
RCC.UART5Freq_Value=96000000
RCC.USART1Freq_Value=96000000
RCC.USART2Freq_Value=96000000
RCC.USART3Freq_Value=96000000
RCC.USBFreq_Value=48000000
RCC.USB_DIV=RCC_USB1CLKSOURCE_ICLK_DIV2
TIM1.Channel-Output\ Compare1\ No\ Output=TIM_CHANNEL_1
TIM1.IPParameters=Channel-Output Compare1 No Output,PeriodNoDither,TIM_MasterOutputTrigger
TIM1.PeriodNoDither=499
TIM1.TIM_MasterOutputTrigger=TIM_TRGO_UPDATE
VP_CORTEX_M33_NS_VS_Hclk.Mode=Hclk_Mode
VP_CORTEX_M33_NS_VS_Hclk.Signal=CORTEX_M33_NS_VS_Hclk
VP_GPDMA1_VS_GPDMACH0.Mode=SIMPLEREQUEST_GPDMACH0
VP_GPDMA1_VS_GPDMACH0.Signal=GPDMA1_VS_GPDMACH0
VP_HSP1_VS_HSP.Mode=Enable
VP_HSP1_VS_HSP.Signal=HSP1_VS_HSP
VP_HSP_ENGINE_VS_HSP_DSP_CMSIS_2.Mode=Accelerator
VP_HSP_ENGINE_VS_HSP_DSP_CMSIS_2.Signal=HSP_ENGINE_VS_HSP_DSP_CMSIS_2
VP_HSP_ENGINE_VS_HSP_DSP_CMSIS_3.Mode=Sequencer
VP_HSP_ENGINE_VS_HSP_DSP_CMSIS_3.Signal=HSP_ENGINE_VS_HSP_DSP_CMSIS_3
VP_NUCLEO-U3C5ZI-Q_VS_BSP_COMMON.Mode=COMMON
VP_NUCLEO-U3C5ZI-Q_VS_BSP_COMMON.Signal=NUCLEO-U3C5ZI-Q_VS_BSP_COMMON
VP_PWR_VS_DBSignals.Mode=DisableDeadBatterySignals
VP_PWR_VS_DBSignals.Signal=PWR_VS_DBSignals
VP_PWR_VS_SECSignals.Mode=Security/Privilege
VP_PWR_VS_SECSignals.Signal=PWR_VS_SECSignals
VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
VP_TIM1_VS_no_output1.Mode=Output Compare1 No Output
VP_TIM1_VS_no_output1.Signal=TIM1_VS_no_output1
board=NUCLEO-U3C5ZI-Q
boardIOC=true

 

Best answer by Ghofrane GSOURI

Hello ​@AQB 

Your contribution is much appreciated.

Issue has been escalated to dev team under internal ticket ID #0064101 

I will keep you posted with updates.

THX

Ghofrane

1 reply

Ghofrane GSOURI
Ghofrane GSOURIBest answer
ST Technical Moderator
July 6, 2026

Hello ​@AQB 

Your contribution is much appreciated.

Issue has been escalated to dev team under internal ticket ID #0064101 

I will keep you posted with updates.

THX

Ghofrane

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.