Commit Graph

276 Commits

Author SHA1 Message Date
rjwats
4917b38747
Upgrade UI libs, fix linting issues (#218)
* remove redundant component

* upgrade various libraries
sort linting issues issues regarding redeclaring types WRT contexts
2021-01-16 18:08:41 +00:00
rjwats
3ecdc27550
Add additional settings to AP configuration (#215)
* add wifi settings option to set AP visible/non visible

* add add channel and max client settings

Co-authored-by: lukas <lukas.heiligenbrunner@gmail.com>
2021-01-03 18:51:11 +00:00
rjwats
e771ab134a
Settings placeholder substitution (#164)
* Use text formatting for default factory values to produce dynamic names.
Header files contains duplicates of factory values defined in factory_settings.ini Removed them to simplify the code.

* Use text formatting for default factory values to produce dynamic names.
Header files contains duplicates of factory values defined in factory_settings.ini Removed them to simplify the code.

* Configured the WiFi host name to contain the device id by default

* Removed possibility to use placeholders for FACTORY_WIFI_SSID factory setting.

* Update README.md

Updated documentation

* Use text formatting for default factory values to produce dynamic names.
Header files contains duplicates of factory values defined in factory_settings.ini Removed them to simplify the code.

* Configured the WiFi host name to contain the device id by default

* Removed possibility to use placeholders for FACTORY_WIFI_SSID factory setting.

* Added a space to the end of the file to comply project code style

* fix typos
clang formatting
use 2 spaces in ini files
use ${platform}-${chip_id} for hostname
put chip id in brackets in AP SSID

* restore (and update) factory setting ifndefs

- this is so src can be built without an exaustive set build-time defines
- standardize ordering of defines: factory settings, paths, config

* format and modify comment

* escape spaces in pio defines
experiment with removing $'s from our format strings (they are being substituted with empty values by pio)

* fix formatting in readme
rename FactoryValue to SettingValue, put in own header
give example of direct usage of FactorySetting::format in README.md

* auto format

* use hash to delimit placeholders

* fix factory_settings.ini

* remove flash string helpers

* format ini file

* use MAC address instead of chip id for properly unique identifier

* use lower case hex encoding for unique id
use chip id and unique id for more secure secret

* fix comment

* Use random values for JWT secret
Arduino uses the ESP random number generator for "true random" numbers on both esp32 and esp8266
This makes a better JWT secret and may be useful for other factory defaults too
In addition a modification has been made to force the FSPersistance to save the file if applying defaults

* Don't use spaces in default AP SSID

* restore helpful comment in factory_settings.ini
fix default defines

Co-authored-by: kasedy <kasedy@gmail.com>
2021-01-03 17:00:36 +00:00
rjwats
6e22893051
Fix user form
* fix issue with checkbox on user form
* use consistent style for const char pointers
* use unique hostname by default
2020-11-21 23:40:31 +00:00
rjwats
7aed5c0eb2
Upgrade material ui, react and other ui dependencies (#203) 2020-11-10 22:30:19 +00:00
rjwats
d9a3aac37f
Generate placeholder POSIX TZ aliases to make timezones compatible (#202) 2020-11-10 20:15:54 +00:00
rjwats
2ed5d26b4e
Fix warnings relating to unused values (#196) 2020-09-01 11:57:32 +01:00
rjwats
3d50cab9b7
Add missing security manager include to WebSocketTxRx.h (#194)
Previously the demo code was relying on the transitive include via HttpEndpoint.h
This change allows WebSocketTxRx.h to be used when no HttpEndpoint is in use
2020-08-22 13:30:24 +01:00
rjwats
42050b8dc3
Interface Updates
Remove reset button from forms, rename form loader error "Reset" button to be "Retry"
Upgrade typescript and react-scripts
2020-08-21 10:21:25 +01:00
rjwats
2711cb2f1f
Fix issue when compiling with PROGMEM_WWW flag omitted (#186) 2020-07-28 08:29:58 +01:00
rjwats
25f04c3d7f
Retain configured hostname (#173)
Retain configured hostname when selecting new network from network scanner
2020-07-19 19:57:59 +01:00
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
f045e4d9e7
Improve interface docs (#157)
Improve interface documentation
2020-06-19 20:25:13 +01:00
rjwats
0bea2fde92
Add admin security predicate to time endpoint (#154) 2020-06-17 09:20:33 +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
003fd8af28
Fix broken path in README (#150)
* Fix broken path in README
2020-06-12 18:47:20 +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
rjwats
88748ac30d
Merge pull request #147 from rjwats/ts-fixes
Reorder props to avoid TS error
2020-06-08 18:16:55 +01:00
Rick Watson
5269b47edc Reorder props to avoid TS error 2020-06-08 17:48:00 +01:00
rjwats
c1fdb9b485
Resolve issue causing demo project to crash on esp8266 (#142)
Exception 3, Exception 9 and Exception 28 are thrown sporadically if printing to serial during WebSocket RX
Believed to be due to serial buffer causing RX to block, investigating as part of #123
2020-05-31 19:40:29 +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
rjwats
ddbb84454f
Merge pull request #136 from rjwats/ui-use-enums
prefer enums over named consts in UI for better static analysis
2020-05-29 21:05:29 +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
0d39c5ca00
Apply updates alternative (#135)
* Rename "serialize" and "deserialize" functions to "read" and "update" to reflect API in StatefulService
* Move new definitions to StatefulService.h so it is obvious it is not general purpose
* Update README
2020-05-29 20:18:43 +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
rjwats
1e05546ecb
Merge pull request #128 from rjwats/status-improvements2
Status improvements - add file system
2020-05-25 16:29:09 +01:00
Rick Watson
f73c957477 add TODO 2020-05-25 11:35:03 +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
rjwats
f2dcc4e1e9
Merge pull request #127 from raomin/e82/master
SPIFFS size info in System view
2020-05-25 10:28:55 +01:00
Raomin
6510a72789 apply PR comments 2020-05-25 01:41:45 +02:00
Raomin
681b9f67cf
Merge branch 'master' into e82/master 2020-05-24 23:47:05 +02:00
raomin
ab1c8e9ac1 Merged 2020-05-24 23:44:04 +02:00
Raomin
49910e1272 add spiffs size + formatting 2020-05-24 23:35:32 +02:00
Raomin
ce8929fd39 add spiffs size + formatting 2020-05-23 23:12:11 +02:00
rjwats
d68afe5e59
Update readme (#126)
* Be more explicit about optional FS upoad step in readme
2020-05-23 10:08:59 +01:00
rjwats
bcb1098402
Make StatefulService buffer size configurable (#118)
Introduce DEFAULT_BUFFER_SIZE for StatefulService related classes
Add configurable buffer sizes for StatefulService related classes
Remove redundant function from HttpEndpoint
2020-05-22 19:26:12 +01:00
rjwats
4fa491e309
adopt explicit initialization - with the exception of trivial classes (#122) 2020-05-21 23:41:29 +01: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
kasedy
13f97b630f
Fixed currentUpdatedHandlerId variable appearing multiple times in several build units. (#120)
* Fixed currentUpdatedHandlerId variable appearing multiple times in several build units
2020-05-21 20:55:22 +01:00
rjwats
0e2124062f
Use references & flash strings where approperate (#110)
* pass originId as const reference
* store strings for serial logging in flash
* Use string references where approperate.
2020-05-21 08:42:21 +01:00
kasedy
4e6823ceec
Fixed crash due to uninitialized variable (#116)
* Fixed crash due to uninitialized variable "Fatal exception 9(LoadStoreAlignmentCause)"
2020-05-20 18:51:04 +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
kasedy
51dabb705f
Fix MqttPubSub Constructor
* Fix MqttPubSub constructor
* Add MQTT client accessor to MqttConnector
2020-05-17 22:02:00 +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