ESP_IOT v2.5
IOT ESP Coding
PreferencesController.h File Reference
Include dependency graph for PreferencesController.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  sensorStruct
 
struct  sensorsStruct
 wrap sensors More...
 

Macros

#define STEPPER_IS_UNO   1
 
#define STEPPER_IS_MINI   2
 
#define STEPPER_IS_TUMBLER   3
 
#define PREFERENCE_MAIN_GATEWAY_VALUE   0
 
#define PREFERENCE_MAIN_BLE_SERVER_VALUE   1
 
#define PREFERENCE_MAIN_BLE_CLIENT_VALUE   2
 
#define PREFERENCE_STEPPER_BUZZER_VALUE   3
 stepper preferences More...
 
#define PREFERENCE_STEPPER_SINGLE_FEED_VALUE   4
 
#define PREFERENCE_STEPPER_AUTO_FEED_VALUE   5
 
#define PREFERENCE_STEPPER_JACKPOT_FEED_VALUE   6
 
#define PREFERENCE_STEPPER_ANGLE_FLOAT_SETTING   7
 
#define PREFERENCE_STEPPER_KIND_VALUE   8
 uses STEPPER type More...
 
#define PREFERENCE_STEPPER_FEEDS_PER_JACKPOT   9
 
#define PREFERENCE_SENSOR_TILT_VALUE   10
 Sensor preferences. More...
 
#define PREFERENCE_SENSOR_PIR_VALUE   11
 
#define PREFERENCE_SEMANTIC_MARKER_ZOOMED_VALUE   12
 Display preferences (SemanticMarker etc) - boolean. More...
 
#define PREFERENCE_DISPLAY_ON_BLANK_SCREEN_VALUE   13
 Display preferences - show messages on blank screen- boolean. More...
 
#define PREFERENCE_DISPLAY_SCREEN_TIMEOUT_VALUE   14
 sets the timeout value More...
 
#define PREFERENCE_HIGH_TEMP_POWEROFF_VALUE   15
 sets the max temp for a poweroff More...
 
#define PREFERENCE_IS_MINIMAL_MENU_SETTING   16
 sets the max temp for a poweroff More...
 
#define PREFERENCE_NO_BUTTON_CLICK_POWEROFF_SETTING   17
 
#define WIFI_CREDENTIALS_MAX   2
 for now, save 2 WIFI Credentials More...
 
#define PREFERENCE_WIFI_CREDENTIAL_1_SETTING   18
 
#define PREFERENCE_WIFI_CREDENTIAL_2_SETTING   19
 
#define PREFERENCE_PAIRED_DEVICE_SETTING   20
 the paired device for guest device feeding (6.6.22) More...
 
#define PREFERENCE_DEVICE_NAME_SETTING   21
 the device name itself (6.6.22) More...
 
#define PREFERENCE_FIRST_TIME_FEATURE_SETTING   22
 a firsttime feature flag (only 1 per build) 7.12.22 defaulting to TRUE More...
 
#define PREFERENCE_ONLY_GEN3_CONNECT_SETTING   23
 if true, only BLEClient connect to GEN3 feeders.. More...
 
#define PREFERENCE_SCREEN_COLOR_SETTING   24
 ithe color of the screen 0..n More...
 
#define PREFERENCE_BLE_SERVER_USE_DEVICE_NAME_SETTING   25
 if set, the BLE Server (like PTFeeder) will tack on the device name (or none if not defined). More...
 
#define PREFERENCE_BLE_USE_DISCOVERED_PAIRED_DEVICE_SETTING   26
 
#define PREFERENCE_USE_DOC_FOLLOW_SETTING   27
 for More...
 
#define PREFERENCE_SUB_DAWGPACK_SETTING   28
 8.17.22 to turn on/off subscribing to the dawgpack topic More...
 
#define PREFERENCE_USE_SPIFF_SETTING   29
 8.22.22 to turn on/off SPIFF use (more below..) More...
 
#define PREFERENCE_PAIRED_DEVICE_ADDRESS_SETTING   30
 the paired device for guest device feeding (6.6.22) .. but the Address 9.3.22 More...
 
#define PREFERENCE_STEPPER_FACTORY_CLOCKWISE_MOTOR_DIRECTION_SETTING   31
 
#define PREFERENCE_SENDWIFI_WITH_BLE   32
 sends the WIFI to all except current device if set More...
 
#define PREFERENCE_NOTIFY_BLE_DISCOVERY   33
 starts the BLE Discovery notification process - which might be internal or externa (via messages). More...
 
#define PREFERENCE_TIMER_INT_SETTING   34
 the preference timer More...
 
#define PREFERENCE_SUPPORT_GROUPS_SETTING   35
 the preference for supporting GROUPS (default true) More...
 
