Skip to main content

Bluetooth low energy

SmartBond™: power, size and system cost without compromise

Bluetooth® low energy is the de facto low power standard for connecting devices to each other and to the cloud. Highly integrated, the SmartBond™ SoC family features the smallest, most power efficient Bluetooth low energy solutions available and enables the lowest system costs. An extensive suite of support tooling ensures ease of use and a fast route to market.

Latest News Success Stories

Bluetooth Low Energy
SmartBond™ Product Portfolio Download PDF
Part Number DA14699/7/5/1 DA14683 DA14682 DA14586 DA14585 DA14531/0 DA14531MOD
  Product Description The world’s most advanced wireless microcontroller product family Single-chip high-security Bluetooth 5 solution with expandable memory Small size, low power and most integrated Bluetooth 5 SoC The world’s smallest and lowest power Bluetooth 5.1 System-on-Chip which enables the next 1billion IoT devices The DA14531 SmartBond TINY™ Module, based on the world’s smallest and lowest power Bluetooth 5.1 system-on-Chip
TYPE
SoC      
SiP          
Module            
TECHNOLOGY
Bluetooth® LE 5.2 5.0 5.0 5.0 5.0 5.1 5.1
2.4 GHz proprietary            
CORE SYSTEM
CPU 96MHz Arm
Cortex-M33
Floating Point DSP Extension
96MHz Arm
Cortex-M0
96MHz Arm
Cortex-M0
16MHz Arm
Cortex-M0
16MHz Arm
Cortex-M0
16MHz Arm
Cortex-M0+
16MHz Arm
Cortex-M0+
RAM 512kB
384kB (691)
128kB 128kB 96kB 96kB 48kB 48kB
ROM
OTP
128kB
4kB
128kB
64kB
128kB
64kB
128kB
64kB
128kB
64kB
144kB
32kB
144kB
32kB
Flash QSPI Flash QSPI Flash 1024kB 256kB SPI Flash SPI Flash 128kB
Crystals 32MHz+32kHz 32/16MHz+32kHz 32/16MHz+32kHz 16MHz+32kHz 16MHz+32kHz 32MHz 32MHz
POWER
Internal DCDC Buck Buck Buck Buck&Boost Buck&Boost Buck&Boost Buck
External System Power Rails 2x1.8V, 1x3.3V 2x1.8V, 1x3.3V 2x1.8V, 1x3.3V        
Charger ● ● ● ○        
SECURITY
AES/SHA 256/512 256/512 256/512 128 128 128 128
ECC/TRNG ● ● ● ● ● ●     ○ ● ○ ●
Secure Key Handling        
RADIO
Frequency 2.4GHz 2.4GHz 2.4GHz 2.4GHz 2.4GHz 2.4GHz 2.4GHz
Tx Power 6dBm 0dBm 0dBm 0dBm 0dBm 2.5dBm 2.2dBm
Rx Sensitivity -97dBm -94dBm -94dBm -93dBm -93dBm -94dBm -94dBm
PERIPHERALS
UART/SPI/I2C 3/2/2 2/2/2 2/2/2 2/1/1 2/1/1 2/1/1 2/1/1
QSPI XiP
On-the-fly decryption
2/2/2/1
1
1
       
USB FS/HS 1 1 1        
Timers/PWM/RTC 4/4/1 3/3 3/3 4/2 4/2 3/2/1 3/2/1
I2S,PCM/PDM 8CH/2CH 8CH/2CH 8CH/2CH 8CH/2CH 8CH/2CH    
LCD ● ● ● ○            
Keyboard/QDEC/IR   ● ● ● ● ● ● ● ● ○ ● ● ○ ● ● ○ ● ● ○
ADC 8CH 10b
8CH 14b
8CH 10b 8CH 10b 4CH 10b 4CH 10b 4CH 10b 4CH 10b
LED driver 2 2 ○ ○ 3 3        
Temperature sensor    
Other Haptics / Motor Controller            
APPLICATIONS
Appliances
Asset Tracking    
Beacons      
Consumer Electronics
Direction finding            
Gaming and AR/VR        
Industrial Automation      
Medical and Healthcare
MESH networks        
PC Peripherals
Smart Home and Building
Wearables  
Wireless Ranging (WiRa)            
Smart door-locks        
IoT sensors
PACKAGES
Type#Pins (#GPIO)
Dimensions
VFBGA100 (55)
5x5 mm
(699/697)
WLCSP53 (21)
3.41x3.01 mm

