118 piLock(LOCK_LCD); |
124 piLock(LOCK_LCD); |
119 piLock(LOCK_MENU); |
125 piLock(LOCK_MENU); |
120 lcdClear(lcdHandle); |
126 lcdClear(lcdHandle); |
121 lcdPosition(lcdHandle, 0, 0); |
127 lcdPosition(lcdHandle, 0, 0); |
122 #endif |
128 #endif |
|
129 slcdClear(slcdHandle); |
|
130 slcdPosition(slcdHandle, 0, 0); |
|
131 |
123 syslog(LOG_NOTICE, "from menu %d to menu %d", setupmenu, menu); |
132 syslog(LOG_NOTICE, "from menu %d to menu %d", setupmenu, menu); |
124 setupmenu = menu; |
133 setupmenu = menu; |
125 |
134 |
126 switch (menu) { |
135 switch (menu) { |
127 case MENU_NONE: |
136 case MENU_NONE: |
128 #ifdef HAVE_WIRINGPI_H |
|
129 lcd_buf_show(); |
137 lcd_buf_show(); |
130 #endif |
|
131 break; |
138 break; |
132 |
139 |
133 case MENU_TOP_DEFAULT: |
140 case MENU_TOP_DEFAULT: |
134 #ifdef HAVE_WIRINGPI_H |
141 #ifdef HAVE_WIRINGPI_H |
135 lcdPuts(lcdHandle, "Setup mode."); |
142 lcdPuts(lcdHandle, "Setup mode."); |
136 lcdPosition(lcdHandle, 0, 1); |
143 lcdPosition(lcdHandle, 0, 1); |
137 lcdPuts(lcdHandle, "Up&Down = Escape"); |
144 lcdPuts(lcdHandle, "Up&Down = Escape"); |
138 #endif |
145 #endif |
|
146 slcdPuts(slcdHandle, "Setup mode."); |
|
147 slcdPosition(slcdHandle, 0, 1); |
|
148 slcdPuts(slcdHandle, "Up&Down = Escape"); |
139 break; |
149 break; |
140 |
150 |
141 case MENU_TOP_UNITS: |
151 case MENU_TOP_UNITS: |
142 #ifdef HAVE_WIRINGPI_H |
152 #ifdef HAVE_WIRINGPI_H |
143 lcdPuts(lcdHandle, "Select units"); |
153 lcdPuts(lcdHandle, "Select units"); |
144 #endif |
154 #endif |
|
155 slcdPuts(slcdHandle, "Select units"); |
145 break; |
156 break; |
146 |
157 |
147 case MENU_UNITS: |
158 case MENU_UNITS: |
148 #ifdef HAVE_WIRINGPI_H |
159 #ifdef HAVE_WIRINGPI_H |
149 lcdPuts(lcdHandle, "Choose unit:"); |
160 lcdPuts(lcdHandle, "Choose unit:"); |
150 lcdPosition(lcdHandle, 0, 1); |
161 lcdPosition(lcdHandle, 0, 1); |
151 lcdPuts(lcdHandle, current_unit->name); |
162 lcdPuts(lcdHandle, current_unit->name); |
152 #endif |
163 #endif |
|
164 slcdPuts(slcdHandle, "Choose unit:"); |
|
165 slcdPosition(slcdHandle, 0, 1); |
|
166 slcdPuts(slcdHandle, current_unit->name); |
153 break; |
167 break; |
154 |
168 |
155 case MENU_MODE_OFF: show_mode(); |
169 case MENU_MODE_OFF: show_mode(); |
156 #ifdef HAVE_WIRINGPI_H |
170 #ifdef HAVE_WIRINGPI_H |
157 lcdPuts(lcdHandle, "New mode OFF"); |
171 lcdPuts(lcdHandle, "New mode OFF"); |
158 #endif |
172 #endif |
|
173 slcdPuts(slcdHandle, "New mode OFF"); |
159 break; |
174 break; |
160 |
175 |
161 case MENU_MODE_NONE: show_mode(); |
176 case MENU_MODE_NONE: show_mode(); |
162 #ifdef HAVE_WIRINGPI_H |
177 #ifdef HAVE_WIRINGPI_H |
163 lcdPuts(lcdHandle, "New mode NONE"); |
178 lcdPuts(lcdHandle, "New mode NONE"); |
164 #endif |
179 #endif |
|
180 slcdPuts(slcdHandle, "New mode NONE"); |
165 break; |
181 break; |
166 |
182 |
167 case MENU_NONE_HEAT: snprintf(buf, Config.lcd_cols, "Set heater %s", current_unit->heater_state ? "OFF":"ON"); |
183 case MENU_NONE_HEAT: snprintf(buf, Config.lcd_cols, "Set heater %s", current_unit->heater_state ? "OFF":"ON"); |
168 #ifdef HAVE_WIRINGPI_H |
184 #ifdef HAVE_WIRINGPI_H |
169 lcdPuts(lcdHandle, buf); |
185 lcdPuts(lcdHandle, buf); |
170 #endif |
186 #endif |
|
187 slcdPuts(slcdHandle, buf); |
171 break; |
188 break; |
172 |
189 |
173 case MENU_NONE_COOL: snprintf(buf, Config.lcd_cols, "Set cooler %s", current_unit->cooler_state ? "OFF":"ON"); |
190 case MENU_NONE_COOL: snprintf(buf, Config.lcd_cols, "Set cooler %s", current_unit->cooler_state ? "OFF":"ON"); |
174 #ifdef HAVE_WIRINGPI_H |
191 #ifdef HAVE_WIRINGPI_H |
175 lcdPuts(lcdHandle, buf); |
192 lcdPuts(lcdHandle, buf); |
176 #endif |
193 #endif |
|
194 slcdPuts(slcdHandle, buf); |
177 break; |
195 break; |
178 |
196 |
179 case MENU_NONE_FAN: snprintf(buf, Config.lcd_cols, "Set fan %s", current_unit->fan_state ? "OFF":"ON"); |
197 case MENU_NONE_FAN: snprintf(buf, Config.lcd_cols, "Set fan %s", current_unit->fan_state ? "OFF":"ON"); |
180 #ifdef HAVE_WIRINGPI_H |
198 #ifdef HAVE_WIRINGPI_H |
181 lcdPuts(lcdHandle, buf); |
199 lcdPuts(lcdHandle, buf); |
182 #endif |
200 #endif |
|
201 slcdPuts(slcdHandle, buf); |
183 break; |
202 break; |
184 |
203 |
185 case MENU_MODE_BEER: show_mode(); |
204 case MENU_MODE_BEER: show_mode(); |
186 #ifdef HAVE_WIRINGPI_H |
205 #ifdef HAVE_WIRINGPI_H |
187 lcdPuts(lcdHandle, "New mode BEER"); |
206 lcdPuts(lcdHandle, "New mode BEER"); |
188 #endif |
207 #endif |
|
208 slcdPuts(slcdHandle, buf); |
189 break; |
209 break; |
190 |
210 |
191 case MENU_BEER_TEMP: |
211 case MENU_BEER_TEMP: |
192 #ifdef HAVE_WIRINGPI_H |
212 #ifdef HAVE_WIRINGPI_H |
193 lcdPuts(lcdHandle, "Set beer temp"); |
213 lcdPuts(lcdHandle, "Set beer temp"); |
194 lcdPosition(lcdHandle, 0, 1); |
214 lcdPosition(lcdHandle, 0, 1); |
195 #endif |
215 #endif |
|
216 slcdPuts(slcdHandle, "Set beer temp"); |
|
217 slcdPosition(slcdHandle, 0, 1); |
|
218 |
196 snprintf(buf, Config.lcd_cols, "Set %.1f", temp_temp); |
219 snprintf(buf, Config.lcd_cols, "Set %.1f", temp_temp); |
197 #ifdef HAVE_WIRINGPI_H |
220 #ifdef HAVE_WIRINGPI_H |
198 lcdPuts(lcdHandle, buf); |
221 lcdPuts(lcdHandle, buf); |
199 #endif |
222 #endif |
|
223 slcdPuts(slcdHandle, buf); |
200 break; |
224 break; |
201 |
225 |
202 case MENU_MODE_FRIDGE: show_mode(); |
226 case MENU_MODE_FRIDGE: show_mode(); |
203 #ifdef HAVE_WIRINGPI_H |
227 #ifdef HAVE_WIRINGPI_H |
204 lcdPuts(lcdHandle, "New mode FRIDGE"); |
228 lcdPuts(lcdHandle, "New mode FRIDGE"); |
205 #endif |
229 #endif |
|
230 slcdPuts(slcdHandle, "New mode FRIDGE"); |
206 break; |
231 break; |
207 |
232 |
208 case MENU_FRIDGE_TEMP: |
233 case MENU_FRIDGE_TEMP: |
209 #ifdef HAVE_WIRINGPI_H |
234 #ifdef HAVE_WIRINGPI_H |
210 lcdPuts(lcdHandle, "Set fridge temp"); |
235 lcdPuts(lcdHandle, "Set fridge temp"); |
211 lcdPosition(lcdHandle, 0, 1); |
236 lcdPosition(lcdHandle, 0, 1); |
212 #endif |
237 #endif |
|
238 slcdPuts(slcdHandle, "Set fridge temp"); |
|
239 slcdPosition(slcdHandle, 0, 1); |
213 snprintf(buf, Config.lcd_cols, "Set %.1f", temp_temp); |
240 snprintf(buf, Config.lcd_cols, "Set %.1f", temp_temp); |
214 #ifdef HAVE_WIRINGPI_H |
241 #ifdef HAVE_WIRINGPI_H |
215 lcdPuts(lcdHandle, buf); |
242 lcdPuts(lcdHandle, buf); |
216 #endif |
243 #endif |
|
244 slcdPuts(slcdHandle, buf); |
217 break; |
245 break; |
218 |
246 |
219 case MENU_MODE_PROFILE: show_mode(); |
247 case MENU_MODE_PROFILE: show_mode(); |
220 #ifdef HAVE_WIRINGPI_H |
248 #ifdef HAVE_WIRINGPI_H |
221 lcdPuts(lcdHandle, "New mode PROFILE"); |
249 lcdPuts(lcdHandle, "New mode PROFILE"); |
222 #endif |
250 #endif |
|
251 slcdPuts(slcdHandle, "New mode PROFILE"); |
223 break; |
252 break; |
224 |
253 |
225 case MENU_PROFILE_SELECT: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
254 case MENU_PROFILE_SELECT: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
226 #ifdef HAVE_WIRINGPI_H |
255 #ifdef HAVE_WIRINGPI_H |
227 lcdPuts(lcdHandle, buf); |
256 lcdPuts(lcdHandle, buf); |
228 lcdPosition(lcdHandle, 0, 1); |
257 lcdPosition(lcdHandle, 0, 1); |
229 lcdPuts(lcdHandle, "Select profile"); |
258 lcdPuts(lcdHandle, "Select profile"); |
230 #endif |
259 #endif |
|
260 slcdPuts(slcdHandle, buf); |
|
261 slcdPosition(slcdHandle, 0, 1); |
|
262 slcdPuts(slcdHandle, "Select profile"); |
231 break; |
263 break; |
232 |
264 |
233 case MENU_PROFILE_START: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
265 case MENU_PROFILE_START: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
234 #ifdef HAVE_WIRINGPI_H |
266 #ifdef HAVE_WIRINGPI_H |
235 lcdPuts(lcdHandle, buf); |
267 lcdPuts(lcdHandle, buf); |
236 lcdPosition(lcdHandle, 0, 1); |
268 lcdPosition(lcdHandle, 0, 1); |
237 lcdPuts(lcdHandle, "Start profile"); |
269 lcdPuts(lcdHandle, "Start profile"); |
238 #endif |
270 #endif |
|
271 slcdPuts(slcdHandle, buf); |
|
272 slcdPosition(slcdHandle, 0, 1); |
|
273 slcdPuts(slcdHandle, "Start profile"); |
239 break; |
274 break; |
240 |
275 |
241 case MENU_PROFILE_PAUSE: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
276 case MENU_PROFILE_PAUSE: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
242 #ifdef HAVE_WIRINGPI_H |
277 #ifdef HAVE_WIRINGPI_H |
243 lcdPuts(lcdHandle, buf); |
278 lcdPuts(lcdHandle, buf); |
244 lcdPosition(lcdHandle, 0, 1); |
279 lcdPosition(lcdHandle, 0, 1); |
245 lcdPuts(lcdHandle, "Pause profile"); |
280 lcdPuts(lcdHandle, "Pause profile"); |
246 #endif |
281 #endif |
|
282 slcdPuts(slcdHandle, buf); |
|
283 slcdPosition(slcdHandle, 0, 1); |
|
284 slcdPuts(slcdHandle, "Pause profile"); |
247 break; |
285 break; |
248 |
286 |
249 case MENU_PROFILE_ABORT: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
287 case MENU_PROFILE_ABORT: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
250 #ifdef HAVE_WIRINGPI_H |
288 #ifdef HAVE_WIRINGPI_H |
251 lcdPuts(lcdHandle, buf); |
289 lcdPuts(lcdHandle, buf); |
252 lcdPosition(lcdHandle, 0, 1); |
290 lcdPosition(lcdHandle, 0, 1); |
253 lcdPuts(lcdHandle, "Abort profile"); |
291 lcdPuts(lcdHandle, "Abort profile"); |
254 #endif |
292 #endif |
|
293 slcdPuts(slcdHandle, buf); |
|
294 slcdPosition(slcdHandle, 0, 1); |
|
295 slcdPuts(slcdHandle, "Abort profile"); |
255 break; |
296 break; |
256 |
297 |
257 case MENU_PROFILE_RESUME: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
298 case MENU_PROFILE_RESUME: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
258 #ifdef HAVE_WIRINGPI_H |
299 #ifdef HAVE_WIRINGPI_H |
259 lcdPuts(lcdHandle, buf); |
300 lcdPuts(lcdHandle, buf); |
260 lcdPosition(lcdHandle, 0, 1); |
301 lcdPosition(lcdHandle, 0, 1); |
261 lcdPuts(lcdHandle, "Resume profile"); |
302 lcdPuts(lcdHandle, "Resume profile"); |
262 #endif |
303 #endif |
|
304 slcdPuts(slcdHandle, buf); |
|
305 slcdPosition(slcdHandle, 0, 1); |
|
306 slcdPuts(slcdHandle, "Resume profile"); |
263 break; |
307 break; |
264 |
308 |
265 case MENU_PROFILE_GOOFF: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
309 case MENU_PROFILE_GOOFF: snprintf(buf, Config.lcd_cols, "%s", current_profile->name); |
266 #ifdef HAVE_WIRINGPI_H |
310 #ifdef HAVE_WIRINGPI_H |
267 lcdPuts(lcdHandle, buf); |
311 lcdPuts(lcdHandle, buf); |
268 lcdPosition(lcdHandle, 0, 1); |
312 lcdPosition(lcdHandle, 0, 1); |
269 lcdPuts(lcdHandle, "Set profile OFF"); |
313 lcdPuts(lcdHandle, "Set profile OFF"); |
270 #endif |
314 #endif |
|
315 slcdPuts(slcdHandle, buf); |
|
316 slcdPosition(slcdHandle, 0, 1); |
|
317 slcdPuts(slcdHandle, "Set profile OFF"); |
271 break; |
318 break; |
272 |
319 |
273 case MENU_TOP_SYS: |
320 case MENU_TOP_SYS: |
274 #ifdef HAVE_WIRINGPI_H |
321 #ifdef HAVE_WIRINGPI_H |
275 lcdPuts(lcdHandle, "System menu"); |
322 lcdPuts(lcdHandle, "System menu"); |
276 #endif |
323 #endif |
|
324 slcdPuts(slcdHandle, "System menu"); |
277 break; |
325 break; |
278 |
326 |
279 case MENU_SYS_HALT: |
327 case MENU_SYS_HALT: |
280 #ifdef HAVE_WIRINGPI_H |
328 #ifdef HAVE_WIRINGPI_H |
281 lcdPuts(lcdHandle, "Halt system"); |
329 lcdPuts(lcdHandle, "Halt system"); |
282 #endif |
330 #endif |
|
331 slcdPuts(slcdHandle, "Halt system"); |
283 break; |
332 break; |
284 |
333 |
285 case MENU_SYS_REBOOT: |
334 case MENU_SYS_REBOOT: |
286 #ifdef HAVE_WIRINGPI_H |
335 #ifdef HAVE_WIRINGPI_H |
287 lcdPuts(lcdHandle, "Reboot system"); |
336 lcdPuts(lcdHandle, "Reboot system"); |
288 #endif |
337 #endif |
|
338 slcdPuts(slcdHandle, "Reboot system"); |
289 break; |
339 break; |
290 } |
340 } |
291 |
341 |
292 #ifdef HAVE_WIRINGPI_H |
342 #ifdef HAVE_WIRINGPI_H |
293 piUnlock(LOCK_MENU); |
343 piUnlock(LOCK_MENU); |