Most procedures for the protocols implemented in software
Minimum set of standard functions in hardware
Designed for portability across 32-bit processors
Architecture of firmware for low code and data footprint
Reuse of all firmware components of the existing link layer IP
HCI, Algorithms, Data Structures etc.
complete reuse of OS, MCU and Transport abstraction layers
Hardware abstraction layer to ensure no changes in the core firmware even if h/w changes