AQFN60 (37)
AQFN60 (31)
6x6 mm
QFN40 (24)
5x5 mm
WLCSP34 (14)
2.40x2.66 mm

QFN40 (25)
WLCSP17 (6)
1.7x2.05 mm
(531 only)
MOD16 (9)
12.5x14.5 mm
Operating Temperature -40 to 85°C -40 to 85°C -40 to 85°C -40 to 85°C -40 to 85/105°C -40 to 85°C -40 to 85°C
Supply Voltage Range 2.4 to 4.75V 1.7 to 4.75V 1.7 to 4.75V 0.9 to 3.3V 0.9 to 3.3V 1.1 to 3.3V 1.8 to 3.3V
DEVELOPMENT KITS DA14695 PRO
DA14695 USB
DA14683 PRO
DA14683 USB
DA14683 PRO
DA14683 USB
DA14585 PRO
DA14585 BASIC
DA14585 PRO
DA14585 BASIC
DA14531/0 PRO DA14531 USB DA14531MOD PRO
Partner Modules
Read more
Product Security Vulnerabilities
Read more
Legacy Products
DA14680/1 Not Recommended for New Designs; For Improved Performance – See DA14682/3
DA14580/1/2/3 Not Recommended for New Designs; For Improved Performance – See DA14585/6 and DA14530/1

 

bleuio dongle

A faster way to new Bluetooth® applications

Swedish IoT company Smart Sensor Devices AB believes developing new Bluetooth applications should be as easy as using them. That’s why they created the BleuIO Bluetooth Low Energy USB dongle using Dialog’s Bluetooth SoCs– a smart, highly integrated device that lets developers create new Bluetooth LE 5.0 applications with minimal effort.

web_bluetooth_blog

Motion Aware Thin Bluetooth® Low Energy Beacon Solution for Smart Labels

A beacon is a tiny Bluetooth radio battery-powered transmitter. Beacons provide an inexpensive broadcasting solution capable of autonomous operation over very long periods of time. In this paper, we will show how beacons can support extended functionality by employing a range of peripherals to allow them to process and display data while maintaining autonomous operation.

Success Stories banner

Smart devices that don’t need charging?

Smartcube Co. produces modular chips that convert everyday objects like sport shoes and ID badges into smart, connected IoT devices. Remarkably, they aim to produce chips that are so energy-efficient, the resulting devices never need charging! Dialog’s SmartBond Bluetooth low energy range is helping them achieve their power consumption goals at low cost while delivering excellent reliability.

Every quarter, we bundle up the best technical info on our products, software development topics, trainings, events and deliver it to your inbox.

Sign me up
Check out previous editions

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
Product ID Application Standard Memory size FLASH (Mb) Memory size ROM (kB) Memory size OTP (kB) Memory size RAM (kB) GPIOs (max) Power supply min (V) Power supply max (V) Tx current (mA) Rx current (mA) Output power (dBm) Sensitivity (dBm) Microcontroller Recommended for new Designs Package Max system clock (MHz) Flexible system clock Execute from FLASH HW crypto engine QSPI SPI UART I2C USB PDM Documents
                                                       
