about nvds function[nvdst_put]

4 posts / 0 new
Last post
libra_13179
Offline
Last seen:4 years 5 months ago
Joined:2015-06-16 04:43
about nvds function[nvdst_put]

hi dialog
@file nvds.h
uint8_t nvds_put(uint8_t tag, nvds_tag_len_t length, uint8_t *buf);

I'm working with SDK 3.0.10 and trying to write the NVDS. However, when enabling read/write (#define NVDS_READ_WRITE 1), trying to call nvds_put() results in a linker error: ".\out\full_emb_sysram.axf: Error: L6218E: Undefined symbol nvds_put (referred from nvds.o)."

How can NVDS be written? Specifically I am interested in configuring the device's name (NVDS_TAG_DEVICE_NAME) and the BD address (NVDS_TAG_BD_ADDRESS). Both of these will be configured via an external command from a host MCU as part of production, and will be different for every device manufactured.

Device:
MT_dialog
Offline
Last seen:2 weeks 1 day ago
Staff
Joined:2015-06-08 11:34
Hi libra_13179,

Hi libra_13179,

The nvds_put() isn't supported that's why you get the linker error.

The NVDS can be programmed through the OTP header or the SPI using Smart Snippets or the programming line tool and the programming tool can only set the BDaddress not the device name.

Thanks MT_dialog

Joacimwe
Offline
Last seen:1 year 3 months ago
Guru
Joined:2014-01-14 06:45
It depends on your setup, but

这取决于你的设置,但也许你可以write a custom application firmware for each device, in which you have replaced the appropriate offsets in the image with the device name and bd address? The nvds is located at a fixed offset (0x340).

MT_dialog
Offline
Last seen:2 weeks 1 day ago
Staff
Joined:2015-06-08 11:34
Hi Joacimwe,

Hi Joacimwe,

Thanks for advising

MT_dialog