Paso 2: Diseño de Firmware
El firmware se desarrolló con X de MPLAB con el compilador XC8 así. Las funcionalidades del sensor son pocos, de hecho sólo lee la temperatura, el voltaje de la batería y lo envía a la base. Después de una inicial fase de inicialización del dispositivo, el sensor primero realiza la medición de la temperatura y el voltaje de la batería y a continuación, envía un paquete que contiene temperatura y voltaje de la batería; terminado el envío de datos si se recibe una respuesta por la base, establece CC1101 integrado y el micro en el sueño, o trata de volver a enviar los mismos datos para 5 veces por segundo, después de que vuelve en el estado de sueño. Para despertar el microcontrolador del sueño por el temporizador perro guardián del micro (sistema apropiadamente), una estela de la CC1101 y luego una nueva presentación se ejecutan. Este proceso lleva a cabo solamente si el sensor ha sido programado previamente para una base. La base se encuentra en recepción y espera la llegada de un elemento de datos o la acción de un usuario en la clave. Si se recibe un paquete del sensor programado, envía un paquete de respuesta a los datos, revisa los datos y luego actualiza el valor en la pantalla. Si un usuario presiona thekey en el circuito, la base entra en modo de programación por actualizar el valor en la pantalla para indicar de que modo de programación está activo.