#define PREFERENCE_GROUP_NAMES_SETTING   36
 the preference setting group names to subscribe (but empty or # go to wildcard, this also supports wildcard in the future) More...
 
#define PREFERENCE_DEBUG_INFO_SETTING   37
 a place to put some kind of Last Will of what went wrong .. for now (> max tries) More...
 
#define PREFERENCE_DEV_ONLY_SM_SETTING   38
 adding AP_DEBUG_MODE to let others know that DEBUG eprom is available. Turn this OFF for non dev More...
 
#define PREFERENCE_TIMER_MAX_INT_SETTING   39
 the preference timer MAX (pairs with PREFERENCE_TIMER_INT_SETTING) More...
 
#define PREFERENCE_ATOMS_SETTING   40
 1.1.24 the preference for all the ATOM plugs (format: atomType:value} .. for now just use socket:on More...
 
#define PREFERENCE_ATOM_KIND_SETTING   41
 1.4.24 What kind of ATOM plug (set, M5AtomKind, val= {M5AtomSocket, M5AtomScanner} More...
 
#define PREFERENCE_SM_ON_PIR_SETTING   42
 1.10.24 Flag on whether a Semantic Marker command is sent on PIR, and the Command to send More...
 
#define PREFERENCE_SM_COMMAND_PIR_SETTING   43
 1.10.24 The Semantic Marker command is sent on PIR, and the Command to send More...
 
#define PREFERENCE_SM_COMMAND_PIR_OFF_SETTING   44
 1.11.24 The Semantic Marker command is sent on PIR, and the Command to send on OFF (or opposite) More...
 
#define PREFERENCE_ATOM_SOCKET_GLOBAL_ONOFF_SETTING   45
 1.12.24 Whether the AtomSocket accepts global on/off messages More...
 
#define PREFERENCE_USE_SPIFF_MQTT_SETTING   46
 
#define PREFERENCE_USE_SPIFF_QRATOM_SETTING   47
 For MQTT writing to the QRATOM. More...
 
#define PREFERENCE_STEPPER_AUTO_MOTOR_DIRECTION_SETTING   48
 
#define PREFERENCE_INCLUDE_GROUP_NAMES_SETTING   49
 8.2.24 don't change subscription but include these groups (eg. safeHouse,atlasDogs) More...
 
#define PREFERENCE_STEPPER_CLOCKWISE_MOTOR_DIRECTION_SETTING   50
 
#define PREFERENCE_SENSOR_PLUGS_SETTING   51
 
#define PREFERENCE_SENSORS_SETTING   52
 
#define PREFERENCE_STEPPER_RPM_SETTING   53
 
#define MAX_MAIN_PREFERENCES   54
 ******* 1 greater than last value **** IMPORTANT *** and no gaps.. More...
 
#define ATOM_KIND_M5_SCANNER   0
 returned from mainModule More...
 
#define ATOM_KIND_M5_SOCKET   1
 
#define NEW_SENSORS_PREFERENCE
 

Typedefs

typedef struct sensorStruct SensorStruct
 
typedef struct sensorsStruct SensorsStruct
 wrap sensors More...
 

Functions

boolean topicInIncludeGroup (char *topic)
 
void setIncludeGroups (char *groups)
 8.2.24 set the include group (and cache it), called from MQTT More...
 
void initPreferencesMainModule ()
 initialize the _preferencesMainLookup with EPROM lookup names More...
 
void printPreferenceValues_mainModule ()
 print the preferences to SerialDebug More...
 
void initAppendingPreference_mainModule (int preferenceID)
 called to init the preference. This won't save anything until storePreference called More...
 
void appendPreference_mainModule (int preferenceID, String preferenceValue)
 called to append to a a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void storePreference_mainModule (int preferenceID, String preferenceValue)
 called to append to a a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void resetPreference_mainModule (int preferenceID)
 called to reset to blank a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void savePreference_mainModule (int preferenceID, String preferenceValue)
 called to set a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
boolean getPreferenceBoolean_mainModule (int preferenceID)
 called to set a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void savePreferenceBoolean_mainModule (int preferenceID, boolean flag)
 save a boolean preference More...
 
void togglePreferenceBoolean_mainModule (int preferenceID)
 toggles a preference boolean More...
 
char * getPreference_mainModule (int preferenceID)
 
char * getPreferenceString_mainModule (int preferenceID)
 returns the preference but in it's own string buffer. As long as you use it before calling getPreferenceString again, it won't be overwritten More...
 
int getPreferenceInt_mainModule (int preferenceID)
 called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void savePreferenceInt_mainModule (int preferenceID, int val)
 sets an int More...
 
void savePreferenceIntFromString_mainModule (int preferenceID, char *val)
 sets an int, but only if a valid integer, and no signs More...
 
float getPreferenceFloat_mainModule (int preferenceID)
 called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void savePreferenceFloat_mainModule (int preferenceID, float val)
 called to set a preference (which will be an identifier and a string, which can be converted to a number or boolean) More...
 
void setOnBootPreferences_mainModule ()
 set some defaults on boot - that override EPROM this can be called on the HOME screen to set back to normal mode.. More...
 
boolean isValidPairedDevice_mainModule ()
 returns if the paired device is not NONE More...
 
char * getPairedDevice_mainModule ()
 returns if the paired device is not NONE More...
 
char * getPairedDeviceAddress_mainModule ()
 returns if the paired device is not NONE More...
 
char * getPairedDeviceOrAddress_mainModule ()
 returns if the paired device is not NONE .. returns address or device More...
 
void resetAllPreferences_mainModule ()
 resets preferences.. Currently only reset all, but eventually reset(groups..) More...
 
void setDiscoverM5PTClicker (boolean flag)
 
boolean getDiscoverM5PTClicker ()
 get option More...
 
void savePreferenceATOMKind_MainModule (String value)
 new 1.4.24 setting ATOM kind (eg. M5AtomSocket, M5AtomScanner). MQTT message "set":"M5AtomKind", val= More...
 
char * getPreferenceATOMKind_MainModule ()
 new 1.4.24 setting ATOM kind (eg. M5AtomSocket, M5AtomScanner) More...
 
int getM5ATOMKind_MainModule ()
 new 1.4.24 setting ATOM kind (eg. ATOM_KIND_M5_SCANNER, ATOM_KIND_M5_SOCKET) More...
 
SensorsStructgetSensors_mainModule ()
 return the sensor specified or null More...
 
SensorStructgetSensor_mainModule (char *sensorName)
 return the sensor specified or null More...
 
void setSensorsString_mainModule (char *sensorsString)
 
void initSensorStringsFromEPROM_mainModule ()
 
void printSensors_mainModule (SensorsStruct *sensors)
 print sensors, passing in a struct More...
 
void resetSensorToDefault_mainModule ()
 

Macro Definition Documentation

◆ ATOM_KIND_M5_SCANNER

#define ATOM_KIND_M5_SCANNER   0

returned from mainModule

Definition at line 262 of file PreferencesController.h.

◆ ATOM_KIND_M5_SOCKET

#define ATOM_KIND_M5_SOCKET   1

Definition at line 263 of file PreferencesController.h.

◆ MAX_MAIN_PREFERENCES

#define MAX_MAIN_PREFERENCES   54

******* 1 greater than last value **** IMPORTANT *** and no gaps..

Definition at line 162 of file PreferencesController.h.

◆ NEW_SENSORS_PREFERENCE

#define NEW_SENSORS_PREFERENCE

Definition at line 269 of file PreferencesController.h.

◆ PREFERENCE_ATOM_KIND_SETTING

#define PREFERENCE_ATOM_KIND_SETTING   41

1.4.24 What kind of ATOM plug (set, M5AtomKind, val= {M5AtomSocket, M5AtomScanner}

Definition at line 115 of file PreferencesController.h.

◆ PREFERENCE_ATOM_SOCKET_GLOBAL_ONOFF_SETTING

#define PREFERENCE_ATOM_SOCKET_GLOBAL_ONOFF_SETTING   45

1.12.24 Whether the AtomSocket accepts global on/off messages

Definition at line 124 of file PreferencesController.h.

◆ PREFERENCE_ATOMS_SETTING

#define PREFERENCE_ATOMS_SETTING   40

1.1.24 the preference for all the ATOM plugs (format: atomType:value} .. for now just use socket:on

Definition at line 112 of file PreferencesController.h.

◆ PREFERENCE_BLE_SERVER_USE_DEVICE_NAME_SETTING

#define PREFERENCE_BLE_SERVER_USE_DEVICE_NAME_SETTING   25

if set, the BLE Server (like PTFeeder) will tack on the device name (or none if not defined).

Definition at line 61 of file PreferencesController.h.

◆ PREFERENCE_BLE_USE_DISCOVERED_PAIRED_DEVICE_SETTING

#define PREFERENCE_BLE_USE_DISCOVERED_PAIRED_DEVICE_SETTING   26

if set, the BLE Client will look for its service base name (PTFeeder or PTClicker), but if that name also has an extension (:ScoobyDoo), and this is set, it will only connect if the PREFERENCE_PAIRED_DEVICE_SETTING has the same device name in the discovered name

Definition at line 64 of file PreferencesController.h.

◆ PREFERENCE_DEBUG_INFO_SETTING

#define PREFERENCE_DEBUG_INFO_SETTING   37

a place to put some kind of Last Will of what went wrong .. for now (> max tries)

Definition at line 101 of file PreferencesController.h.

◆ PREFERENCE_DEV_ONLY_SM_SETTING

#define PREFERENCE_DEV_ONLY_SM_SETTING   38

adding AP_DEBUG_MODE to let others know that DEBUG eprom is available. Turn this OFF for non dev

9.28.23 #272 only show Semantic Markers that are sent directly to the device

Definition at line 106 of file PreferencesController.h.

◆ PREFERENCE_DEVICE_NAME_SETTING

#define PREFERENCE_DEVICE_NAME_SETTING   21

the device name itself (6.6.22)

Definition at line 52 of file PreferencesController.h.

◆ PREFERENCE_DISPLAY_ON_BLANK_SCREEN_VALUE

#define PREFERENCE_DISPLAY_ON_BLANK_SCREEN_VALUE   13

Display preferences - show messages on blank screen- boolean.

Definition at line 33 of file PreferencesController.h.

◆ PREFERENCE_DISPLAY_SCREEN_TIMEOUT_VALUE

#define PREFERENCE_DISPLAY_SCREEN_TIMEOUT_VALUE   14

sets the timeout value

Definition at line 35 of file PreferencesController.h.

◆ PREFERENCE_FIRST_TIME_FEATURE_SETTING

#define PREFERENCE_FIRST_TIME_FEATURE_SETTING   22

a firsttime feature flag (only 1 per build) 7.12.22 defaulting to TRUE

Definition at line 54 of file PreferencesController.h.

◆ PREFERENCE_GROUP_NAMES_SETTING

#define PREFERENCE_GROUP_NAMES_SETTING   36

the preference setting group names to subscribe (but empty or # go to wildcard, this also supports wildcard in the future)

Definition at line 98 of file PreferencesController.h.

◆ PREFERENCE_HIGH_TEMP_POWEROFF_VALUE

#define PREFERENCE_HIGH_TEMP_POWEROFF_VALUE   15

sets the max temp for a poweroff

Definition at line 37 of file PreferencesController.h.

◆ PREFERENCE_INCLUDE_GROUP_NAMES_SETTING

#define PREFERENCE_INCLUDE_GROUP_NAMES_SETTING   49

8.2.24 don't change subscription but include these groups (eg. safeHouse,atlasDogs)

Definition at line 139 of file PreferencesController.h.

◆ PREFERENCE_IS_MINIMAL_MENU_SETTING

#define PREFERENCE_IS_MINIMAL_MENU_SETTING   16

sets the max temp for a poweroff

Definition at line 39 of file PreferencesController.h.

◆ PREFERENCE_MAIN_BLE_CLIENT_VALUE

#define PREFERENCE_MAIN_BLE_CLIENT_VALUE   2

Definition at line 14 of file PreferencesController.h.

◆ PREFERENCE_MAIN_BLE_SERVER_VALUE

#define PREFERENCE_MAIN_BLE_SERVER_VALUE   1

Definition at line 13 of file PreferencesController.h.

◆ PREFERENCE_MAIN_GATEWAY_VALUE

#define PREFERENCE_MAIN_GATEWAY_VALUE   0

These are the "preferenceID" in the calls below.. **** Preferences Setup, called from reading EPROM, and from someone saving a preference ****

Definition at line 12 of file PreferencesController.h.

◆ PREFERENCE_NO_BUTTON_CLICK_POWEROFF_SETTING

#define PREFERENCE_NO_BUTTON_CLICK_POWEROFF_SETTING   17

sets stepper angle, a floating point number sets screentimeout if not button clicks (set,noclick,val,seconds) NO poweroff with the GATEWAY mode

Definition at line 43 of file PreferencesController.h.

◆ PREFERENCE_NOTIFY_BLE_DISCOVERY

#define PREFERENCE_NOTIFY_BLE_DISCOVERY   33

starts the BLE Discovery notification process - which might be internal or externa (via messages).

Definition at line 88 of file PreferencesController.h.

◆ PREFERENCE_ONLY_GEN3_CONNECT_SETTING

#define PREFERENCE_ONLY_GEN3_CONNECT_SETTING   23

if true, only BLEClient connect to GEN3 feeders..

Definition at line 56 of file PreferencesController.h.

◆ PREFERENCE_PAIRED_DEVICE_ADDRESS_SETTING

#define PREFERENCE_PAIRED_DEVICE_ADDRESS_SETTING   30

the paired device for guest device feeding (6.6.22) .. but the Address 9.3.22

Definition at line 74 of file PreferencesController.h.

◆ PREFERENCE_PAIRED_DEVICE_SETTING

#define PREFERENCE_PAIRED_DEVICE_SETTING   20

the paired device for guest device feeding (6.6.22)

Definition at line 50 of file PreferencesController.h.

◆ PREFERENCE_SCREEN_COLOR_SETTING

#define PREFERENCE_SCREEN_COLOR_SETTING   24

ithe color of the screen 0..n

Definition at line 58 of file PreferencesController.h.

◆ PREFERENCE_SEMANTIC_MARKER_ZOOMED_VALUE

#define PREFERENCE_SEMANTIC_MARKER_ZOOMED_VALUE   12

Display preferences (SemanticMarker etc) - boolean.

Definition at line 31 of file PreferencesController.h.

◆ PREFERENCE_SENDWIFI_WITH_BLE

#define PREFERENCE_SENDWIFI_WITH_BLE   32

sends the WIFI to all except current device if set

Definition at line 85 of file PreferencesController.h.

◆ PREFERENCE_SENSOR_PIR_VALUE

#define PREFERENCE_SENSOR_PIR_VALUE   11

Definition at line 29 of file PreferencesController.h.

◆ PREFERENCE_SENSOR_PLUGS_SETTING

#define PREFERENCE_SENSOR_PLUGS_SETTING   51

issue #338 sensor definition (in work) This will be a string in JSON format with various PIN and BUS information

Definition at line 149 of file PreferencesController.h.

◆ PREFERENCE_SENSOR_TILT_VALUE

#define PREFERENCE_SENSOR_TILT_VALUE   10

Sensor preferences.

Definition at line 28 of file PreferencesController.h.

◆ PREFERENCE_SENSORS_SETTING

#define PREFERENCE_SENSORS_SETTING   52

5.14.25 Dead 5.14.74 Montana issue #365 Object Oriented Sensors as well define the sensors (not sensorPlugs). MQTT: set:sensor, set:sensors

Definition at line 154 of file PreferencesController.h.

◆ PREFERENCE_SM_COMMAND_PIR_OFF_SETTING

#define PREFERENCE_SM_COMMAND_PIR_OFF_SETTING   44

1.11.24 The Semantic Marker command is sent on PIR, and the Command to send on OFF (or opposite)

Definition at line 122 of file PreferencesController.h.

◆ PREFERENCE_SM_COMMAND_PIR_SETTING

#define PREFERENCE_SM_COMMAND_PIR_SETTING   43

1.10.24 The Semantic Marker command is sent on PIR, and the Command to send

Definition at line 120 of file PreferencesController.h.

◆ PREFERENCE_SM_ON_PIR_SETTING

#define PREFERENCE_SM_ON_PIR_SETTING   42

1.10.24 Flag on whether a Semantic Marker command is sent on PIR, and the Command to send

Definition at line 118 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_ANGLE_FLOAT_SETTING

#define PREFERENCE_STEPPER_ANGLE_FLOAT_SETTING   7

Definition at line 22 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_AUTO_FEED_VALUE

#define PREFERENCE_STEPPER_AUTO_FEED_VALUE   5

Definition at line 20 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_AUTO_MOTOR_DIRECTION_SETTING

#define PREFERENCE_STEPPER_AUTO_MOTOR_DIRECTION_SETTING   48

8.2.24 to let older Tumbler NOT do the auto direction (back and forth) Isue #332 it will set via message: autoMotorDirection {"set":"autoMotorDirection","val":"true"}

Definition at line 136 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_BUZZER_VALUE

#define PREFERENCE_STEPPER_BUZZER_VALUE   3

stepper preferences

Definition at line 17 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_CLOCKWISE_MOTOR_DIRECTION_SETTING

#define PREFERENCE_STEPPER_CLOCKWISE_MOTOR_DIRECTION_SETTING   50

retreives the motor direction| 1) = default, clockwise; 0 = REVERSE, counterclockwise 9.8.22 false = reverse == counterclockwise TRUE == default 8.18.24 this one changes ...

Definition at line 145 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_FACTORY_CLOCKWISE_MOTOR_DIRECTION_SETTING

#define PREFERENCE_STEPPER_FACTORY_CLOCKWISE_MOTOR_DIRECTION_SETTING   31

retreives the motor direction| 1) = default, clockwise; 0 = REVERSE, counterclockwise 9.8.22 false = reverse == counterclockwise TRUE == default 8.18.24 note this changes so you can switch directions. the FACTORY_CLOCKWISE below is the original one time setting. Renamed to FACTORY for backward compatible

Definition at line 82 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_FEEDS_PER_JACKPOT

#define PREFERENCE_STEPPER_FEEDS_PER_JACKPOT   9

Definition at line 25 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_JACKPOT_FEED_VALUE

#define PREFERENCE_STEPPER_JACKPOT_FEED_VALUE   6

Definition at line 21 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_KIND_VALUE

#define PREFERENCE_STEPPER_KIND_VALUE   8

uses STEPPER type

Definition at line 24 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_RPM_SETTING

#define PREFERENCE_STEPPER_RPM_SETTING   53

8.14.25 Dead Movie from 10.19.1974 tonight.. issue #394 stepperRPM stepper RPM

Definition at line 159 of file PreferencesController.h.

◆ PREFERENCE_STEPPER_SINGLE_FEED_VALUE

#define PREFERENCE_STEPPER_SINGLE_FEED_VALUE   4

Definition at line 19 of file PreferencesController.h.

◆ PREFERENCE_SUB_DAWGPACK_SETTING

#define PREFERENCE_SUB_DAWGPACK_SETTING   28

8.17.22 to turn on/off subscribing to the dawgpack topic

Definition at line 69 of file PreferencesController.h.

◆ PREFERENCE_SUPPORT_GROUPS_SETTING

#define PREFERENCE_SUPPORT_GROUPS_SETTING   35

the preference for supporting GROUPS (default true)

Definition at line 94 of file PreferencesController.h.

◆ PREFERENCE_TIMER_INT_SETTING

#define PREFERENCE_TIMER_INT_SETTING   34

the preference timer

Definition at line 91 of file PreferencesController.h.

◆ PREFERENCE_TIMER_MAX_INT_SETTING

#define PREFERENCE_TIMER_MAX_INT_SETTING   39

the preference timer MAX (pairs with PREFERENCE_TIMER_INT_SETTING)

Definition at line 109 of file PreferencesController.h.

◆ PREFERENCE_USE_DOC_FOLLOW_SETTING

#define PREFERENCE_USE_DOC_FOLLOW_SETTING   27

for

Definition at line 66 of file PreferencesController.h.

◆ PREFERENCE_USE_SPIFF_MQTT_SETTING

#define PREFERENCE_USE_SPIFF_MQTT_SETTING   46

4.4.24 Adding SPIFF for MQTT and QRATOM seperately For MQTT writing to the SPIFF

Definition at line 128 of file PreferencesController.h.

◆ PREFERENCE_USE_SPIFF_QRATOM_SETTING

#define PREFERENCE_USE_SPIFF_QRATOM_SETTING   47

For MQTT writing to the QRATOM.

Definition at line 130 of file PreferencesController.h.

◆ PREFERENCE_USE_SPIFF_SETTING

#define PREFERENCE_USE_SPIFF_SETTING   29

8.22.22 to turn on/off SPIFF use (more below..)

Definition at line 71 of file PreferencesController.h.

◆ PREFERENCE_WIFI_CREDENTIAL_1_SETTING

#define PREFERENCE_WIFI_CREDENTIAL_1_SETTING   18

Definition at line 47 of file PreferencesController.h.

◆ PREFERENCE_WIFI_CREDENTIAL_2_SETTING

#define PREFERENCE_WIFI_CREDENTIAL_2_SETTING   19

Definition at line 48 of file PreferencesController.h.

◆ STEPPER_IS_MINI

#define STEPPER_IS_MINI   2

Definition at line 8 of file PreferencesController.h.

◆ STEPPER_IS_TUMBLER

#define STEPPER_IS_TUMBLER   3

Definition at line 9 of file PreferencesController.h.

◆ STEPPER_IS_UNO

#define STEPPER_IS_UNO   1

Definition at line 7 of file PreferencesController.h.

◆ WIFI_CREDENTIALS_MAX

#define WIFI_CREDENTIALS_MAX   2

for now, save 2 WIFI Credentials

Definition at line 46 of file PreferencesController.h.

Typedef Documentation

◆ SensorsStruct

typedef struct sensorsStruct SensorsStruct

wrap sensors

◆ SensorStruct

typedef struct sensorStruct SensorStruct

sensor struct defines the structure

Function Documentation

◆ appendPreference_mainModule()

void appendPreference_mainModule ( int  preferenceID,
String  preferenceValue 
)

called to append to a a preference (which will be an identifier and a string, which can be converted to a number or boolean)

Definition at line 341 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ getDiscoverM5PTClicker()

boolean getDiscoverM5PTClicker ( )

get option

Definition at line 1254 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ getM5ATOMKind_MainModule()

int getM5ATOMKind_MainModule ( )

new 1.4.24 setting ATOM kind (eg. ATOM_KIND_M5_SCANNER, ATOM_KIND_M5_SOCKET)

new 1.4.24 setting ATOM kind (eg. ATOM_KIND_M5_SCANNER, ATOM_KIND_M5_SOCKET) sets global _ATOM_KIND

optimize to only call this retrieval from EPROM 1 time.. unless changing the ATOMKind

Definition at line 1299 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPairedDevice_mainModule()

char * getPairedDevice_mainModule ( )

returns if the paired device is not NONE

Definition at line 794 of file MainModule.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPairedDeviceAddress_mainModule()

char * getPairedDeviceAddress_mainModule ( )

returns if the paired device is not NONE

Definition at line 800 of file MainModule.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPairedDeviceOrAddress_mainModule()

char * getPairedDeviceOrAddress_mainModule ( )

returns if the paired device is not NONE .. returns address or device

Definition at line 825 of file MainModule.cpp.

Here is the call graph for this function:

◆ getPreference_mainModule()

char * getPreference_mainModule ( int  preferenceID)

called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean) NOTE: this reuses same string buffer so will be overwritten on next call. Save value if you need more than one result (such as WIFI credentials, ouch) This mean any getPreference will use the same string .. so unless the result is a number or boolean, then copy it locally..

called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean) Note: no CACHE is looked at here. It's up to the Boolean or Int to do that..

