Commit graph

333 commits

Author SHA1 Message Date
Ray Jones
cfa5ac857d Merge branch 'JIM_mqttSettingsPage' into MQTTstore 2019-05-12 20:20:56 +10:00
Ray Jones
04fab40742 Refactored string in JSON moderator - const char* are BAD AND EVIL in a std::map
MQTT parameter exchange via JSON and NV storage
2019-05-12 20:15:18 +10:00
James
a36ef97af2 Settings for MQTT will now dissapear if not enabled in the web interface.
retrieve/save details should work once Ray creates nvRam hooks for the code:D
2019-05-12 19:14:03 +10:00
James
9072c6bb7a Added fields and javascript for MQTT settings (Web Page Only) 2019-05-12 11:47:46 +10:00
Ray Jones
e8f6b88aeb Quick fix: -20C -ve threshold for cyclic mode 2019-05-12 09:01:22 +10:00
Ray Jones
9861297744 Suite of minor bug fixes and annoyances - now Afterburner for AP and BT server names :-)
OTA was not rebooting after AP only update
2019-05-11 12:18:06 +10:00
Ray Jones
b47a4606dd Changed DS18B20 read to a use device address - faster
Seeing 10 second WiFi timeout if BT & WiFI client active, reversed order so Websocket now sends before BT
  - very much more stable now
  - smacks of a UART ISR causing issues with socket kernel code...
