1. A software development system, comprising: a development board including an interface and a target processor; a sensor board coupled to the development board through the interface, the sensor board including multiple sensors; memory storing application program code and a software library, which, when executed by the target processor, causes the target processor to perform the operations comprising: receiving a request from the application program for sensor data; identifying a sensor of the multiple sensors for providing the requested sensor data; identifying a dedicated driver in a driver layer for the identified sensor; determining whether the application program is requesting raw or processed sensor data; if the application program is requesting processed sensor data: requesting raw sensor data from the identified driver; receiving the requested raw sensor data from the identified driver; sending the raw sensor data to a function of the software library; processing, by the function of the software library, the raw sensor data to generate the requested processed sensor data; and providing the processed sensor data to the application program; and if the application program is requesting raw sensor data: requesting raw sensor data from the identified driver; and providing the raw sensor data to the application program.