Mercurial > public > ostc4
annotate Discovery/Src/tInfoSensor.c @ 1082:1aa45000f92c Icon_Integration tip
Added configuration menu for HUD functions:
The V1 HUD has 4 functions (holes) which may be realized by one or two LEDs. The functions (like ppo2 monitoring or ascent speed) may be configurated by the diver using the HUD menu. The functions which may be selected depend on the HW configuration (e.g. the connected sensors) and the number of LEDs which are needed to realize the function. The previous HUD test implementation may still be activate usind the compile switch ENABLE_HUD_TESTING
| author | Ideenmodellierer |
|---|---|
| date | Sun, 15 Mar 2026 21:40:35 +0100 |
| parents | 082825daccb5 |
| children |
| rev | line source |
|---|---|
| 717 | 1 /////////////////////////////////////////////////////////////////////////////// |
| 2 /// -*- coding: UTF-8 -*- | |
| 3 /// | |
| 4 /// \file Discovery/Src/tInfoCompass.c | |
| 5 /// \brief there is only compass_DX_f, compass_DY_f, compass_DZ_f output during this mode | |
| 6 /// \author heinrichs weikamp gmbh | |
| 7 /// \date 23-Feb-2015 | |
| 8 /// | |
| 9 /// \details | |
| 10 /// | |
| 11 /// $Id$ | |
| 12 /////////////////////////////////////////////////////////////////////////////// | |
| 13 /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh | |
| 14 /// | |
| 15 /// This program is free software: you can redistribute it and/or modify | |
| 16 /// it under the terms of the GNU General Public License as published by | |
| 17 /// the Free Software Foundation, either version 3 of the License, or | |
| 18 /// (at your option) any later version. | |
| 19 /// | |
| 20 /// This program is distributed in the hope that it will be useful, | |
| 21 /// but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 22 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 23 /// GNU General Public License for more details. | |
| 24 /// | |
| 25 /// You should have received a copy of the GNU General Public License | |
| 26 /// along with this program. If not, see <http://www.gnu.org/licenses/>. | |
| 27 ////////////////////////////////////////////////////////////////////////////// | |
| 28 | |
| 29 /* Includes ------------------------------------------------------------------*/ | |
| 30 | |
| 31 #include "gfx_engine.h" | |
| 32 #include "gfx_fonts.h" | |
| 33 #include "tHome.h" | |
| 34 #include "tInfo.h" | |
| 35 #include "tInfoSensor.h" | |
| 36 #include "tMenuEdit.h" | |
| 827 | 37 #include "data_exchange_main.h" |
|
1082
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
38 #include "hud.h" |
| 717 | 39 |
| 40 #include <string.h> | |
| 41 #include <inttypes.h> | |
| 42 | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
43 extern void openEdit_Sensors(uint8_t filter); |
| 717 | 44 |
| 45 /* Private variables ---------------------------------------------------------*/ | |
| 783 | 46 static uint8_t activeSensorId = 0; |
| 47 static uint8_t sensorActive = 0; | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
48 static externalInterfaceSensorType sensorType = SENSOR_NONE; |
| 717 | 49 /* Exported functions --------------------------------------------------------*/ |
| 783 | 50 void openInfo_Sensor(uint8_t sensorId) |
| 717 | 51 { |
| 783 | 52 SSettings *pSettings = settingsGetPointer(); |
| 53 activeSensorId = sensorId; | |
| 717 | 54 set_globalState(StISENINFO); |
| 783 | 55 switch (activeSensorId) |
| 56 { | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
57 case 2: setBackMenu((uint32_t)openEdit_Sensors,SENSOR_END,3); |
| 783 | 58 break; |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
59 case 1: setBackMenu((uint32_t)openEdit_Sensors,SENSOR_END,2); |
| 783 | 60 break; |
| 61 default: | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
62 case 0: setBackMenu((uint32_t)openEdit_Sensors,SENSOR_END,1); |
| 783 | 63 break; |
| 64 } | |
| 65 sensorActive = 1; | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
66 switch(sensorType) /* type has to be set using the set function before info dialog is used */ |
| 783 | 67 { |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
68 case SENSOR_CO2: |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
69 case SENSOR_CO2M: sensorActive = pSettings->co2_sensor_active; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
70 break; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
71 case SENSOR_DIGO2: DataEX_setExtInterface_Cmd(EXT_INTERFACE_O2_INDICATE, activeSensorId); |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
72 /*no break*/ |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
73 default: if(pSettings->ppo2sensors_deactivated & (1 << (activeSensorId))) |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
74 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
75 sensorActive = 0; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
76 } |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
77 break; |
| 783 | 78 } |
| 79 | |
| 80 | |
| 717 | 81 } |
| 82 | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
83 void openInfo_SetSensorType(externalInterfaceSensorType Type) |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
84 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
85 sensorType = Type; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
86 } |
| 717 | 87 |
| 88 uint64_t mod64(uint64_t a, uint64_t b) | |
| 89 { | |
| 90 uint64_t div; | |
| 91 div=(a/10); | |
| 92 b=(10*div); | |
| 93 return (a-b); | |
| 94 } | |
| 95 | |
| 96 void uint64ToString(uint64_t value, char* pbuf) | |
| 97 { | |
| 98 char tmpBuf[32]; | |
| 99 uint8_t index = 31; | |
| 100 | |
| 101 tmpBuf[index--] = 0; /* zero termination */ | |
| 102 while((index != 0) && (value != 0)) | |
| 103 { | |
| 104 tmpBuf[index--] = '0' + (value % 10);// mod64(worker64,10); | |
| 105 value /= 10; | |
| 106 } | |
| 107 strcpy(pbuf,&tmpBuf[index+1]); | |
| 108 } | |
| 109 | |
| 783 | 110 |
| 827 | 111 static void refreshInfo_SensorO2(GFX_DrawCfgScreen s) |
| 717 | 112 { |
| 783 | 113 const SDiveState *pStateReal = stateRealGetPointer(); |
| 717 | 114 SSensorDataDiveO2* pDiveO2Data; |
| 115 char text[31]; | |
| 116 uint8_t strIndex = 0; | |
| 783 | 117 char *textPointer = text; |
| 717 | 118 |
|
724
f285424f04d9
Development feature: external pressure sensor
Ideenmodellierer
parents:
717
diff
changeset
|
119 float pressure = 0.0; |
|
f285424f04d9
Development feature: external pressure sensor
Ideenmodellierer
parents:
717
diff
changeset
|
120 |
| 827 | 121 pDiveO2Data = (SSensorDataDiveO2*)pStateReal->lifeData.extIf_sensor_data[activeSensorId]; |
| 122 strIndex = snprintf(text,32,"ID: "); | |
| 123 if(pDiveO2Data->sensorId != 0) | |
| 124 { | |
| 125 uint64ToString(pDiveO2Data->sensorId,&text[strIndex]); | |
| 126 } | |
| 127 tInfo_write_content_simple( 30, 770, ME_Y_LINE1, &FontT48, text, CLUT_Font020); | |
| 128 snprintf(text,32,"%c: %02.1f",TXT_Temperature , (float)pDiveO2Data->temperature / 1000.0); | |
| 129 tInfo_write_content_simple( 30, 770, ME_Y_LINE2, &FontT48, text, CLUT_Font020); | |
| 130 | |
| 131 #ifdef ENABLE_EXTERNAL_PRESSURE | |
| 132 pressure = (float)(stateRealGetPointer()->lifeData.ppO2Sensor_bar[2]); | |
| 133 #else | |
| 134 pressure = (float)pDiveO2Data->pressure / 1000.0; | |
| 135 #endif | |
| 136 snprintf(text,32,"Druck: %02.1f (%02.1f)", (float)pDiveO2Data->pressure / 1000.0, pressure *1000.0); | |
| 137 | |
| 138 tInfo_write_content_simple( 30, 770, ME_Y_LINE3, &FontT48, text, CLUT_Font020); | |
| 139 snprintf(text,32,"Feuchtigkeit: %02.1f", (float)pDiveO2Data->humidity / 1000.0); | |
| 140 tInfo_write_content_simple( 30, 770, ME_Y_LINE4, &FontT48, text, CLUT_Font020); | |
| 141 snprintf(text,32,"Status: 0x%lx", pDiveO2Data->status); | |
| 142 tInfo_write_content_simple( 30, 770, ME_Y_LINE5, &FontT48, text, CLUT_Font020); | |
| 143 #ifdef ENABLE_EXTERNAL_PRESSURE | |
| 144 snprintf(text,32,"Norm ppO2: %02.3f (%02.1f)", (float)(stateRealGetPointer()->lifeData.ppO2Sensor_bar[0] / (pressure / 1000.0)),(float)(stateRealGetPointer()->lifeData.ppO2Sensor_bar[0])); | |
| 145 tInfo_write_content_simple( 30, 770, ME_Y_LINE6, &FontT48, text, CLUT_Font020); | |
| 146 #endif | |
| 147 | |
| 148 if(sensorActive) | |
| 149 { | |
| 150 *textPointer++ = '\005'; | |
| 151 } | |
| 152 else | |
| 153 { | |
| 154 *textPointer++ = '\006'; | |
| 155 } | |
| 156 *textPointer++ = ' '; | |
| 157 *textPointer++ = TXT_2BYTE; | |
| 158 *textPointer++ = TXT2BYTE_Sensor; | |
| 159 *textPointer++ = ' '; | |
| 160 *textPointer++ = TXT_2BYTE; | |
| 161 *textPointer++ = TXT2BYTE_O2IFDigital; | |
| 162 *textPointer++ = '1' + activeSensorId; | |
| 163 | |
| 164 snprintf(textPointer, 20,": %01.2f, %01.1f mV", pStateReal->lifeData.ppO2Sensor_bar[activeSensorId], pStateReal->lifeData.sensorVoltage_mV[activeSensorId]); | |
| 165 | |
| 166 tInfo_write_content_simple( 30, 770, ME_Y_LINE6, &FontT48, text, CLUT_Font020); | |
| 167 | |
| 168 tInfo_write_buttonTextline_simple(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,0); | |
| 169 } | |
| 170 | |
| 171 static void refreshInfo_SensorCo2(GFX_DrawCfgScreen s) | |
| 172 { | |
| 173 const SDiveState *pStateReal = stateRealGetPointer(); | |
| 174 char text[31]; | |
| 175 char *textPointer = text; | |
| 176 | |
| 177 snprintf(text,32,"CO2: %ld ppm",pStateReal->lifeData.CO2_data.CO2_ppm); | |
| 178 tInfo_write_content_simple( 30, 770, ME_Y_LINE1, &FontT48, text, CLUT_Font020); | |
| 179 | |
| 180 | |
| 181 snprintf(text,32,"Signal: %d",pStateReal->lifeData.CO2_data.signalStrength); | |
| 182 tInfo_write_content_simple( 30, 770, ME_Y_LINE2, &FontT48, text, CLUT_Font020); | |
| 183 | |
| 184 if(sensorActive) | |
| 185 { | |
| 186 *textPointer++ = '\005'; | |
| 187 } | |
| 188 else | |
| 189 { | |
| 190 *textPointer++ = '\006'; | |
| 191 } | |
| 192 *textPointer++ = ' '; | |
| 193 *textPointer++ = TXT_2BYTE; | |
| 194 *textPointer++ = TXT2BYTE_Sensor; | |
| 195 *textPointer++ = ' '; | |
| 196 *textPointer++ = 'C'; | |
| 197 *textPointer++ = 'o'; | |
| 198 *textPointer++ = '1' + activeSensorId; | |
| 199 | |
| 200 snprintf(textPointer, 20,": %ld ppm", pStateReal->lifeData.CO2_data.CO2_ppm); | |
| 201 | |
| 202 tInfo_write_content_simple( 30, 770, ME_Y_LINE6, &FontT48, text, CLUT_Font020); | |
| 203 | |
| 204 tInfo_write_buttonTextline_simple(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_O2Calib); | |
| 205 } | |
| 1078 | 206 |
| 207 static void refreshInfo_SensorHUD(GFX_DrawCfgScreen s) | |
| 208 { | |
| 209 const SDiveState *pStateReal = stateRealGetPointer(); | |
| 210 char text[50]; | |
|
1082
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
211 char infostr[HUD_INFO_INFOSTR_LENGTH + 1]; |
| 1078 | 212 |
|
1082
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
213 uint8_t hudAddress = hud_GetAddress(); |
| 1078 | 214 |
|
1082
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
215 if(hudAddress < EXT_INTERFACE_SENSOR_CNT) |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
216 { |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
217 memcpy(infostr, (char*)&pStateReal->lifeData.extIf_sensor_data[hudAddress][HUD_INFO_INFOSTR_OFFSET], HUD_INFO_INFOSTR_LENGTH); |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
218 infostr[HUD_INFO_INFOSTR_LENGTH] = 0; |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
219 |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
220 snprintf(text,50,"%s",infostr); |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
221 tInfo_write_content_simple( 30, 770, ME_Y_LINE1, &FontT48, text, CLUT_Font020); |
|
1aa45000f92c
Added configuration menu for HUD functions:
Ideenmodellierer
parents:
1078
diff
changeset
|
222 } |
| 1078 | 223 tInfo_write_buttonTextline_simple(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,0); |
| 224 } | |
| 225 | |
| 226 | |
| 227 | |
| 827 | 228 // =============================================================================== |
| 229 void refreshInfo_Sensor(GFX_DrawCfgScreen s) | |
| 230 { | |
| 231 char text[31]; | |
| 232 | |
| 717 | 233 text[0] = '\001'; |
| 234 text[1] = TXT_Sensor; | |
| 235 text[2] = ' '; | |
| 236 text[3] = TXT_Information; | |
| 783 | 237 text[4] = ' '; |
| 786 | 238 text[5] = '1' + activeSensorId; |
| 783 | 239 text[6] = 0; |
|
826
a370741a743b
Bugfix Line order of info screen with flip screen active:
Ideenmodellierer
parents:
786
diff
changeset
|
240 tInfo_write_content_simple( 30, 770, ME_Y_LINE_BASE, &FontT48, text, CLUT_MenuPageHardware); |
| 717 | 241 |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
242 switch(sensorType) |
| 827 | 243 { |
| 244 default: | |
| 245 case SENSOR_DIGO2M: refreshInfo_SensorO2(s); | |
| 246 break; | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
247 case SENSOR_CO2: |
| 1078 | 248 case SENSOR_CO2M: refreshInfo_SensorCo2(s); |
| 249 break; | |
| 250 case SENSOR_HUD: refreshInfo_SensorHUD(s); | |
| 827 | 251 break; |
| 252 } | |
| 717 | 253 } |
| 254 | |
| 255 void sendActionToInfoSensor(uint8_t sendAction) | |
| 256 { | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
257 SSettings *pSettings = settingsGetPointer(); |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
258 |
| 717 | 259 switch(sendAction) |
| 260 { | |
| 261 case ACTION_BUTTON_BACK: | |
| 262 exitMenuEdit_to_BackMenu(); | |
| 263 break; | |
| 264 | |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
265 case ACTION_BUTTON_ENTER: switch(sensorType) |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
266 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
267 case SENSOR_CO2: |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
268 case SENSOR_CO2M: if(pSettings->co2_sensor_active) |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
269 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
270 pSettings->co2_sensor_active = 0; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
271 sensorActive = 0; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
272 } |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
273 else |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
274 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
275 pSettings->co2_sensor_active = 1; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
276 sensorActive = 1; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
277 } |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
278 break; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
279 default: if(pSettings->ppo2sensors_deactivated & (1 << (activeSensorId))) |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
280 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
281 pSettings->ppo2sensors_deactivated &= ~(1 << (activeSensorId)); |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
282 sensorActive = 1; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
283 } |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
284 else |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
285 { |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
286 pSettings->ppo2sensors_deactivated |= (1 << (activeSensorId)); |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
287 sensorActive = 0; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
288 } |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
289 break; |
|
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
290 } |
| 783 | 291 break; |
|
1073
734f84b72b30
CV Option Menu added sub menus for O2 and CO2 sensors:
Ideenmodellierer
parents:
957
diff
changeset
|
292 case ACTION_BUTTON_NEXT: if((sensorType == SENSOR_CO2M) || (sensorType == SENSOR_CO2)) |
| 827 | 293 { |
|
957
3420e3ba698d
External sensor commands: Add sensor ID to command:
Ideenmodellierer
parents:
845
diff
changeset
|
294 DataEX_setExtInterface_Cmd(EXT_INTERFACE_CO2_CALIB, activeSensorId); |
| 827 | 295 } |
| 296 break; | |
| 717 | 297 case ACTION_TIMEOUT: |
| 298 case ACTION_MODE_CHANGE: | |
| 299 case ACTION_IDLE_TICK: | |
| 300 case ACTION_IDLE_SECOND: | |
| 301 default: | |
| 302 break; | |
| 303 } | |
| 304 } | |
| 305 |
