Ask questions on STM32CubeMX. Discuss code generation and configuration challenges, among other topics.
Most recent activity
Note on a specific code creation problem: I use CubeMX for a project with STM32H743 and SD card interface with FatFS. When creating code the sd_diskio.c source has the following entry:/* USER CODE BEGIN enableSDDmaCacheMaintenance *//* #define ENABLE_SD_DMA_CACHE_MAINTENANCE 1 *//* USER CODE BEGIN enableSDDmaCacheMaintenance */After uncommenting "#define ENABLE_SD_DMA_CACHE_MAINTENANCE" the definition is commented again after a new code generation with STM32CubeMX. So I have to place the define in another place to have it active after a new Code Generation.The USER CODE BEGIN section has no USER CODE END entry. Instead another BEGIN with the same name is present (see above).
After updating the STM32CubeMX Eclipse Plugin to 5.0.0 version I get the following message on running the plugin: "This release of STM32CubeMX Eclipse Plugin cannot be used in macOS".The Plugin still opens, but I can't edit the peripheral values (it's actually unusable).I tried also with the standalone version of STM32CubeMX (SetupSTM32CubeMX-5.0.0.app), but the setup application doesn't start.I also updated the JDK, but the issue is still present.How can I solve the problem?Thanks!!!
I'm using CubeMX V 5.0.1 to create a simple project for Nucleo-L031K6 board. I've configured PA12 as an input. Under Pinout & Configuration->System Core->NVIC there is no option to enable "EXTI line 4 to 15 interrupts" . Show only enabled interrupts is not checked.I have a very similar project created with an earlier version (4.x.x) of CubeMX and the option to enable "EXTI line 4 to 15 interrupts" is shown when the project is opened with V5.0.1To duplicate, with CubeMX V5.0.1Create a new project for Nucleo-L013K6Select PA12 as input.Go to NVIC configuration as above and see that the "EXTI line 4 to 15 interrupts" selection is not available. What am I missing???Thanks,Dave
Posted on March 30, 2018 at 18:03 Hello, I have a device based on STM32F1 series that's using the USB CDC interface. TrueSTUDIO project is generated with STM32CubeMX. Everything is working fine except one last thing: Setting the serial number string from code. I can set the serial number string from STM32CubeMX or by overriding the define in Code #define USBD_SERIALNUMBER_STRING_FS '00000000001A'�? But I need the string to be unique per device, so using the MCU UID to generate an unique number would be the best solution. Generated parts are: [...] USBD_DescriptorsTypeDef FS_Desc = { USBD_FS_DeviceDescriptor , USBD_FS_LangIDStrDescriptor , USBD_FS_ManufacturerStrDescriptor , USBD_FS_ProductStrDescriptor , USBD_FS_SerialStrDescriptor , USBD_FS_ConfigStrDescriptor , USBD_FS_InterfaceStrDescriptor }; [...] uint8_t * USBD_FS_SerialStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length) { if(speed == USBD_SPEED_HIGH) { USBD_GetString((uint8_t *)USBD_SERIALNUMBER_STRING_FS, US
in CubeMX V5.01 release note, it says:• The TrueSTUDIO™ IDE is not supported.Is this only for this version release or for future as well?
Hi,I am new to STM32 systems and CubeMX5 and have several questions.I am using STM32F746 disco board with TrueStudio , I am trying to work with external SDRAM (first time working with external RAM) I configured the FMC and generate the code but all the memory not in extenal SDRAM (the address is not 0xC0000000 and above). What should I do or change to make work ?I understand that external ram change the internal or at least make it bigger, Am I right?It will be great if I can move the heap to the external RAMThanks for the help!!!David
In HAL_Init(); generated by STMCubeMX/* Compute TIM1 clock */ uwTimclock = 2*HAL_RCC_GetPCLK2Freq();is set to 32000000 instead of 216000000 /* Compute the prescaler value to have TIM1 counter clock equal to 1MHz */ uwPrescalerValue = (uint32_t) ((uwTimclock / 1000000) - 1);prescaler is wrong, 31 instead of 215What is wrong ?
Posted on March 22, 2018 at 06:49Hi,1. Is there any near future plan for CubeMX integration with new version of CMSIS, CMSIS-RTOS2 Version 2.1.2. ARM has also released CMSIS version 5.3.2. Is there any near future plan for integrating FreeRTOS version 10 in CubeMX.Thanks,#cmsis #freertos-stm32cube #cubemx-v4.24
STM32F030-xx selection in STM32 MX for M0 cores start with STM32F0C6
becouse of this problem:https://community.st.com/s/question/0D50X0000AAIIetSQH/i2s-dma-complete-transfer-irq-on-circular-mode?t=1546553719139I need to use stm32f4 hal library version 1.11I cant generate a project with CubeMX 5 and using that library version.Is there a way to use old hal library version?
STM32CubeMX and the chip itself seem to have pin 1. marked differently.I just got 100pin STM32F746vet from Digikey, If I hold it with text correctly there are are two dots or dimples on lewer left corner and upper right corner. But report from Cube has that dot on upper left corner. See the attached pdf.How can I find the pin 1.
Hi - stm32 cube mx version 5 is running very slowly for me (I've a good spec i7). Does anyone have any suggestions?
I'm using STM32CubeMX (5.0.0) and Atollic TrueSTUDIO (9.2.0) to implement I2C slave functionality on an STM32F3 series microcontroller. I am able to get the DMA to work accepting bytes from an I2C write command, but can't seem to get the DMA to provide the data for an I2C read command.I don't see any examples where DMA is used by the slave to provide transmit data. Is this possible, or is the I2C TX DMA only for master mode?Thanks.
Hi,i am trying to build up a QSPI connection with the STM32H7 Nucleo Board. But i am still struggling. I generated the project und did the setup with CubeMX. The Problem is that i can't send anything. I am measuring the CS and CLK with my oscilliscope but even there i can't see anything. I have attached my code. Could someone help me, pleas?
ADC channel selection is generated like this:LL_ADC_REG_SetSequencerChannels(ADC1, LL_ADC_CHANNEL_0);LL_ADC_REG_SetSequencerChannels(ADC1, LL_ADC_CHANNEL_1);LL_ADC_REG_SetSequencerChannels(ADC1, LL_ADC_CHANNEL_TEMPSENSOR);and it is incorrect: there must be a call of LL_ADC_REG_SetSequencerChAdd();
Well, the generated LWIP/ethernetif.c contains the following (after the header):Expression SWIPdatas is undefined on line 13, column 8 in ethernetif_h7.ftl. The problematic instruction: ---------- ==> list SWIPdatas as SWIP [on line 13, column 1 in ethernetif_h7.ftl] ---------- Java backtrace for programmers: ---------- freemarker.core.InvalidReferenceException: Expression SWIPdatas is undefined on line 13, column 8 in ethernetif_h7.ftl. at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:124) at freemarker.core.IteratorBlock.accept(IteratorBlock.java:100) at freemarker.core.Environment.visit(Environment.java:208) at freemarker.core.Environment.visit(Environment.java:297) at freemarker.core.CompressedBlock.accept(CompressedBlock.java:73) at freemarker.core.Environment.visit(Environment.java:208) at freemarker.core.MixedContent.accept(MixedContent.java:92) at freemarker.core.Environment.visit(Environment.java:208) at freemarker.core.Environment.process(Environment.jav
I use STM32cubeMX tool, generate interrupt function, compile and program successful in Keil V5. But this function doesn't work. How to solve the question?
This bug was in previous version (old user interface) and present in new versionThere are not initialization in MX_GPIO_Init(); and in MX_TIM3_Init();
Mcu: STM32F446RET6STM32CubeMX 5.0.0 (STM32Cube V1.0)So, yeah i figured out that if i use LL_RCC_DRIVER and then any periephal which only does have HAL_driver implemented by ST, it will get stuck in infinity loop in the corresponding init function.ie. if (HAL_CAN_Init(&hcan1) != HAL_OK) // <<- permanently stuck { Error_Handler(); }and the actual infinity loop is below. while ((hcan->Instance->MSR & CAN_MSR_SLAK) != RESET) // <-- Always true { if ((HAL_GetTick() - tickstart) > CAN_TIMEOUT_VALUE) // <-- never true { /* Update error code */ hcan->ErrorCode |= HAL_CAN_ERROR_TIMEOUT; /* Change CAN state */ hcan->State = HAL_CAN_STATE_ERROR; return HAL_ERROR; } }Now i ask, why i'm able to select LL and HAL driver mixture from cubeMX if it does not work anyway, using HAL_RCC driver and this proplem is gone, but that is not a fix.Second, MX_CAN2_Init() always results into HAL_ERROR?
Dear ST support,1. The following attached the issue of some pins being overwritten by the last pin configuration, I also didn't find the hide feature in the configuration pop-up.how i can solve this issue ?2. what is the correct configuration for 1-bit sdcard mode on BSP FATFS (Platform proposal)?because when I was ignored then I got a warning like in figure 2Thank you in advance
We are having trouble getting the SPI_FullDuplex_ComPolling demo working with TrueSTUDIO. It works in uVision, have not tried IAR yet.When we import the project we get the following message for the Build Configuration: • "Orphaned configuration. No base extension cfg exists for fr.ac6.managedbuild.config.gnu.cross.exe.debug.1501117984"What does this mean? There is no build configurations present, how can we get deployed to our target?
any help would be very much appreciated.for the past few weeks I have been trying to get SPI & DMA working with HALwhat an up hill struggle !still only scratching the surface of it and this coding is not for the faint hearted or people that give up easily.OK I gave up using NSS hardware chip select at this doesn't seem to work correctly and more hassle than its worth ! you have to keep disabling the spi module and then re-enabling bit 6So I decided use a standard GPIO pin for my chip select, so much easier!1) set the Chip Select GPIO pin Low before the HAL_SPI_Transmit_DMA2) issue the HAL_SPI_Transmit_DMA data3) in the spi transmit complete interrupt, set the Chip Select Pin Highso I am able to send 3 packets of SPI DATA via the DMA in my init code before my main loopSPI INIT/* SPI2 init function */ void MX_SPI2_Init(void) { hspi2.Instance = SPI2; hspi2.Init.Mode = SPI_MODE_MASTER; hspi2.Init.Direction = SPI_DIRECTION_1LINE; hspi2.Init.DataSize = SPI_DATASIZE_8BIT; hspi2.Init.
STMCubeMX V 5.0 MCC STM32F413VHT6, TIM6 problem I'm using LL libraries. The interrupt generated with any setting always has a frequency around 3.6 MHz. Thanks for your help.
I do have a pretty decent computer. XEON 12 Core and 64GB RAM running Mac OS 10.14. But using this ST application is a terrible exercise in patience. Sometimes I need to double click things (e.g. TIMx under Timers on the left) so it changes to its settings. Over all version 5.0 is a real pain to use.BUT maybe there is something "sub optimal" on my system. Especially Java. Are there other users that suffer from slow user interface with that application? What is the preferred Java version?
ST Community highlights – April to June 2026
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.