DA14580-01UNA Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 0 84 32 50 14 0.9 3.6 4.8 5.1 0 -93 M0 No WL-CSP34,2.5*2.5*0.5mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14580-01AT2 Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 0 84 32 50 24 0.9 3.6 4.8 5.1 0 -93 M0 No QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14580-01A32 Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 0 84 32 50 32 0.9 3.6 4.8 5.1 0 -93 M0 No QFN48,6*6*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14581-00UNA Wireless Charging Host Controller Interface BLE 4.2 Core specification 0 84 32 50 14 0.9 3.6 4.8 5.1 0 -93 M0 No WL-CSP34,2.5*2.5*0.5mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14581-00000VRA Wireless Charging Host Controller Interface BLE 4.2 Core specification 0 84 32 50 14 0.9 3.6 4.8 5.1 0 -93 M0 No WL-CSP34,2.5*2.5*0.3mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14581-00AT2 Wireless Charging Host Controller Interface BLE 4.2 Core specification 0 84 32 50 24 0.9 3.6 4.8 5.1 0 -93 M0 No QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14583-01F01AT2 Beacon & Proximity Health & Fitness Human Interface Devices Smart Home BLE 4.2 Core specification 1 84 32 50 24 2.35 3.6 4.8 5.1 0 -93 M0 No QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 0 Documentation
DA14585-00000VV2* Beacon & Proximity Health & Fitness Human Interface Devices Smart Home Remote Controls with voice commands over BLE BLE 5.0 Core specification + supplemental features 0 128 64 96 14 0.9 3.6 4.8 5.1 0 -93 M0 Yes WL-CSP34,2.4*2.66*0.5mm 16 No No Yes 0 1 2 1 0 1 Documentation
DA14585-00000AT2* Beacon & Proximity Health & Fitness Human Interface Devices Smart Home Remote Controls with voice commands over BLE BLE 5.0 Core specification + supplemental features 0 128 64 96 25 0.9 3.6 4.9 5.3 0 -93 M0 Yes QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 1 Documentation
DA14586-00F02AT2* Beacon & Proximity Health & Fitness Human Interface Devices Smart Home Remote Controls with voice commands over BLE BLE 5.0 Core specification + supplemental features 2 128 64 96 24 1.8 3.6 4.9 5.3 0 -93 M0 Yes QFN40,5*5*0.9mm 16 No No Yes 0 1 2 1 0 1 Documentation
DA14680-01F08A92 Wearables Smart Home Apple HomeKit Human Interface Devices Other rechargeable device BLE 4.2 Core specification + optional features 8 128 64 128 31 1.7 4.75 5.2 6 0 -94 M0 No AQFN60,6*6*0.8mm 96 Yes Yes Yes 0 2 2 2 1 1 Documentation
DA14681-01000U2 Wearables Smart Home Apple HomeKit Human Interface Devices Other rechargeable device BLE 4.2 Core specification + optional features 0 128 64 128 21 1.7 4.75 5.2 6 0 -94 M0 No WL-CSP53,3.4*3.0*0.5mm 96 Yes Yes Yes 1 2 2 2 1 1 Documentation
DA14681-01000A92 Wearables Smart Home Apple HomeKit Human Interface Devices Other rechargeable device BLE 4.2 Core specification + optional features 0 128 64 128 37 1.7 4.75 5.2 6 0 -94 M0 No AQFN60,6*6*0.8mm 96 Yes Yes Yes 1 2 2 2 1 1 Documentation
DA14682* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5 8 128 64 128 31 1.7 4.75 5.2 6 0 -94 M0 Yes AQFN60,6*6*0.8mm 96 Yes Yes Yes 0 2 2 2 1 1 Documentation
DA14683* Industrial Human Interface Devices Virtual reality remotes Banking BLE 5 0 128 64 128 37 1.7 4.75 5.2 6 0 -94 M0 Yes AQFN60,6*6*0.8mm 96 Yes Yes Yes 1 2 2 2 1 1 Documentation
DA14691-00000HQ2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 384 44 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA86, 6 x 6 x 0.55 mm 96 Yes Yes Yes 1 2 3 2 1 1 Documentation
DA14695-00000HQ2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 512 44 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA86, 6 x 6 x 0.55 mm 96 Yes Yes Yes 1 2 3 2 1 1 Documentation
DA14697-00000HR2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 512 55 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA100, 5 x 5 x 0.475 mm 96 Yes Yes Yes 2 2 3 2 1 1 Documentation
DA14699-00000HR2* Wearables Smart Home Apple HomeKit Bluetooth mesh Cloud connected applications BLE 5.0 Core specification + optional features Optional external 128 4 512 55 2.4 4.75 3.5 2.2 6 -97 M33 Yes VFBGA100, 5 x 5 x 0.475 mm 96 Yes Yes Yes 2 2 3 2 1 1 Documentation
DA14531 Disposables Beacons Asset tracking Connected health RCU BLE 5.1 Core specification + supplemental features 0 144 32 48 12 0.9 3.6 3.5 2.2 0 -94 M0 + Yes QFN24*2.2*3.04mm 16 Yes Yes Yes 0 1 2 1 0 0 Documentation

*Recommended for new designs

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Wearables

Wearable electronics is entering every facet of our daily life, giving us new ways to improve our lives: from productivity to health and lifestyle. Revealing previously unattainable information about ourselves and our surroundings, they help advise us.

SmartBond Solutions: DA14682/3, DA14585/6, DA1469x