2019-05-09 06:30:26 +10:00
Ray Jones
e900cb84a7 BT icon always on fixed, NVstorage name length limit 2019-05-08 05:38:14 +10:00
Ray Jones
ead2c9b189 Added firmware version info to splash screen 2019-04-28 20:23:11 +10:00
Ray Jones
7e4fff9d61 AP name now Afterburner. Splash screen now Afterburner Controller. 2019-04-28 09:56:45 +10:00
Ray Jones
de6226ad12 User settings loop now uses graphic symbology.
Added adjustable -ve threshold for Jess mode (cyclic shutdown if over temp).
Added user selectable display blank, dim or do nothing option on keypad inactivity.
Added user selectable menu timeout on keypad inactivity.
2019-04-27 20:41:47 +10:00
rljonesau
21be30a3f6 Set V2.2: 20 Apr 2019 2019-04-20 19:18:32 +10:00
rljonesau
505015139c Implemented screen switching upon timeout, start and stop in ScreenManager 2019-04-20 19:13:24 +10:00
rljonesau
480bd1b15c Adding OnStart, OnStop and OnTimeout home screen actions 2019-04-20 09:49:22 +10:00
rljonesau
c1b1036ece New features:
Version information screen
Adjustable frame rate
User selectable default menu
Extra large fonts for clock and basic menu
2019-04-19 21:38:39 +10:00
rljonesau
9a36df14ec BUG FIXES:
Repeating timers were being cancelled!
Set time always advanced by one day upon entry.
Desired temperature was incorrect when using enhanced thermostat modes in Detailed menu
2019-04-18 21:02:39 +10:00
rljonesau
1819a244f9 Added generic Debounce class for use by keypad and GPIO inputs 2019-04-13 19:05:53 +10:00
rljonesau
83784a77d2 Added board detection to solve setup of GPIO of modded vs unmodded V2.0 PCBs and inversion of inputs on V1 PCBS. 2019-04-13 09:18:07 +10:00
rljonesau
a2fe5e969d GPIO screen now uses icons for inputs and outputs 2019-04-11 09:00:36 +10:00
rljonesau
45330be305 Added GPIO screen 2019-04-10 09:30:27 +10:00
rljonesau
aba5762c0c Added GPIO out user mode 2019-04-10 09:28:46 +10:00
rljonesau
7332d4e797 Added status LED via GPIO Output #1. 2019-04-09 09:12:42 +10:00
rljonesau
485ca0b8a5 Added: Hold input 1 for run mode; Alternate closures input 1 toggle run/stop 2019-04-06 22:06:50 +11:00
rljonesau
e281e1adf8 Initial mode IP1 ON, IP2 OFF - works! 2019-04-06 21:45:25 +11:00
rljonesau
708a8087b1 Consolidated new generated run states into protocol handler, new JSON for suspend mode 2019-04-05 06:39:58 +11:00
rljonesau
cce60328c0 Added over temp cycling, based upon Jess Baughan's idea 2019-04-04 21:48:05 +11:00
rljonesau
e6b285c00c Bug fix - incorrect wifi mode upon wifi screen entry.
Tidied alignment of OTA & CFG/AP against Wifi icon
2019-03-24 17:38:48 +11:00
rljonesau
a8744fdf22 Wifi enable & OTA enable in NVram. Bug fix thermostat mode in priming menu.
OTA now shows in screen header against Wifi icon.
2019-03-24 16:48:03 +11:00
rljonesau
f4d6c3dccc Added descriptions of key pad functions in setup menus. Made key pad presses more consistent. 2019-03-17 18:10:01 +11:00
rljonesau
1cfd82c32f Added menu to show standard Adafruit font 2019-03-16 14:57:37 +11:00
rljonesau
77265112ab Timer menu key strokes more logical now - cool arrows found in Adafruit fonts!! 2019-03-16 10:54:50 +11:00
rljonesau
cb1e784b5b Screen manager can now select any menu, typically only for off shoot stand alone menus.
Quite a tidy interface now.
2019-03-16 08:43:44 +11:00
rljonesau
d19c60da33 Screen manager now uses vector<vector<CScreen*>> for all screens.
Very tidy and easily extensible now.
2019-03-15 23:42:54 +11:00
rljonesau
c7609a984f consolidated screen manager menu loop selection 2019-03-15 22:34:25 +11:00
rljonesau
ead0411d7a Tidied management of branch menus by adding them to a vector 2019-03-15 21:48:22 +11:00
rljonesau
ae102021d5 Added JSON command handling for thermostat control method 2019-03-15 19:08:05 +11:00
rljonesau
d8c050b165 Added setting screen to select the thermostat mode and window size 2019-03-15 18:19:30 +11:00
rljonesau
2fc020ae6c Implemented mechanism for thermostat hysteresis. Need to build UI. 2019-03-14 21:52:59 +11:00
rljonesau
220657956f Omitted InheritSettingsScreen.cpp/.h 2019-03-12 18:09:50 +11:00
rljonesau
c10d8c4204 OLED timer chart now updates with JSON timer changes 2019-03-06 07:17:58 +11:00
rljonesau
459f15054d Bluetooth app updated for 14 timers, including conflict testing. 2019-03-05 20:40:00 +11:00
rljonesau
f00a179f34 Implemented JSON send and receive of new timer packaging 2019-03-03 19:48:52 +11:00
rljonesau
df4a1837d9 Merge branch 'master' into 7dayTimers
Resolved  Conflicts:
	Arduino/BTCDieselHeater/src/OLED/ScreenManager.cpp
	Arduino/BTCDieselHeater/src/OLED/SetTimerScreen.cpp
	Arduino/BTCDieselHeater/src/OLED/SetTimerScreen.h