get from EPROM

Definition at line 411 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ getPreferenceATOMKind_MainModule()

char * getPreferenceATOMKind_MainModule ( )

new 1.4.24 setting ATOM kind (eg. M5AtomSocket, M5AtomScanner)

Definition at line 1291 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPreferenceBoolean_mainModule()

boolean getPreferenceBoolean_mainModule ( int  preferenceID)

called to set a preference (which will be an identifier and a string, which can be converted to a number or boolean)

CACHE SETTINGS 5

Definition at line 429 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPreferenceFloat_mainModule()

float getPreferenceFloat_mainModule ( int  preferenceID)

called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean)

called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean)

TODO: 8.18.24 add a cache for floats .. actially cache the string value??

Definition at line 497 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPreferenceInt_mainModule()

int getPreferenceInt_mainModule ( int  preferenceID)

called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean)

called to get a preference (which will be an identifier and a string, which can be converted to a number or boolean)

Definition at line 481 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPreferenceString_mainModule()

char * getPreferenceString_mainModule ( int  preferenceID)

returns the preference but in it's own string buffer. As long as you use it before calling getPreferenceString again, it won't be overwritten

Definition at line 475 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getSensor_mainModule()

SensorStruct * getSensor_mainModule ( char *  sensorName)

return the sensor specified or null

