countdown_face,
stopwatch_face,
voltage_face,
+ temperature_display_face,
settings_face,
set_time_face
};
* Some folks also like to use this to hide the preferences and time set faces from the normal rotation.
* If you don't want any faces to be excluded, set this to 0 and a long Mode press will have no effect.
*/
-#define MOVEMENT_SECONDARY_FACE_INDEX (MOVEMENT_NUM_FACES - 3)
+#define MOVEMENT_SECONDARY_FACE_INDEX (MOVEMENT_NUM_FACES - 4)
/* Custom hourly chime tune. Check movement_custom_signal_tunes.h for options. */
#define SIGNAL_TUNE_DEFAULT
#include "thermistor_driver.h"
#include "watch.h"
+static bool skip = false;
+
static void _temperature_display_face_update_display(bool in_fahrenheit) {
float temperature_c = movement_get_temperature();
if (in_fahrenheit) {
void temperature_display_face_setup(uint8_t watch_face_index, void ** context_ptr) {
(void) watch_face_index;
(void) context_ptr;
+ // if temperature is invalid, we don't have a temperature sensor which means we shouldn't be here.
+ if (movement_get_temperature() == 0xFFFFFFFF) skip = true;
}
void temperature_display_face_activate(void *context) {
(void) context;
- watch_display_text_with_fallback(WATCH_POSITION_TOP, "TEMP", "TE");
}
bool temperature_display_face_loop(movement_event_t event, void *context) {
_temperature_display_face_update_display(movement_use_imperial_units());
break;
case EVENT_ACTIVATE:
+ if (skip) {
+ movement_move_to_next_face();
+ return false;
+ }
+ watch_display_text_with_fallback(WATCH_POSITION_TOP, "TEMP", "TE");
// force a measurement to be taken immediately.
date_time.unit.second = 0;
// fall through