27 #define MDCP_CMD_LEN 8
30 #define MDCP_GET_LCD_STATE "5#"
31 #define MDCP_GET_LCD_STATE_RESPONSE "5%d$"
32 #define MDCP_LCD_DISABLE "{#"
33 #define MDCP_LCD_ENABLE "}#"
34 #define MDCP_GET_LCD_DISPLAY_TIME "H#"
35 #define MDCP_GET_LCD_DISPLAY_TIME_RESPONSE "H%d$"
36 #define MDCP_SET_LCD_DISPLAY_TIME "b%d#"
37 #define MDCP_GET_TEMP_DISPLAY "h#"
38 #define MDCP_GET_TEMP_DISPLAY_RESPONSE "h%d$"
39 #define MDCP_LCD_DISPLAY_CELSIUS "c#"
40 #define MDCP_LCD_DISPLAY_FAHRENHEIT "f#"
44 #define MDCP_GET_VERSION "v#"
45 #define MDCP_IDENTIFY_RESPONSE "v%u$"
46 #define MDCP_SAVE_TO_EEPROM "w#"
47 #define MDCP_RESET_EEPROM_TO_DEFAULT "r#"
48 #define MDCP_GET_NUMBER_OF_PROBES "g#"
52 #define MDCP_SET_TRACKING_MODE "a%1u#"
53 #define MDCP_GET_TRACKING_MODE "T#"
54 #define MDCP_GET_TRACKING_MODE_RESPONSE "T%d$"
55 #define MDCP_GET_TRACKING_MODE_OFFSET "y#"
56 #define MDCP_GET_TRACKING_MODE_OFFSET_RESPONSE "y%d$"
57 #define MDCP_SET_TRACKING_MODE_OFFSET "3%d#"
61 #define MDCP_GET_AMB_TEMP "A#"
62 #define MDCP_GET_AMB_TEMP_REPSONSE "A%f$"
63 #define MDCP_GET_AMB_TEMP_OFFSET "B#"
64 #define MDCP_GET_AMB_TEMP_OFFSET_RESPONSE "B%d$"
65 #define MDCP_SET_AMB_TEMP_OFFSET "e%1d#"
66 #define MDCP_GET_REL_HUMIDITY "R#"
67 #define MDCP_GET_REL_HUMIDITY_REPSONSE "R%f$"
68 #define MDCP_GET_DEW_POINT "D#"
69 #define MDCP_GET_DEW_POINT_RESPONSE "D%f$"
74 #define MDCP_GET_PROBE_TEMPS "C#"
75 #define MDCP_SET_TEMP_CH1_OFFSET "[%.1f#"
76 #define MDCP_SET_TEMP_CH2_OFFSET "]%.1f#"
77 #define MDCP_SET_TEMP_CH3_OFFSET "%%%.1f#"
78 #define MDCP_CLEAR_TEMP_OFFSETS "&#"
79 #define MDCP_GET_TEMP_OFFSETS "?#"
80 #define MDCP_GET_TEMP_OFFSETS_RESPONSE "?%f#%f#%f$"
81 #define MDCP_GET_TEMP_RESPONSE "C%f#%f#%f$"
85 #define MDCP_GET_FAN_SPEED "F#"
86 #define MDCP_SET_FAN_SPEED "s%d#"
87 #define MDCP_GET_BOARD_TEMP "K#"
88 #define MDCP_GET_BOARD_TEMP_RESPONSE "K%f$"
89 #define MDCP_GET_FAN_ON_TEMP "J#"
90 #define MDCP_GET_FAN_ON_TEMP_RESPONSE "J%d$"
91 #define MDCP_GET_FAN_OFF_TEMP "L#"
92 #define MDCP_GET_FAN_OFF_TEMP_RESPONSE "L%d$"
93 #define MDCP_SET_FAN_ON_TEMP "N%d#"
94 #define MDCP_SET_FAN_OFF_TEMP "M%d#"
95 #define MDCP_GET_FAN_MODE "O#"
96 #define MDCP_GET_FAN_MODE_RESPONSE "O%d$"
97 #define MDCP_SET_FAN_MODE "I%d#"
101 #define MDCP_BOOST_CH1 "1#"
102 #define MDCP_BOOST_CH2 "2#"
103 #define MDCP_CANCEL_BOOST "n#"
104 #define MDCP_GET_CHANNEL_POWER "W#"
105 #define MDCP_GET_CHANNEL_POWER_RESPONSE "W%d#%d#%d$"
106 #define MDCP_GET_CH3_SETTINGS "E#"
107 #define MDCP_GET_CH3_SETTINGS_RESPONSE "E%d$"
108 #define MDCP_SET_CH3_SETTINGS "S%d#"
109 #define MDCP_SET_CH3_MANUAL_POWER "G%d#"
111 #define MDCP_RES_LEN 80
130 virtual bool ISNewNumber(
const char *dev,
const char *name,
double values[],
char *names[],
int n)
override;
131 virtual bool ISNewSwitch(
const char *dev,
const char *name,
ISState *states,
char *names[],
int n)
override;
135 bool sendCommand(
const char *
cmd,
char *response);
138 bool readMainValues();
139 bool readLCDDisplayValues();
140 bool readBoardFanValues();
141 bool readOffsetValues();
142 bool setOutputBoost(
unsigned int channel);
143 bool cancelOutputBoost();
144 bool setTempCalibrations(
float ch1,
float ch2,
float ch3,
int ambient);
145 bool setFanTempTrigger(
int tempOn,
int tempOff);
146 bool zeroTempCalibrations();
147 bool setInt(
int mode,
const char* mask,
const char* errMessage);
148 bool setChoice(
int testInt,
const char* positiveChoice,
const char* negativeChoice,
const char* errMessage);
158 DEW_STRAP_THREE_POWER
193 TEMP_PROBE_ONE_OFFSET,
194 TEMP_PROBE_TWO_OFFSET,
195 TEMP_PROBE_THREE_OFFSET,
196 AMBIENT_TEMP_PROBE_OFFSET
The Serial class manages connection with serial devices including Bluetooth. Serial communication is ...
Class to provide extended functionality for devices in addition to the functionality provided by INDI...
virtual ~myDewControllerPro()=default
virtual bool updateProperties() override
updateProperties is called whenever there is a change in the CONNECTION status of the driver....
virtual const char * getDefaultName() override
virtual bool ISNewSwitch(const char *dev, const char *name, ISState *states, char *names[], int n) override
Process the client newSwitch command.
virtual void TimerHit() override
Callback function to be called once SetTimer duration elapses.
virtual bool ISNewNumber(const char *dev, const char *name, double values[], char *names[], int n) override
Process the client newNumber command.
virtual bool initProperties() override
Initilize properties initial state and value. The child class must implement this function.
Combines all INDI Connection Plugins. Each INDI connection plugin is responsible of managing communic...