Industrial applications often consists of many sensors using vastly different communication interfaces. These can vary from RF, to serial interfaces like I²C and SPI, to analog interfaces like 4-20mA loops. By utilizing the power of the ARM7TDMI core, complex protocols can be handled while still having the power to deal with general housekeeping and data processing tasks. Since sensor outputs rarely have linear behavior, they need to be linearized in order to interpret the result correctly. This can be done by a number of techniques such as executing an algorithm or using a lookup table. Each approach to linearizing sensors generally involves a tradeoff in terms of the speed of execution and the accuracy obtained. The net result of this is that by having more processing power at the sensor node, a more complex algorithm can be implemented giving a more accurate sensor reading. This could be done at the host processor but this approach becomes impractical once the number of sensor element increases. If there are control loops present in the system, the local microcontroller can be used to maintain a given set point independently of the host controller. A typical loop would consist of an ADC to convert the analog signal from the sensor, a microcontroller and a DAC or digital PWM to correct the error between the signal measured and the system set point. By having this control loop at the sensor node, any issues with communication delay and/or synchronization with the host processor does not affect the control loop. An example would be controlling temperature in a room with a temperature sensor and a fan forming part of an air conditioning system.