Proximity & Asset Tracking

Proximity applications are based on knowing and alerting you of the distance between two devices, such as keys or wallets, if the label goes out of range. Proximity information can also be used in asset tagging for inventory and automated access control or monitoring in cold chain tracking.

SmartBond Solutions: DA1469x, DA14531

Connected Medical

Connected medical offers solutions in allowing patients to take care of their own health condition in monitoring, sending alerts and making drug delivery easy. Bluetooth low energy is the technology to connect health products to the cloud. Examples of connected medical products are blood pressure meters, heart rate monitors, glucose meters and patches, body temperature meters, virus testers and drug delivery with injectables or via patches through the skin.

SmartBond Solutions: DA14531, DA1469x

Smart Home & Buildings

Long dreamt of, the Smart Home is now becoming a reality. We can monitor and control our home security, lighting, appliances and heating, ventilation and air-conditioning (HVAC) from our smartphones and tablets – even remotely via the cloud.

SmartBond Solutions: DA14682/3, DA14585/6, DA14531

Computing & Gaming

Bluetooth has played a key role in connecting computing and gaming peripherals since its introduction. It provides a simple and proven connectivity option for a host of new and emerging peripherals, while securing access to the most personal data.

As electronic equipment becomes smarter and more mobile, the way we interact with it is changing. We want more control, more convenience and less clutter, which is driving huge growth in the wireless HID market. Bluetooth low energy is per default supported in recent versions of windows, which truly enables the wireless desktop.

SmartBond Solutions: DA14585/6, DA1469x

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
SmartBond™ SDK Overview Product Supported
SDK6 DA14585/6 + DA14531/0
SDK10 DA1469x
SDK1 DA14682/3

Also available for DA14680/1 but not recommended for new designs

SDK5 DA14580/1/3

Not recommended for new designs

 

SmartBond™ Development tools overview Product Supported
Dialog Smartbond Flash Programmer DA14531/0, DA1458x and DA1469x
SmartSnippets Toolbox All
SmartSnippets Studio All
Production Line Tool  

 

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Social distancing

Embedded Software Applications for Social Distancing Applications

Read More

Bluetooth Low Energy Range Extender

The SmartBond™ BLE Range Extender reference design enables you to take full advantage of the output power of the Bluetooth low energy standard to extend the range of your applications.

Read more

Smart USB Dongle

The Smart USB Dongle device is a fully integrated USB to Bluetooth® LE solution, based on SmartBond™ DA14683 high-security Bluetooth LE SoC.

Read more

emWin

The emWin embedded graphics library developed by SEGGER Microcontroller is now offered by Dialog Semiconductor in library form for free commercial use with the SmartBond® DA1469x wireless microcontrollers.

Read more

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Our SmartBond products are supported by development kits and a profiling to help you create applications that exploit the unique benefits of the SmartBond family to the fullest. These tools help you minimize your time to market.

Hardware Development Kits

DA14531 DA14531 - USB, DA14531 - Pro
DA14585 DA14585 - BasicDA14585 - Pro
DA14683 DA14683 - USBDA14683 - Pro
DA14695 DA14695 – USB, DA14695- Pro
All Bluetooth LE Products Production Line Tool

 

Application Focused Development Kits

 

Discontinued Kits

DA14583 DA14583 IoT Sensor Development Kit
The DA14585 IoT is an upgraded sensor development kit with more supported sensors and cloud connectivity
DA14681 DA14681 HomeKit Development Kit
DA14681 DA14681 Wearable Development Kit

 

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters

Japan-based company mainly engaged in the manufacture and sale of electronic components and audio equipment. 

See More

Bithium - your partner in the design of innovative wireless embedded systems (firmware, hardware, software). Bithium keeps a clear focus on achieving project targets and customer satisfaction. 

See More

Cambridge Consultants is a premium multidisciplinary supplier of innovative product development engineering and technology consulting. We help clients deliver groundbreaking products to market fast, with cutting-edge technology that often results in new IP generation for our clients. 

See More

Cloud2GND is a global engineering services firm specializing in standards-based wireless connectivity solutions. Our clients range from innovative start-ups to large semiconductor companies and standards organizations. We offer deep domain knowledge in embedded systems, especially around Bluetooth technology, where we provide consulting, design, development, test, deployment and maintenance services for our clients and their customers. Our engineering services division offers a flexible engagement model acting as a specialized team of standards experts or a complete engineering team able to manage your project needs to completion.

