The on-board flight controller circuitry receives information from sensors that provide data about the craft in flight. Some of the possible sensors that determine the attitude, altitude, and direction of flight include:
The accelerometer and magnetometer need calibration to initialize their readings to the conditions where the flights will take place. For each quadrotor it is therefore important to follow the manufacturer's instructions carefully to setup the craft before the flights.
The inertial measurement unit (IMU) is a combined gyroscope and accelerometer. This unit will indicate the complete information about the flight characteristics of the quadrotor. Typically, the unit will measure the acceleration and orientation of the flying craft in all three dimensions.
These sensors allow indoor and outdoor flight. However, all the sensors previously mentioned suffer from slight errors that may accumulate during flight, so caution is necessary while flying in confined spaces.
Many quadrotors have sensors that will indicate information about their condition, including the motor temperature and the percentage of battery charge. This information is relayed by telemetry to the ground-based control device.
ROS, with its message passing capability, is ideally suited for such communication of sensor messages between the quadrotor and the ground-based control device. Various types of ROS sensor messages are listed at http://wiki.ros.org/sensor_msgs.