altosui: Add config and pyro tabs to graph widget
[fw/altos] / src / kernel / ao_pyro.c
index d4091205d2114afff64d11c1bea194a6f70f2936..4c69b82a349c340e4831b42375f5d5f58417425d 100644 (file)
@@ -45,14 +45,8 @@ ao_pyro_status(uint8_t p)
                ao_data_get(&packet);
                );
 
-       value = (AO_IGNITER_CLOSED>>1);
        value = AO_SENSE_PYRO(&packet, p);
-       if (value < AO_IGNITER_OPEN)
-               return ao_igniter_open;
-       else if (value > AO_IGNITER_CLOSED)
-               return ao_igniter_ready;
-       else
-               return ao_igniter_unknown;
+       return ao_igniter_check(value, AO_SENSE_PBATT(&packet));
 }
 
 void
@@ -690,9 +684,11 @@ ao_pyro_update_version(void)
 
                        for (v = 0; v < NUM_PYRO_VALUES; v++)
                        {
-                               value = ao_pyro_get_1_24(&pyro_1_24[p], ao_pyro_values[v].flag);
-                               ao_pyro_put(&tmp, ao_pyro_values[v].offset,
-                                           ao_pyro_size(ao_pyro_values[v].flag), value);
+                               if (ao_pyro_values[v].offset != NO_VALUE) {
+                                       value = ao_pyro_get_1_24(&pyro_1_24[p], ao_pyro_values[v].flag);
+                                       ao_pyro_put(&tmp, ao_pyro_values[v].offset,
+                                                   ao_pyro_size(ao_pyro_values[v].flag), value);
+                               }
                        }
                        memcpy(&pyro_1_25[p], &tmp, sizeof(tmp));
                }