See more

Lauterbach is the leading manufacturer of complete, modular and upgradeable microprocessor development tools worldwide with experience in the field of embedded designs since 1979. The engineering team develops and produces highly proficient and specialized Development Tools, which are utilized all over the world under the brand TRACE32®.

LitePoint is the leading provider of test solutions for the world's leading manufacturers of wireless

See more

Murata is a global leader in the design, manufacture and supply of advanced electronic materials, leading edge electronic components, and multi-functional, high-density modules.

See more

Panasonic Industrial Devices Sales Company of America. Many products sold by Fortune 500 companies are in fact Powered by Panasonic technology, and we are proud to provide manufacturers with the performance, quality, and reliability that are synonymous with the Panasonic brand. The Power of Panasonic Industrial Devices brings strategic innovations to our customers’ product development process.

See more

TDK is one of the largest electronic components manufacturers in the world.

See more

Tieto is the leading product development services company enabling semiconductor, connected device and communication infrastructure manufacturers, build next generation connected devices & things, cars and networks.

See more

Wireless technology experts. Xtel's core competency is technology development, which makes up a substantial part of its business. It utilizes state-of-the-art technologies to create the next product or technical platform for its partners. Among its clients, it counts some of the world’s leading tech innovators. It is typically tasked with the development of wireless technology, protocols, and ultralow power designs and products. Xtel has in-depth knowledge of the product development and maturation of wireless technologies. It typically uses proven and tested standard components or platforms, helping its partners to reduce time to market. Where a technology boost is needed, it develops complete products or assist a development team in the company. Its technological solutions and innovative skills are recognized by its partners.

See more

Quuppa is a leading technology provider for real-time locating systems (RTLS) and indoor positioning systems (IPS). The company was established in 2012 by a team of experienced engineers and scientists as a spin-off from Nokia Research Center and has since successfully commercialised its offering, creating a complete product platform: the Quuppa Intelligent Locating System™, a one-size-fits-all technology platform for location-based services and applications. Our platform offers companies a complete software suite of tools for planning, simulating and commissioning projects, that can be used as a solid and scalable foundation for building various location-based solutions. The open API makes it fast and easy to take the platform into use. To date, the Quuppa Ecosystem has more than 200 partners around the world who use Quuppa’s open, versatile and reliable positioning platform to deliver accurate, real-time and cost-effective location solutions to companies in a range of industries, including manufacturing and logistics, retail, healthcare, sports, law enforcement and security, government, asset tracking.

See more

 

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
Back to results

DA1469x

1 week ago

Application Code Freezes on Startup, image too large?

Posted by Georg 120 points 7 replies
0 upvotes

Hi

It seems like my application code on my custom board freezes on startup when the FW image gets too large.

Can you please assist me with this issue? How do I determine the FW image size? I've been looking at the size of the .bin file in the DA1469x-Debug_QSPI folder. I've also looked at the amount of bytes written to the target:
Setting serial port baud rate to 1000000.
Writing to address: 0x00002000 offset: 0x00000000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x0000c000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x00018000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x00024000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x00030000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x0003c000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x00048000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x00054000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x00060000 chunk size: 0x0000c000
Writing to address: 0x00002000 offset: 0x0006c000 chunk size: 0x00007b6c
done.
So that would be 473 964 bytes, correct?
Why would my application freeze on startup if my image size is still below 512kB? Just to make sure, I followed your tutorial on supporting FW images bigger than 512kB.  This did not fix my problem. Here's a screenshot from Smartsnippet Toolbox. Did the OTP burn correctly?screenshot from toolbox
As soon as I add like a few more lines of code, the program will freeze right after startup.
Thank you, and kind regards

Georg

1 week ago

PM_Dialog

Hi Georg,

Thanks for your question online. Unfortunately, from what you shared I a m not able to understand what the code size is. Please share an image when the QSPI build finishes.

However, if the fw size is more than 512KB, then you should follow the DA1469x Supporting Images Bigger than 512kB tutorial. Keep in mind that this tutorial is tested and many other customers are using it, so I assume something went wrong with the steps you have followed.

If the fw is 473 964 bytes, then you should change the FLASH_REGION_SIZE to 1Mbytes and just follow the tutorial.

