Browse Source

add comments to platformio.ini

more work on readme
master
Rick Watson 5 years ago
parent
commit
1b701dc198
  1. 27
      README.md
  2. 8
      platformio.ini

27
README.md

@ -212,17 +212,13 @@ There is also a manifest file which contains the app name to use when adding the
}
```
*******
## Software Overview
### Back End
## Back End Overview
The back end is a set of REST endpoints hosted by a [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) instance. The source is split up by feature, for example [WiFiScanner.h](src/WiFiScanner.h) implements the end points for scanning for available networks.
There is an abstract class [SettingsService.h](src/SettingsService.h) that provides an easy means of adding configurable services/features to the device. It takes care of writing the settings as JSON to SPIFFS. All you need to do is extend the class with your required configuration and implement the functions which serialize the settings to/from JSON. JSON serialization utilizes the excellent [ArduinoJson](https://github.com/bblanchon/ArduinoJson) library. Here is a example of a service with username and password settings:
There is an abstract class [SettingsService.h](src/SettingsService.h) that provides an easy means of adding configurable services/features to the device. It takes care of writing the settings as JSON to SPIFFS. All you need to do is extend the class with your required configuration and implement the functions which serialize the settings to/from JSON. JSON serialization utilizes the excellent [ArduinoJson](https://github.com/bblanchon/ArduinoJson) library.
Here is a example of a service with username and password settings:
```cpp
#include <SettingsService.h>
@ -286,21 +282,6 @@ void reconfigureTheService() {
```
### Front End
The front end is a bit of a work in progress (as are my react skills), but it has been designed to be a "mobile first" interface and as such should feel very much like an App.
I've tried to keep the use of libraries to a minimum to reduce the artefact size (it's about 150k gzipped ATM).
## Future Improvements
- [x] Reduce boilerplate in interface
- [ ] Provide an emergency config reset feature, via a pin held low for a few seconds
- [x] Access point should provide captive portal
- [ ] Perhaps have more configuration options for Access point: IP address, Subnet, etc
- [ ] Enable configurable mDNS
- [x] Introduce authentication to secure the device
## Libraries Used
* [React](https://reactjs.org/)

8
platformio.ini

@ -7,18 +7,22 @@
;
; Please visit documentation for the other options and examples
; http://docs.platformio.org/page/projectconf.html
[env:node32s]
platform = espressif32
board = node32s
framework = arduino
monitor_speed = 115200
; Uncomment & modify the lines below in order to configure OTA updates
;upload_flags = --port=8266 --auth=esp-react
;upload_port = 192.168.0.6
monitor_speed = 115200
build_flags=
-D NO_GLOBAL_ARDUINOOTA
-D ENABLE_CORS
; Uncomment ENABLE_CORS to enable Cross-Origin Resource Sharing (required for local React development)
;-D ENABLE_CORS
-D CORS_ORIGIN=\"http://localhost:3000\"
lib_deps =
NtpClientLib@>=2.5.1,<3.0.0

Loading…
Cancel
Save