Skip to content

Commit 797d707

Browse files
committed
Support NUMAKER_IOT_M263A
1. Support Nuvoton targets: - NUMAKER_IOT_M263A 2. Change storage to NUSD (SD card in SDIO bus mode) from SD (SD card SPI bus mode) (1) Add COMPONENT_NUSD.lib. (2) Add component NUSD (target.components_add). (3) Change default BlockDevice to NUSD: Override BlockDevice::get_default_instance (nusd.provide-default-blockdevice). Required since mbed-cloud-client 2.1.0 (arm_uc_blockdevice_ext) or in: mbed-bootloader/modules/storage/pal-blockdevice/source/arm_uc_pal_blockdevice_mbed.cpp (4) Enable kvstore with blockdevice type being "other". i) Override get_other_blockdevice() (nusd.provide-kvstore-other-blockdevice). ii) Configure storage type to "FILESYSTEM". iii)Configure file system type to "LITTLE". vi) Configure block device type to "other". v) Configure external size to 64MiB, which cannot overlap with update-client. storage-address/update-client.storage-size. 3. Change back UARTSerial tx/rx buffer size from 1024/1024 to 256/256. This can reduce memory footprint by (1024 - 256) * 2 = 1.5KiB. Because this configuration influences both ESP8266 and default console (platfrom/mbed_retarget.cpp), memory reduction can achieve 1.5KiB x 2 = 3KiB. 4. Enlarge ESP8266 'send tcp data' timeout on Nuvoton targets Pelion connection has some failure rate with this. Enlarging ESP8266_SEND_TIMEOUT can just relieve the issue. A ticket has raised to address it: ARMmbed/mbed-os#11544
1 parent 30e1576 commit 797d707

File tree

3 files changed

+32
-0
lines changed

3 files changed

+32
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ Board | Connectivity | Storage for credentials and
2929
`Nuvoton NUMAKER_PFM_NUC472` | Ethernet | SD card (NUSD) | Build-only
3030
`Nuvoton NUMAKER_PFM_M487` | Ethernet | SD card (NUSD) | Build-only
3131
`Nuvoton NUMAKER_IOT_M487` | Wi-Fi ESP8266 | SD card (NUSD) | Build-only
32+
`Nuvoton NUMAKER_IOT_M263A` | Wi-Fi ESP8266 | SD card (NUSD) | Build-only
3233
`Seeed ARCH_MAX` | Ethernet | SD card | Build-only
3334
`Seeed Wio 3G` | Cellular | Internal Flash | Build-only
3435
`Renesas RZ_A1H` | Ethernet | External Flash ([See security limitation of this board](https://os.mbed.com/platforms/Renesas-GR-PEACH/#security-limitation-of-this-platform)) | Build-only
Binary file not shown.

mbed_app.json

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,37 @@
265265
"esp8266.provide-default" : true,
266266
"target.macros_add" : ["MBEDTLS_USER_CONFIG_FILE=\"mbedTLSConfig_mbedOS_SW_TRNG_PSA.h\"", "MBEDTLS_PSA_CRYPTO_C", "MBEDTLS_ENTROPY_NV_SEED", "PAL_USE_HW_TRNG=0", "ESP8266_SEND_TIMEOUT=8000"]
267267
},
268+
"NUMAKER_IOT_M263A": {
269+
"target.extra_labels_add" : ["PSA"],
270+
"target.network-default-interface-type" : "WIFI",
271+
"target.bootloader_img" : "bootloader/mbed-bootloader-m263_iot-block_device-kvstore-v4.1.0.bin",
272+
"bootloader-size" : "(64*1024)",
273+
"target.header_offset" : "0x12000",
274+
"target.app_offset" : "0x12400",
275+
"target.components_add" : ["NUSD"],
276+
"nusd.provide-default-blockdevice" : true,
277+
"nusd.provide-kvstore-other-blockdevice" : true,
278+
"update-client.bootloader-details" : "0x0",
279+
"update-client.application-details" : "0x12000",
280+
"update-client.storage-address" : "(1024*1024*64)",
281+
"update-client.storage-size" : "((MBED_ROM_START + MBED_ROM_SIZE - APPLICATION_ADDR) * MBED_CONF_UPDATE_CLIENT_STORAGE_LOCATIONS)",
282+
"update-client.storage-locations" : 1,
283+
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP_BLOCKDEVICE",
284+
"storage.storage_type" : "FILESYSTEM",
285+
"storage_filesystem.filesystem" : "LITTLE",
286+
"storage_filesystem.blockdevice" : "other",
287+
"storage_filesystem.internal_base_address" : "(MBED_ROM_START + MBED_BOOTLOADER_SIZE)",
288+
"storage_filesystem.rbp_internal_size" : "(2*4*1024)",
289+
"storage_filesystem.external_base_address" : "(0x0)",
290+
"storage_filesystem.external_size" : "(1024*1024*64)",
291+
"esp8266.tx" : "PC_7",
292+
"esp8266.rx" : "PC_6",
293+
"esp8266.rts" : "PE_13",
294+
"esp8266.cts" : "PC_8",
295+
"esp8266.rst" : "PE_12",
296+
"esp8266.provide-default" : true,
297+
"target.macros_add" : ["MBEDTLS_USER_CONFIG_FILE=\"mbedTLSConfig_mbedOS_SW_TRNG_PSA.h\"", "MBEDTLS_PSA_CRYPTO_C", "MBEDTLS_ENTROPY_NV_SEED", "PAL_USE_HW_TRNG=0", "ESP8266_SEND_TIMEOUT=8000"]
298+
},
268299
"DISCO_L475VG_IOT01A": {
269300
"target.macros_add" : ["MBEDTLS_USER_CONFIG_FILE=\"mbedTLSConfig_mbedOS.h\""],
270301
"target.network-default-interface-type" : "WIFI",

0 commit comments

Comments
 (0)