Possible mistakes might be :

  • Wrong partition table. Please check the suggested partition table and read the comments. Both NVMS_FIRMWARE and NVMS_GENERIC_PART respectively should be 1 MB (FLASH_REGION_SIZE) aligned.
  • Double-check that a new register configuration has been added successfully at the bottom of the OTP configuration script. I would suggest you read the OTP Configuration Script and check if the last entry is CACH_FLASH_REG with the value 0x5.  

The screenshot that you have shared is showing the partition scheme and not the OTP Configuration Script, so I am not sure if it is programmed correctly.

May I ask if it is a custom board, or you are using any of our DKs?

Thanks, PM_Dialog

1 week ago

Hi PM_Dialog

I have attached the image file. The size shows 463 KB (474 396 bytes) in Windows file explorer properties. This still below 512kB, so why is it necessary to support FW image size above 512kB?
 

  • Wrong partition table. Please check the suggested partition table and read the comments. Both NVMS_FIRMWARE and NVMS_GENERIC_PART respectively should be 1 MB (FLASH_REGION_SIZE) aligned.
    What should the values of these macros be?

Am I using the wrong partition_table h file? 

partition_tablepartition_table
The project won't build when I change that #include <4M/partition_table.h> to #include <1M/partition_table.h>.error

 

Here is the OTP Config Script. I burned the OTP a second time, to see if it would give an error, will this be a problem? 

OTP

 

I am using a custom board, and have been developing on it for quite some time now.

 

Thank you for your support!
Kind Regards

Georg

Attachment Size
Image file 248.09 KB

1 week ago

PM_Dialog

Hi Georg,

The DA1469x Supporting Images Bigger than 512kB tutorial should be used if the firmware exceeds the 512KB size. So, if the fw is more than 512KB, the cacheable area should be increased because it’s not possible to have a firmware that is larger than the cacheable ( default cacheable area is 512Kbytes ).

However, I checked again your question and as you mentioned the fw size is around 463 KB (474 396 bytes) which is smaller than the default cacheable area (512Kbytes). In that case, the suggested tutorial should not be used – my apologies for the confusion.

If the fw size is less than 512KB, the FLASH_REGION_SIZE should be set to value 6 (default cacheable size). Please try to add a new register configuration entry in the OTP Configuration Script and set the CACH_FLASH_REG to 0x6. The same procedure must be followed as before. The booter will read the last register configuration entry (0x6) and will ignore the previous (0x5).

With regards to the following error from SmartSnippets Studio (SSS):

“Region ‘ROM’ overflowed by 10960 bytes”

Navigate to {SDK_root}/sdk/bsp/config and you will find the bsp_memory_defaults_da1469x.h header file.  In that file, the default value ( as provided by the SDK ) for dg_configQSPI_CODE_SIZE_AA macro is 370 * 1024, which means that the maximum code size is ~370KB.

Please set that macro to 503 * 1024 to increase the maximum size of the firmware. If you have already changed that macro, please share its value.

