How to add compatibility with the STM32F4 series (NUCLEO-F429ZI)?

Hi, I’m trying to use mongoose-os on STM32F429ZI NUCLEO board, I have tried to build with this configs:

# Optional. List of tags for online search.
tags:
  - c

# List of files / directories with C sources. No slashes at the end of dir names.
sources:
  - src

# List of dirs. Files from these dirs will be copied to the device filesystem
filesystem:
  - fs

libs:
  - origin: https://github.com/mongoose-os-libs/ca-bundle
  - origin: https://github.com/mongoose-os-libs/rpc-service-config
  - origin: https://github.com/mongoose-os-libs/rpc-service-fs
  - origin: https://github.com/mongoose-os-libs/rpc-uart
  - origin: https://github.com/mongoose-os-libs/ethernet
  - origin: https://github.com/mongoose-os-libs/freertos

build_vars:
  DEVICE: stm32f429zi
  HSE_VALUE: 8000000
  LSE_VALUE: 32768
  MGOS_DEBUG_UART: 3
  FLASH_BL_SIZE: 0
  FLASH_BL_CFG_SIZE: 0
  FREERTOS_PORT: GCC/ARM_CM4F
  MGOS_ROOT_DEVTAB: >
    fs0 stm32flash {"offset": 0x8000, "size": 0x10000, "ese": true}
  MGOS_ROOT_FS_TYPE: SPIFFS
  MGOS_ROOT_FS_SIZE: 0x10000
  MGOS_ROOT_FS_OPTS: '{"bs": 4096, "is": 128}'
  MGOS_ROOT_FS_EXTRACT: 0
  MGOS_ROOT_FS_ON_SYS_FLASH: 1
cdefs:
  STM32_ETH_PHY: STM32_ETH_PHY_LAN8742A
  STM32_ETH_MAC_PIN_REF_CLK: 'STM32_PIN\(STM32_GPIO_PORT_A,1,11\)'
  STM32_ETH_MAC_PIN_MDC:     'STM32_PIN\(STM32_GPIO_PORT_C,1,11\)'
  STM32_ETH_MAC_PIN_MDIO:    'STM32_PIN\(STM32_GPIO_PORT_A,2,11\)'
  STM32_ETH_MAC_PIN_CRS_DV:  'STM32_PIN\(STM32_GPIO_PORT_A,7,11\)'
  STM32_ETH_MAC_PIN_RXD0:    'STM32_PIN\(STM32_GPIO_PORT_C,4,11\)'
  STM32_ETH_MAC_PIN_RXD1:    'STM32_PIN\(STM32_GPIO_PORT_C,5,11\)'
  STM32_ETH_MAC_PIN_TXD0:    'STM32_PIN\(STM32_GPIO_PORT_G,13,11\)'
  STM32_ETH_MAC_PIN_TXD1:    'STM32_PIN\(STM32_GPIO_PORT_B,13,11\)'  # !
  STM32_ETH_MAC_PIN_TXD_EN:  'STM32_PIN\(STM32_GPIO_PORT_G,11,11\)'

but it didn’t work. Return error:
Error: /go/src/github.com/mongoose-os/mos/mos/manifest_parser/manifest_parser.go:353: neither sources nor prebuilt binary exists for the lib "mbedtls" (or, if a library doesn't have any code by design, its mos.yml shouldn't contain "sources"). Fetch error was: [failed to download libmbedtls-stm32.a: mongoose-os-libs/mbedtls: no asset libmbedtls-stm32.a found in release 2.16.0: file does not exist]
How I can configure it for my microcontroller?

Is there a guide to start with to learn how to bring compatibility with other ST cards?

Thanks

1 Like