2019-03-02 10:59:19 +11:00
rljonesau
83f564cf95 tidied CScreenManager 2019-03-02 10:32:50 +11:00
rljonesau
807709adc8 refactored inheritance of OEM settings into a new screen - MUCH TIDIER! 2019-03-02 10:16:37 +11:00
rljonesau
12ed7301dc Added initUI calls, along with onSelect when screens come into view - ensures fresh start every time 2019-02-28 19:56:13 +11:00
rljonesau
5875a30064 Added fallback to Basic Control menu when dimming timeout elapses, unless in Detailed Control or Clock 2019-02-28 18:14:02 +11:00
rljonesau
4bc1c79a6d Added inheritance of LCD controller setting to OLED menus. Can show fan volts in detailed control menu. 2019-02-27 22:51:02 +11:00
rljonesau
bf082210b8 timers a work in progress - updating JSON commands 2019-02-26 19:38:30 +11:00
rljonesau
a45d88fcf5 refactored timer checking to now be table based. JSON naming changed to remove embedded numeric. 2019-02-20 21:50:28 +11:00
rljonesau
aade6fdc34 timer conflict test now directly uses the proposed sTimer info, not the NV staged values. 2019-02-15 06:36:13 +11:00
rljonesau
fefb84a87a Massive rework of the timer setup and a graphical presentation of the timer status 2019-02-14 21:20:15 +11:00
rljonesau
cc98073eac Merge branch 'RLJ_JCWiFiRevisit2' 2019-02-12 06:29:35 +11:00
rljonesau
ee38936df1 Split TempDesired controls to TempDesired (slider) + TempDesiredVal (readout) 2019-02-12 06:28:58 +11:00
rljonesau
76f24adfcc Consolidated incoming JSON handling for pump/fan max/min values 2019-02-11 21:01:24 +11:00
rljonesau
4a95d528f8 Ray's touch ups to the fuel setting sliders. 2019-02-11 20:47:00 +11:00
rljonesau
30220e3e58 Added unmounting of SPIFFS when using OTA. Added /formatspiffs URL 2019-02-11 19:34:11 +11:00
James
2ce6c52243 hopefully pushing upstream 2019-02-11 08:54:51 +11:00
James
712cc7e319 Merge branch 'master' of gitlab.com:mrjones.id.au/bluetoothheater into JimsNewWorkingWeb 2019-02-11 08:51:29 +11:00
James
6df163fc1b Changed index.html sliders now linked to values
changing sliders changes values immediadtly - Need to find a way to unhook that.
2019-02-11 08:51:02 +11:00
rljonesau
25a238ddad Bad default Hz for Max pump, should be 45 (4.5Hz), NOT 14 (1.4Hz) :-( 2019-02-10 19:20:47 +11:00
James
b14f2b8b1c Added hooks for pump and fan settings - Pending RaReview should be good to merge 2019-02-10 18:25:37 +11:00
rljonesau
20d08691fd Bluetooth app updated to show degF when Farenheit mode selected via OLED menus.
new JSON TempMode for degC/degF mode indication
2019-02-07 21:36:54 +11:00
rljonesau
0a666e1e2f Added option for temperature readout in Farenheit. 2019-02-07 07:24:22 +11:00
rljonesau
9f91aa579f bloody fragile HTML! - back to original, ignoring the browser debug warnings and it works! FFS. 2019-01-28 15:08:42 +11:00
rljonesau
aafe381c66 prevent clock menu on OLED if no RTC fitted 2019-01-27 12:17:49 +11:00
rljonesau
b785450ad5 #ifdef touch up 2019-01-27 10:00:32 +11:00
rljonesau
67bc2b8261 FUBAR'd the default system voltage in NV storage - was 12, should be 120!
adding last two bytes of MAC to default AP's SSID - useful if you have a couple of ESP's on the desk!
2019-01-26 11:58:50 +11:00
rljonesau
e4773a081b Added thermo/fixed toggle to detailed menu. Fixed reversed direction in timer menu. HTML fixes. 2019-01-24 06:03:29 +11:00
rljonesau
0a1226a03c Added SPIFFS directory dump in setup, using "not found" to deliver pages other than special ones. 2019-01-21 06:56:42 +11:00
rljonesau
4b1d941b7f Web server now using SPIFFS - must use Partition: Minimal SPIFFS 2019-01-20 21:14:45 +11:00
rljonesau
f48ec8d314 Tidied "STORING" timeout in PasswordScreen.cpp. 2019-01-20 15:25:58 +11:00
rljonesau
a218218db0 Heater settings now explain PF-X and SN-X by toggling their actual effect.
First press if display is dimmed now brightens display but does not perform an action.
2019-01-20 14:19:38 +11:00
rljonesau
a6ea647724 Heater tuning and settings now in OLED sub menu which is password protected. 2019-01-19 22:05:14 +11:00
rljonesau
7ddc2c16ef Using CPasswordScreen for Fuel and heater settings 2019-01-19 10:06:12 +11:00
rljonesau
033d2f4c27 Adding CPasswordScreen class 2019-01-19 07:15:02 +11:00
rljonesau
71abd19e52 Gave screens meaningful names. Set Clock and Timer screens now branch from Clock Screen. 2019-01-18 18:09:40 +11:00
rljonesau
4d12334823 Improved Config Portal feedback on OLED 2019-01-18 14:34:32 +11:00
rljonesau
716827b399 All WifiManager reconfigs now conclude via wifiEnterConfigPortal which manages NV flag and OLED reboot alert 2019-01-16 20:22:17 +11:00
rljonesau
af0980a72b Can now set/clear CFG mode with OLED. Can also clear credentials. 2019-01-15 08:41:54 +11:00
rljonesau
abbd0fa5ae tidied commenting in BTCWifi.cpp 2019-01-15 07:03:35 +11:00
rljonesau
1b74359084 Refactored to use BOOT (GPIO0) switch for WiFi - so obvious! Shows CFG on WiFi icon if STA+AP and portal running 2019-01-14 21:35:21 +11:00
rljonesau
95c054e19b Rehashed post wm.autoConnect. Can now have config portal active on STA connection! 2019-01-14 20:54:31 +11:00
rljonesau
c2e790a5dd STA+AP mode working - woo hoo! 2019-01-14 17:55:54 +11:00
rljonesau
13c3b1b44a changed to single variable for AP mode tracking 2019-01-14 16:48:33 +11:00
rljonesau
d01e660f79 re-enabled OTA - works :-) 2019-01-14 15:22:57 +11:00
rljonesau
551205d6bd Tidy up DS18B20 reporting. Tidied WiFiManager handling, new Bluetooth app 2019-01-14 14:30:41 +11:00
rljonesau
320b7e8b6f Added CFG to OLED WiFi icon when portal running. 5 sec press to reset WiFi creds, start portal 2019-01-14 11:47:13 +11:00
rljonesau
de2cd12770 Once again works with 192.168.100.1 as the SoftAP IP address 2019-01-14 09:00:43 +11:00
rljonesau
c0e42e6dc6 Pin 25 now determines if we boot into Config Portal or Web Page
Short press -> Config Portal
Long press -> Web Page (> 1 second)
2019-01-14 08:24:13 +11:00
rljonesau
0765882256 Can launch SoftAP with web server from boot with no WiFiManager credentials.
Now to set some NV flags to control the boot to either web server or WifiManager with no creds.
2019-01-14 07:16:45 +11:00
rljonesau
4d780ed3a1 Have portal working from boot, reboot after setting up WiFiManager to connect to new network 2019-01-14 06:59:32 +11:00
rljonesau
bbb225e3b7 Can finally get WifiManager configportal up using the pushbutton, but only if no credentials 2019-01-13 08:32:13 +11:00
rljonesau
59d24d96b9 Simplified timer NV store load/save 2019-01-12 12:57:32 +11:00
rljonesau
713724eaab restored comment on line in BTCWifi.cpp 2019-01-12 12:21:29 +11:00
rljonesau
74daefe644 Added validatedLoad for checking and correcting values read by Preferences at time of read. 2019-01-12 12:19:55 +11:00
rljonesau
28cd89ad5e Changed NV storage to use Preferences with discreet entries - no more conflation across branches :-) 2019-01-12 10:33:45 +11:00
James
86f1c2df4c Added /wmconfig and /resetwifi uri's 2019-01-11 21:37:59 +11:00
rljonesau
e8a110a308 Fixed wm access from BTCWebServer.cpp for James 2019-01-11 19:50:27 +11:00
James
8005636f30 Added /reset and /wmconfig pages to reset wifi settings and start config portal on request 2019-01-11 19:28:22 +11:00