Closed PaulZC closed 4 months ago
I think I've answered my question about whether we need to upgrade to v3.0.0...
pointperfectUpdateKeys uses WiFiClientSecure
to manage the MQTT certificates etc.. For Ethernet, if we upgrade to v3.0.0 we can continue to use WiFiClientSecure
- the new arduino-esp32 Ethernet (ETH.h) inherits all of the WiFi functionality, including ClientSecure. If we don't upgrade, we will need to bolt a secure MQTT layer on top of Arduino Ethernet and we'll end up in a big old mess.
For Cellular, the LARA-R6 looks after the secure connection. We can enhance the network layer so it: uses WiFiClientSecure
for both WiFi and Ethernet; adds a new layer for the LARA which calls setSecurityManager
, configSecurityProfileString
, setMQTTserver
, setMQTTsecure
, etc..
Additionally, the KEYS states are hardwired to WiFi. We need to change this so they use the network layer, making it possible to update the keys over Ethernet and Cellular too...
Since we've migrated to v3, I thought an updated list would be good.
Last update: June 26th
Feature | Required | Done | Tested |
---|---|---|---|
DHCP | ✔ | ✔ | ✔ |
Fixed IP | ✔ | ||
Configure-Via-Ethernet | ✔ | ✔ | ✔ |
NTP Server | ✔ | ||
PointPerfect Get Keys | ✔ | ✔ | ✔ |
PointPerfect Corrections via MQTT | ✔ | ✔ | ✔ |
NTRIP Client | ✔ | ✔ | ✔ |
NTRIP Server | ✔ | ✔ | ✔ |
TCP Client | ✔ | ||
TCP Server | ✔ | ||
UDP Server | ✔ |
✔❌
NTP Server - done and tested (with #404) UDP Server - done and tested (with #405)
Last update: July 5th
Feature | Required | Done | Tested |
---|---|---|---|
DHCP | ✔ | ✔ | ✔ |
Fixed IP | ✔ | ✔ | ✔ |
Configure-Via-Ethernet | ✔ | ✔ | ✔ |
NTP Server | ✔ | ✔ | ✔ |
PointPerfect Get Keys | ✔ | ✔ | ✔ |
PointPerfect Corrections via MQTT | ✔ | ✔ | ✔ |
NTRIP Client | ✔ | ✔ | ✔ |
NTRIP Server | ✔ | ✔ | ✔ |
TCP Client | ✔ | ||
TCP Server | ✔ | ||
UDP Server | ✔ | ✔ | ✔ |
✔❌
TCP Server and Client - done and tested (with #408)
Firmware update via Ethernet - done and tested (with #410)
TO DO: retest EVK on WiFi - just to make sure we haven't broken anything! (See below)
Last update: July 6th
Feature | Required | Done | Tested |
---|---|---|---|
DHCP | ✔ | ✔ | ✔ |
Fixed IP | ✔ | ✔ | ✔ |
Configure-Via-Ethernet | ✔ | ✔ | ✔ |
NTP Server | ✔ | ✔ | ✔ |
PointPerfect Get Keys | ✔ | ✔ | ✔ |
PointPerfect Corrections via MQTT | ✔ | ✔ | ✔ |
NTRIP Client | ✔ | ✔ | ✔ |
NTRIP Server | ✔ | ✔ | ✔ |
TCP Client | ✔ | ✔ | ✔ |
TCP Server | ✔ | ✔ | ✔ |
UDP Server | ✔ | ✔ | ✔ |
Firmware update from menu | ✔ | ✔ | ✔ |
Firmware update from Config-Via-Eth | ✔ | ✔ | ✔ |
✔❌
Testing the Combined branch on EVK:
Disconnect Ethernet Factory reset - to ensure Ethernet/WiFi Failover is enabled and PP cert and private key are deleted Provide credentials for one WiFi network Verify the following:
Firmware update from menu over WiFi works with #411 Firmware update from web config (AP and STN/WiFi) over WiFi works with #412
Last update: July 8th
Feature | Required | Test Result |
---|---|---|
Configure-Via-WiFi AP | ✔ | ✔ |
Configure-Via-WiFi STN | ✔ | ✔ |
PointPerfect Get Keys | ✔ | ✔ |
PointPerfect Corrections via MQTT | ✔ | ✔ |
NTRIP Client | ✔ | ✔ |
NTRIP Server | ✔ | ✔ |
TCP Client | ✔ | ✔ |
TCP Server | ✔ | ✔ |
UDP Server | ✔ | ✔ |
Firmware update from menu | ✔ | ✔ |
Firmware update from Config-Via-WiFi (STN / WiFi mode) | ✔ | ✔ |
Firmware update from Config-Via-WiFi (AP mode) | ✔ | ✔ |
✔❌
This issue is to capture the minimum requirements for Ethernet on the EVK, and provide a "Done" & "Tested" checklist.
Background:
At the time of writing, EVK W5500 Ethernet functionality is provided by the standard Arduino Ethernet Library 2.0.2. Configure-Via-Ethernet uses the SparkFun_WebServer_ESP32_W5500; the hardware needs to be restarted in a dedicated Configure-Via-Ethernet mode as the WebServer does not play nicely with Arduino SPI or Interrupts. Meanwhile, Espressif have been busy and have added dedicated Arduino support for the W5500 on SPI - but only in arduino-esp32 >= v3.0.0. We need to decide if we should upgrade the core to v3.0.0 so we can take advantage of the much-improved W5500 support (interrupt support; larger packets; ability to access microSD over SPI while configuring over Ethernet; seamless web serving, making the SparkFun_WebServer_ESP32_W5500 obsolete and removing the need to restart into the dedicated Configure-Via-Ethernet mode). This checklist will inform that decision.
Checklist:
Last update: May 16th 17:50 BST
✔❌