SDAA470 July   2026 AM13E23019

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
    1. 1.1 DroneCAN: Protocol Overview and Key Features
    2. 1.2 AM13E230x Overview:
      1. 1.2.1 Why AM13E230x for DroneCAN
  5. 2System Architecture
    1. 2.1 Software Stack Overview
    2. 2.2 The Libcanard-MCAN Interface Layer: TX and RX Flow
      1. 2.2.1 TX Flow
      2. 2.2.2 RX Flow
  6. 3Software Application Overview
    1. 3.1 Project Structure
    2. 3.2 SysConfig Peripheral Configuration
    3. 3.3 Memory Pool Allocation
  7. 4Hardware Setup
  8. 5Running the Example and Test Results
  9. 6Key Pitfalls
  10. 7Conclusion
  11. 8Tools and Software

Memory Pool Allocation

The pool can be defined and configured through the application. The following block has been included in the linker command file for this purpose:

SECTIONS
{
    .canard_pool : ALIGN(8),
                   RUN_START(__CANARD_POOL_START),
                   RUN_END(__CANARD_POOL_END)
                   > RAM_S
}

Memory Footprint:

The sample application implemented takes up approximately 37KB of memory in debug build and approximately 35KB of memory in release build, with further scope of optimization. This means, enough memory if preserved for running other applications on the M33 core or run AI models on the TinyEngine™.