Commit Graph

110 Commits

Author SHA1 Message Date
rjwats
c16f7693fd
Migrate to LittleFS under ESP8266
Make ESP8266 use LittleFS instead of deprecated SPIFFS
Make framework use the correct filesystem automatically and handle the call the FS.begin()
Change default MQTT keepalive to 60 seconds
Fix lodash security issue
2020-07-19 19:32:08 +01:00
rjwats
6ef5df28c1
Add access point IP address configuration in UI
* Allow ap ip address to be configured via ui
* Add missing WiFi status to UI enum
* Update package-lock.json
2020-07-07 22:22:38 +01:00
rjwats
f2b53a6d53
Consistency fixes (#167)
Minor consistency fixes from @proddy's comments
2020-07-07 00:13:38 +01:00
rjwats
1f07dcdab2
OTA Upload Feature (#162)
* Improve restart behaviour under esp8266
* Backend to support firmware update over HTTP
* UI for uploading new firmware
* Documentation changes
2020-06-29 00:25:58 +01:00
rjwats
e86607bff3
PSRAM Status (#159)
Show PSRAM on status screen
Use correct calculation for heap fragmentation
Fix display of application error component
2020-06-21 23:02:07 +01:00
rjwats
55511e0611
Allow time & date to be configured manually when NTP is inactive (#153)
* Allow time to be configured manually when NTP is not active
* Standarize on primary button on the outside of dialog boxes
2020-06-16 22:24:15 +01:00
rjwats
449d3c91ce
Allow features to be disabled at build time (#143)
* Add framework for built-time feature selection
* Allow MQTT, NTP, OTA features to be disabled at build time
* Allow Project screens to be disabled at build time
* Allow security features to be disabled at build time
* Switch to std::function for StatefulService function aliases for greater flexibility
* Bump various UI lib versions
* Update docs
2020-06-09 21:57:44 +01:00
Rick Watson
5269b47edc Reorder props to avoid TS error 2020-06-08 17:48:00 +01:00
rjwats
555b3efd8d
Access point fixes (#137)
* add lingering mode to access point fix bug which prevents active access point from being re-configured
2020-05-30 09:47:24 +01:00
Rick Watson
0004cf988b prefer enums over named consts in UI for better static analysis 2020-05-29 20:58:09 +01:00
rjwats
d9ae0f5cf9
Header logo (#133)
* Display project icon in the top of application menu bar

Co-authored-by: kasedy <kasedy@gmail.com>
2020-05-26 20:46:20 +01:00
Rick Watson
b4f3fbe823 Remove SPIFFS reference from ESP8266 react, use FS pointer instead 2020-05-25 11:30:13 +01:00
Rick Watson
98f49fd024 use "fs" instead of "spiffs" as spiffs is implementation specific 2020-05-25 11:04:13 +01:00
Rick Watson
aa04cfd80c fix imports
use FSInfo struct for esp8266
2020-05-25 11:00:42 +01:00
Raomin
6510a72789 apply PR comments 2020-05-25 01:41:45 +02:00
Raomin
49910e1272 add spiffs size + formatting 2020-05-24 23:35:32 +02:00
rjwats
db0d98d425
Extend Status (#121)
* Added Sdk Version and ~heap fragmentation to system page
* Add flash chip speed to status page

Co-authored-by: kasedy <kasedy@gmail.com>
2020-05-21 22:52:07 +01:00
rjwats
a59f32c420
Factory reset feature (#114)
Implemented factory-reset feature
Extract factory settings into separate ini file
Hide reset/factory reset from guest user

Co-authored-by: kasedy <kasedy@gmail.com>
2020-05-20 00:32:49 +01:00
rjwats
7d3bbf4240
UI Usability Fixes
* Fallback to sessionStorage if localStorage is absent
* Disable auto-correct and auto-capitalize on username field (SignIn)
* Fix SignIn component name
* Improve support for low screen widths

Co-authored-by: kasedy <kasedy@gmail.com>
2020-05-16 12:39:18 +01:00
rjwats
a1f4e57a21
Rework backend add MQTT and WebSocket support
* Update back end to add MQTT and WebSocket support
* Update demo project to demonstrate MQTT and WebSockets
* Update documentation to describe newly added and modified functionallity
* Introduce separate MQTT pub/sub, HTTP get/post and WebSocket rx/tx classes
* Significant reanaming - more accurate class names
* Use PROGMEM_WWW as default
* Update README documenting PROGMEM_WWW as default
* Update README with API changes
2020-05-14 23:23:45 +01:00
Rick Watson
c47ea49a5d ui fixes
remove unused fuction
2020-03-28 21:30:10 +00:00
rjwats
fb7053610f
fix issue with number inputs not serializing correctly due to setting values as strings instead of numbers (#94)
consolidate number, string and checkbox value change functions

(cherry picked from commit 22c1590885db0534afabff74be7504ca9a0998b5)
2020-02-27 00:05:38 +00:00
rjwats
a042633d8f
Minor UI Updates (#93)
* simplify props set to constant true

* reduce icon size in users table for better small screen compatibility

* use lib_compat_mode property over library exclusion

* get travis to build esp32 environment in addition to esp8266 during CI build
2020-02-19 00:04:57 +00:00
rjwats
260e9a18d0
Re-engineer UI in TypeScript (#89)
* Re-engineer UI in TypeScript
* Switch to named imports where possible
* Restructure file system layout
* Update depencencies
* Update README.md
* Change explicit colors for better support for dark theme
2020-02-09 10:21:13 +00:00
rjwats
ced5b74ba1
NTP Timezone & Enable/Disable Setting (#80)
* quick and dirty WIP to investigate timezones, currently only building under esp8266 platform
much of the status stuff has been stripped for now, to test the concepts

* support set of common features across ESP32/ESP8266 WRT timezone and sntp
return dates as ISO format strings

* remove time library, and timelib fix which is no longer required

* fix the icons

* remove temporary changes to demo project
2020-01-20 11:14:46 +00:00
rjwats
bcfeef8004
Interface data storage in PROGMEM (#71)
Adds a webpack plugin to package interface as PROGMEM into a header file in the framework.
Adds a build flag to optionally enable serving from PROGMEM or SPIFFS as required
Adds documentation changes to describe changes
2019-12-29 17:54:12 +00:00
Rick Watson
7bf713dfea rename "reset" to "restart" 2019-12-01 08:28:40 +00:00
Rick Watson
a9e6bd4669 fix typo 2019-11-30 16:51:31 +00:00
Rick Watson
a840aba878 Use ESP.reset() rather than ESP.restart() - due to exceptions encountered on esp8266 2019-11-30 12:54:57 +00:00
Rick Watson
78b9ae101e Add restart service for esp8266 and esp32
Add restart feature to status screen
Upgrade material-ui
Add icons to buttons
2019-11-30 12:34:52 +00:00
Rick Watson
b7b068813d minor style changes
upgrade react dependencies - except react-scripts which currently has an issue with eslint
https://github.com/facebook/create-react-app/issues/7753
2019-09-30 22:00:16 +01:00
Rick Watson
8a37302ced remove redundant class reference 2019-08-09 22:54:15 +01:00
Rick Watson
632d6907e5 reorganise information page slightly 2019-08-09 22:33:09 +01:00
Rick Watson
675a85e524 Add comment to development environment file 2019-08-09 22:23:42 +01:00
Rick Watson
cf48c79b4d fix bug introduced in value change code 2019-08-09 21:26:31 +01:00
Rick Watson
5069cd90a1 Add ENDPOINT_ROOT to Env constants, replace usages. 2019-08-09 20:33:15 +01:00
Rick Watson
2a8599d855 remove unused styles missed in main refactor 2019-08-09 18:59:45 +01:00
Rick Watson
ef8061cbc3 use render callbacks for loading notification 2019-08-09 18:55:11 +01:00
Rick Watson
ff85c2e661 reduce use of ternaries in form code 2019-08-09 18:21:28 +01:00
Rick Watson
df06e58fb0 add demo project implementation 2019-08-09 15:53:39 +01:00
Rick Watson
aeea0d9aa6 Merge branch 'master' into ft_demo_project 2019-08-07 21:18:08 +01:00
Rick Watson
d1f3720cd9 Use success variant on sign-out. 2019-08-07 21:14:21 +01:00
rjwats
a86b565c5a remove www directory, as it is a build artefact
replace custom made notification component with notistack
2019-08-04 18:42:58 +01:00
Rick Watson
a0d6524180 WIP - demo project 2019-07-06 23:56:30 +01:00
rjwats
49c282b286 upgrade packages 2019-06-07 21:53:02 +01:00
Rick Watson
e7248c4774 leave WiFi disconnected by default
implement controlled retry - fixed at 60 seconds
2019-06-04 21:13:55 +01:00
Rick Watson
0da88878d5 fix issue with authentication redirect loop 2019-06-03 21:32:54 +01:00
Rick Watson
9c680e8826 Resolve some typos
Use nullptr over NULL
Fix confusing regexp
Fix issue with non-compliant JWT encoding
2019-06-02 23:15:56 +01:00
rjwats
5d9ccd3095 don't use deprecated theme spacing 2019-06-02 19:01:06 +01:00
Rick Watson
d7d33a50c8 disable buttons which are not accessable when non-admin user is authenticated 2019-05-31 21:33:12 +01:00