Definition at line 1363 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ getSensors_mainModule()

SensorsStruct * getSensors_mainModule ( )

return the sensor specified or null

return the sensor specified or null

Definition at line 1357 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ initAppendingPreference_mainModule()

void initAppendingPreference_mainModule ( int  preferenceID)

called to init the preference. This won't save anything until storePreference called

Preferences for the MainModule .. basically generic settings. So any settings you want, add them here. NOTE: These are just "state" values, no methods or events are generated on saving these values.. It's up to the caller to perform events such as turning on the buzzer..

Definition at line 336 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ initPreferencesMainModule()

void initPreferencesMainModule ( )

initialize the _preferencesMainLookup with EPROM lookup names

initialize the _preferencesMainLookup with EPROM lookup names BUT these are not stored in EPROM. The next method

12.27.23 ON for all M5 (the reason is credentials ...)

12.8.22 default back TRUE default off for the M5 (but it can be turned on later..)

12.27.23 ON for most M5 , but off for the SOCKET

only the SOCKET will be off by default for now...

Sensor preferences

used for first time features..

This is a feeder that gateways to a GEN3

This is a feeder that gateways to a GEN3

REST ARE NOT CACHED

STEPPER preferences (no ifdef.. )

5.2.25 default 0.5 SECONDS (not angle for the HDriver

3.28.23 change default to 5 (from 30)

11.29.23 add a max so random can be used

set with message: set:bleusedevicename,val:on/off

12.8.22 setting to TRUE as default

1.6.23 .. PetTutor Blue app still not always discovering new syntax

set with message: set:bleusepaireddevicename,val:on/off

used for first time features..

8.17.22 to turn on/off subscribing to the dawgpack topic

//! 8.22.22 to turn on/off SPIFF use (not cached yet as it's an infrequent event)

the paired device for guest device feeding (6.6.22) .. but the Address 9.3.22

!retreives the motor direction| 0 (false) = default, clockwise; 1 (true) = REVERSE, counterclockwise 9.8.22 TRUE = reverse == counterclockwise FALSE = default

8.18.24 the factory setting retreives the motor direction| 0 (false) = default, clockwise; 1 (true) = REVERSE, counterclockwise 9.8.22 TRUE = reverse == counterclockwise FALSE = default

10.4.22

11.1.22 TODO.. messages for this..

7.26.23 added group message support (or turn it off) PREFERENCE_SUPPORT_GROUPS_SETTING default OFF 1.15.24

See also
https://github.com/konacurrents/ESP_IOT/issues/300

7.26.23 added group message support (or turn it off) PREFERENCE_GROUP_NAMES_SETTING the preference setting group names to subscribe (but empty or # go to wildcard, this also supports wildcard in the future)

a place to put some kind of Last Will of what went wrong .. for now (> max tries) 9.16.23

9.28.23 #272 only show Semantic Markers that are sent directly to the device, default OFF

1.1.24 first version of preferences for the ATOMs depending on which ATOM kind first version, only the socket and the value is on/off syntaxURL socket=off&smscanner=on

1.4.24 What kind of ATOM plug (set, M5AtomKind, val= {M5AtomSocket, M5AtomScanner}

1.10.24 The Semantic Marker command is sent on PIR, and the Command to send

1.10.24 The Semantic Marker command is sent on PIR, and the Command to send

1.11.24 The Semantic Marker command is sent on PIR, and the Command to send for OFF

1.12.24 whether global on/off is allowed. Default on..

//! 4.4.24 to turn on/off SPIFF use (not cached yet as it's an infrequent event)

//! 4.4.24 to turn on/off SPIFF use (not cached yet as it's an infrequent event)

8.2.24 to let older Tumbler NOT do the auto direction (back and forth) Isue #332 it will set via message: autoMotorDirection {"set":"autoMotorDirection","val":"true"}

8.2.24 include these groups (or none) {"set":"includeGroups","val":"group1,group2"}

issue #338 sensor definition (in work) This will be a string in JSON format with various PIN and BUS information

5.14.25 Dead 5.14.74 Montana issue #365 Object Oriented Sensors as well define the sensors (not sensorPlugs). MQTT: set:sensor, set:sensors 7.9.25 default to BuzzerSensorClass and L9110S_DCStepperClass

8.14.25 Dead Movie from 10.19.1974 tonight.. issue #394 stepperRPM stepper RPM

Definition at line 647 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initSensorStringsFromEPROM_mainModule()

void initSensorStringsFromEPROM_mainModule ( )

init the sensorString from EPROM PREFERENCE_SENSOR_PLUGS_SETTING

Parse to the global..

Definition at line 1415 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isValidPairedDevice_mainModule()

boolean isValidPairedDevice_mainModule ( )

returns if the paired device is not NONE

returns if the paired device is not NONE

Definition at line 806 of file MainModule.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ printPreferenceValues_mainModule()

void printPreferenceValues_mainModule ( )

print the preferences to SerialDebug

this inits the string to the EPROM value

don't change subscription but include these groups (eg. safeHouse,atlasDogs)

1.10.24 Flag on whether a Semantic Marker command is sent on PIR, and the Command to send

1.10.24 The Semantic Marker command is sent on PIR, and the Command to send

1.11.24 The Semantic Marker command is sent on PIR, and the Command to send

1.12.24 The Semantic Marker command is sent on PIR, and the Command to send

5.14.25

8.14.25 Dead Movie from 10.19.1974 tonight.. issue #394 stepperRPM stepper RPM

retrieve a JSON string for the ssid and ssid_password: {'ssid':<ssid>,'ssidPassword':<pass>"}

5.14.25 also print out the sensors print sensors

7.31.25

TODO: add preference to not support this?? show example JSON (break up as getPreference re-uses same string...

7.31.25 PIN USE

Definition at line 1109 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ printSensors_mainModule()

void printSensors_mainModule ( SensorsStruct sensors)

print sensors, passing in a struct

Definition at line 1345 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ resetAllPreferences_mainModule()

void resetAllPreferences_mainModule ( )

resets preferences.. Currently only reset all, but eventually reset(groups..)

dispatches a call to the command specified. This is run on the next loop()

Definition at line 1234 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ resetPreference_mainModule()

void resetPreference_mainModule ( int  preferenceID)

called to reset to blank a preference (which will be an identifier and a string, which can be converted to a number or boolean)

Definition at line 367 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ resetSensorToDefault_mainModule()

void resetSensorToDefault_mainModule ( )

7.9.25 reset SENSORS to default "BuzzerSensorClass,23,33,L9110S_DCStepperClass,21,25"

Definition at line 1103 of file PreferencesController.cpp.

Here is the call graph for this function:

◆ savePreference_mainModule()

void savePreference_mainModule ( int  preferenceID,
String  preferenceValue 
)

called to set a preference (which will be an identifier and a string, which can be converted to a number or boolean)

Definition at line 308 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ savePreferenceATOMKind_MainModule()

void savePreferenceATOMKind_MainModule ( String  value)

new 1.4.24 setting ATOM kind (eg. M5AtomSocket, M5AtomScanner). MQTT message "set":"M5AtomKind", val=

new 1.4.24 setting ATOM kind (eg. M5AtomSocket, M5AtomScanner). MQTT message "set":"M5AtomKind", val=

new 1.4.24 setting ATOM kind (eg. M5AtomSocket, M5AtomScanner) 1.5.24 also set the initial atom storage Then the device reboots.. so setup() and loop() are for the correct ATOM

1.5.24 also set the initial atom storage 1.4.24 use the _atomKind (which CAN change)

8.1.23 for the ATOM Lite QRCode Reader

12.26.23 for the ATOM Socket Power

Definition at line 1269 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ savePreferenceBoolean_mainModule()

void savePreferenceBoolean_mainModule ( int  preferenceID,
boolean  flag 
)

save a boolean preference

TODO: put them in somewhere that is saving EPROM .. a SettingsModule these are implemented in the MainModule (since they are writing to the EPROM) sets and gets the "gateway" functionality

CACHE SETTINGS 5

Definition at line 457 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ savePreferenceFloat_mainModule()

void savePreferenceFloat_mainModule ( int  preferenceID,
float  val 
)

called to set a preference (which will be an identifier and a string, which can be converted to a number or boolean)

convert to a string..

Definition at line 506 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ savePreferenceInt_mainModule()

void savePreferenceInt_mainModule ( int  preferenceID,
int  val 
)

sets an int

sets an int

CACHE SETTINGS 1

convert to a string..

Definition at line 377 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ savePreferenceIntFromString_mainModule()

void savePreferenceIntFromString_mainModule ( int  preferenceID,
char *  val 
)

sets an int, but only if a valid integer, and no signs

sets an int, but only if a valid integer, and no signs

Definition at line 392 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setDiscoverM5PTClicker()

void setDiscoverM5PTClicker ( boolean  flag)

transient for now... 10.4.22 set the M5 PTClicker discovery option..

Definition at line 1248 of file PreferencesController.cpp.

Here is the caller graph for this function:

◆ setIncludeGroups()

void setIncludeGroups ( char *  groups)

8.2.24 set the include group (and cache it), called from MQTT

process the groups..

save persistently

Definition at line 298 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setOnBootPreferences_mainModule()

void setOnBootPreferences_mainModule ( )

set some defaults on boot - that override EPROM this can be called on the HOME screen to set back to normal mode..

set some defaults on boot - that override EPROM This is also called when going back tot he MAIN menu (HOME SCREEN)

set zoomed = true (no semantic marker)

use the minimal menu on boot

Definition at line 524 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setSensorsString_mainModule()

void setSensorsString_mainModule ( char *  sensorsString)

Only 1 setSensorsString now .. will always append message: set:sensors, val:<val> or empty to clean it out unless a null or blank "" string set a sensor val (array of sensor,pin,pin,sensor,pin,pin...) After each set, the SensorsStruct will be updated

Only 1 setSensorsString now .. will always append unless a null or blank "" string set a sensor val (array of sensor,pin,pin,sensor,pin,pin...)

for now .. resetting 5.17.25

init EPROM

store in EPROM

Parse to the global..

Definition at line 1389 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ storePreference_mainModule()

void storePreference_mainModule ( int  preferenceID,
String  preferenceValue 
)

called to append to a a preference (which will be an identifier and a string, which can be converted to a number or boolean)

turn AP_DEBUG_MODe off for now... 1.1.24 seems the append is goofing things..

Definition at line 351 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ togglePreferenceBoolean_mainModule()

void togglePreferenceBoolean_mainModule ( int  preferenceID)

toggles a preference boolean

Definition at line 400 of file PreferencesController.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ topicInIncludeGroup()

boolean topicInIncludeGroup ( char *  topic)

8.2.24 retrieve the includeGroup really ask a topic if it's in the include group

8.2.24 retrieve the includeGroup really ask a topic if it's in the include group modifies the _

8.2.24 just string match for now.. NOTE: topic is a full path .. but MessageArrived: 'FEED {'deviceName':'MaggieMae'}', onTopic=usersP/groups/atlasDogs

find the topic (eg. usersP/groups/atlasDogs , is atlasDogs

go past the "/"

go through list..

empty is a find .. not specified

note "group" the short name is 2nd so it's asking if "/userP/groups/atlasDogs contains string atlasDogs that way the topic doesn't need to be parsed.. (although it could be wrong :eg atlas also matches..

Definition at line 217 of file PreferencesController.cpp.

Here is the caller graph for this function: