---
description: Introduction to the nuttx sofware example of the BMS
---

# Introduction

![NuttX logo](https://1587512117-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M5bN8JOOxzQjppeUgf6%2F-M9XfEKow86-9FBiGyoa%2F-M9XjbwusXdkkL452GdD%2FNuttX_logo.webp?alt=media\&token=bdb4299f-94e1-4ebc-9867-eb94d39b2f54)

\
The example starter software provided with the BMS uses the NuttX RTOS (real-time operating system ) for microcontrollers. NuttX RTOS has an emphasis on being standards compliance and small footprint. Scalable from 8-bit to 32-bit microcontroller environments, the primary governing standards in NuttX are POSIX and ANSI standards. The POSIX compliance on embedded devices is what makes it attractive particularly to developers that are used to programming in a Linux environment.\
\
The NuttX code repository can be found here: [https://github.com/NXPHoverGames/RDDRONE-BMS772](https://github.com/NXPHoverGames/RDDRONE-BMS772)\
Please follow the step by step instructions in the github readme.md in order to get started with this code. We will update it and provide clarifications there as needed.&#x20;

{% hint style="info" %}
This software Guide applies for bms version 4.0-10.1.
{% endhint %}

{% hint style="danger" %}
SOFTWARE provided is for reference only and should not be considered production ready or used in an end product as-is. It is expressly for the purpose of further development, research  and validation by experienced people. Overcharging, undercharging or abusing batteries is dangerous and must be monitored carefully in a safe environment.
{% endhint %}

{% hint style="info" %}
This example software was prepared in part as an intern's senior project under the supervision of NXP engineers.
{% endhint %}