With regards to the partition table, it seems you are using the default 4M partition table ( the #include <4M/partition_table.h> is defined )

Do you want to change the partition table and use it with 1M partition scheme?

I would recommend first applying the suggested changes and checking this with the 4MB partition,

You could also check the DA1469x Tutorial Flash Adapter (Non-Volatile Memory Storage) tutorial in case you need to add a custom partition table.

Please let us know the results and happy to provide support if you still have issues.

Thanks, PM_Dialog

1 week ago

Hi PM_Dialog

In that case, the suggested tutorial should not be used...

It seemed like my application code crashed when adding more code, even if the code didn't really do anything, like if(1){ }. That's why I thought it's the FW image size that is getting too big. 

Please try to add a new register configuration entry in the OTP Configuration Script...

So I assume that the OTP isn't one- time programmable if that is an option?

 If you have already changed that macro, please share its value.

 bsp_memory_defaults_da1469x.h:

#define dg_configQSPI_CODE_SIZE_AA                      ( dg_configQSPI_MAX_IMAGE_SIZE )
#define dg_configQSPI_MAX_IMAGE_SIZE                    ( IMAGE_PARTITION_SIZE )

partition_table.h:

#define IMAGE_PARTITION_SIZE    NVMS_FIRMWARE_PART_SIZE

4M/partition_table.h:

#define NVMS_FIRMWARE_PART_SIZE         0x07E000

(There is so many partition_table.h files in my project, but I think that is the one that gets included.)

Or is it the one inlcuded here:
SDK_10.0.10.118\sdk\middleware\adapters\include\flash_partitions.h

flash_partitions.h:

PARTITION_TABLE_BEGIN
#include <partition_table.h>
PARTITION_TABLE_END

Thank you for you support and quick replies, I really appreciate it.

1 week ago

PM_Dialog

Hi Georg,

As mentioned in my previous reply, the tutorial should be used if the code size is more than 512KB.

The OTP stands for One Time Programmable, thus it’s not possible to reprogram it multiple times. However, you could add another register configuration after the previous one ( after entry #20 at address 0x0000013C according to your previously attached screenshot from the SmartSnippets Toolbox). If another CACHE_FLASH_REG register configuration is added on the bottom of the Configuration Script, the booter will ignore the previous ones.

If the cacheable area is 512KB ( SDk default configuration ) , the maximum code size would be 0x07E000 bytes ( ~ 504KBs). That’s why I asked you to change the dg_configQSPI_CODE_SIZE_AA as the default one was 370KB maximum code size.

According to the tutorial, all partition entries that contain application code and are accessed by the cache controller should be aligned to FLASH_REGION_SIZE.

 - In the case of 512KB cacheable area and default 4M partition scheme, the alignment should 512KB in the firmware partition (NVMS_FIRMWARE) :

#define NVMS_PRODUCT_HEADER_PART_START  0x000000
#define NVMS_PRODUCT_HEADER_PART_SIZE   0x002000

#define NVMS_FIRMWARE_PART_START        0x002000        /* Alignment to 512KB is dictated by the default FLASH_REGION_SIZE. */
#define NVMS_FIRMWARE_PART_SIZE         0x07E000
  • NVMS_FIRMWARE_PART_SIZE = 0x80000 (512KB alignment)  - 0x2000 (NVMS_PRODUCT_HEADER_PART) = 0x07E000 So, the FW size could be up to NVMS_FIRMWARE_PART_SIZE.

 

- In the case of 1MB cacheable area, the NVMS_FIRMWARE should be 1MB aligned and the whole partition table should be changed accordingly as described in the tutorial:

#define NVMS_PRODUCT_HEADER_PART_START  0x000000
#define NVMS_PRODUCT_HEADER_PART_SIZE   0x002000

#define NVMS_FIRMWARE_PART_START        0x002000
#define NVMS_FIRMWARE_PART_SIZE         0x0FE000
  • NVMS_FIRMWARE_PART_SIZE = 0x100000 (1MB alignment)- 0x2000 (NVMS_PRODUCT_HEADER_PART) = 0x0FE000

If the FW size is around 463KB, it fits into NVMS_FIRMWARE_PART_SIZE = 0x07E000, so there is no need to change the cacheable area to 1MB.

>>>It seemed like my application code crashed when adding more code, even if the code didn't really do anything, like if(1){ }. That's why I thought it's the FW image size that is getting too big.

Can you please identify what is the FW size before adding extra code?

Thanks, PM_Dialog

1 week ago

Hi PM_Dialog

...thus it’s not possible to reprogram it multiple times. However, you could add another register configuration after the previous one...

Is the OTP memory net already burned/programmed after the first entry I made? 

...the booter will ignore the previous ones.

How does this work of the previous entries are already burned into the OTP memory?

 

I am really confused as to what causes the problem. Please see the picture below of the two different sizes, the one on the right does not work. The code starts up, but freezes right after it displays my splash screen logo on the screen. 

size of image before and after

 

The code I add seems completely unrelated to what causes the crash. 

But now I also found that this smaller image causes the same problem. Do you have any idea what might cause this problem during startup? 

image

Thanks.

Georg
EDIT:
 

My firmware size is now 520kB. I followed the tutorial on how to support images bigger than 512kB. Can you see any problem with my partition table?table

3 days ago

PM_Dialog

Hi Georg, 

My apologies for the late response. 

Can you please share the partition table to have a look ( the code from SS Studio) ?  It seems OK, but I would like to check the whole partitioning to be sure. 

>>>My firmware size is now 520kB. I followed the tutorial on how to support images bigger than 512kB. 

So, I guess the cacheable area is configured at 1MB step. Is this correct? Please double-check the OTP CS if it contains the correct register value. 

Thanks, PM_Dialog