Version |
Date |
Changes |
1.0.1 |
6/9/2018 |
First Production Release. |
1.3.0 |
9/5/2018 |
- Redesign/Bug-fix of USB Interface.
- Fixed issues with provisioning while USB is connected.
- Overhauled the socket/server system, making the web interface significantly
more stable.
- Fixed bug where failure on first attempt at server connection resulted in no
delay before next attempt.
- Added milti-channel capability and added individual channel customization.
- Added support for IP address entry in server address.
- Added Api Key to user inputs for custom server.
- Fixed bug where being in edge trigger mode made EepromValuesInit() try to
modify the RTC before the RTC had been created, causing a complete failure
in init.
- Fixed bug where ThingSpeak setup wasn't saving the channel_id.
- Fixed problem with ADC frequently reading battery voltage.
- Added factory reset when holding WiFi and Setup buttons on startup.
- Fixed Adafruit updates appending a number to the end of single channels.
- Fixed send update button to work correctly when all channels are in trigger
mode.
- Fixed problem with power consumption. Floating pin for button left over from
hardware change was causing extra power consumption. ~60uA.
- Fixed EEPROM saving of channel setup.
|
1.4.0 |
9/12/2018 |
- Fixed problem with web interface not changing between channels on 4 channel
boards.
- Fixed problem sending trigger updates to thingspeak where values would not
be logged due to duplicate timestamp with battery voltage.
- Fixed possible failure to send value of ADC on trigger channel in case of
trigger update.
- Fixed bug where server type not being saved to EEPROM when setting up
vegecloud as server.
Note: There is a workaround for units in the field: set up vegecloud, then
save, then go to the settings page and push apply. This will save all values
to EEPROM including the server type.
- Fixed bug where button interrupts were accidentally getting disabled when
initializing sensor interrupts.
- Added in testing jig code.
|
1.5.0 |
9/24/2018 |
- Fixed USB interface. Multiple problems with interactions and multiple bugs.
- Fixed bug where update could not be set more than 16 hours from now. Now
allowed to set any time up to 40 years from now.
- Added readout on home page of the time until the next update.
- Put more checks on settings page to make sure settings are within range.
|
1.6.0 |
10/10/2018 |
- Modified test sequence to correct for false negatives on voltage readings.
- Broadened the scope of acceptable battery reading voltages.
- Changed code optimization level to compensate for apparent compiler bug in
debug level code optimization.
|
1.6.1 |
12/6/2018 |
- CRITICAL UPDATE to Versions 1.5 and 1.6.
- Patched time conversions. Updates where getting set to 65000 years,
resulting in no sampling.
|
1.7.0 |
1/28/2019 |
- MAJOR UPDATE - IP address written to a file on a flash drive.
- Save file to indicate IP address of device (ipaddress.txt)
- Added support for relays, including the web interface, the scheduling, and
checking conditionals.
- Added web conditionals to the relay system.
- Added support for improved power supply
- Added USB mass storage functionality allowing saving of files to a flash
drive.
- Save file containing all data gathered while drive was connected (data.csv)
- Save log file of errors or failures (log.txt)
- Moved to new WINC firmware to stabilize web interface.
- Fixed overlapping page requests causing web interface errors.
- Changed circular buffer system to be more efficient.
- Fixed connection issues when connection is active for long periods of time
by resetting connection.
- Fixed date conversion errors causing incorrect scheduling
|
2.1.0 |
2/25/2019 |
- Added ability to specify port number on remote server.
- Fixed bug where addresses were incorrectly saved when no request was
present.
- Fixed possible bug of spurious API calls consuming extra power.
- Minor cosmetic fixes in web interface.
|
2.2.0 |
3/5/2019 |
- Fixed web interface so that it does not try to serve Bootstrap link if there
is no Internet connection available. This was causing the web interface to
go extremely slow if there was no Internet connection.
- Fixed bug where when the readings in the buffer would reach the maximum
size, once a successful update was finally sent, the buffer was not being
correctly reset and so kept sending all the old data along with each new
update.
|
2.3.0 |
2/25/2019 |
- Fixed bug that USB_ID line was being left floating on new power supply
boards
|
2.4.0 |
3/12/2019 |
- Fixed bugs in relay board code. Mostly fixed ranges and some small bugs in
the web interface.
- Added ability to poll custom server and port for relay web conditionals.
|
2.4.1 |
3/21/2019 |
- Added test jig support for Relay/New Power boards
|
2.5.0 |
3/29/2019 |
- Added settable hysteresis to user interface for relay.
- Changed format of web conditional data keys from first[5].second to
"first"[5]."second". This allows for all characters to be present in JSON
data except for double quotes, which is prohibited by the JSON spec anyway.
- Upgraded web conditional system for relay boards, adding a more robust API
system and better feedback to users.
|
3.0.0 |
1/30/2020 |
- Added page server resets to accompany connection resets to allow the page
server to come back up after a connection reset.
- Added capability to detect both rising and falling edges in trigger mode.
Now options are: Falling, Rising, Both.
- Fixed bug where port was not being printed to the form for relay web
conditionals.
- Fixed bug that was causing false failure in JSON parser when request was
separate from the rest of the incoming data.
- Added ability for user to add custom headers to custom server requests.
- Added functionality for flashing WiFi Module firmware and certificates from
a flash drive. That functionality was removed from the boot loader and moved
here.
- Added ability to send and receive configuration information with the server.
- Redesigned JSON parsing system to be significantly more robust.
- Changed user interface for UTC offset to allow setting the offset directly.
|
3.5.0 |
1/30/2020 |
- Rewrote the whole request handling system to bring it up to date. All
updates are now served with chunked encoding rather than the previous system
that had to calculate the content-length for each one.
- Tuned the web interface to look/work better overall, and to work equally
well without internet access.
- Rewrote the buffer system to better manage stored data and make it more
accessible when retrieving it.
- Rewrote much of the ADC system to allow multiple ADC reads to be queued and
for priority reads to override.
- Added our own NTP time retrieval and bypassed the built-in system.
- Put in lockouts so that updates can't happen more frequently than every 30
seconds. Multiple triggers can happen in that time frame and will be logged
and sent when the lockout expires.
- Fixed static IP system to work better and report its correct IP address to
VegeCloud and to the ipaddress.txt file on the thumb drive.
- Changed how triggers report. Now, when triggered, they will initiate a
priority ADC read on their channel to try to get the current state, then if
they are supposed to read all channels on a trigger, they que ADC reads for
the other channels. Then they connect to the server and send any data in the
buffer.
- Added Power Adapter mode which will keep the hub on at all times and make
the web interface always available. It will constantly power the sensors. It
will also continuously sample the channels watching to see if the relay
should be altered (the samples it takes for this function are not saved to
the buffer, and will not be reported to the server. Only the regularly
scheduled samples will be stored/reported).
- Changed function so that units immediately go into setup mode on power up
without having to push the setup button.
|
3.8.0 |
1/1/2021 |
- Added Auto-generated web conditionals for relay boards
- Reverted constant power to sensors so that they have to be individually
enabled.
- Changed how constant power is communicated to/from the server.
- Fixed a couple of small bugs in the web interface.
- Updated to ASF V3.49. Also transitioned to Microchip Studio for development
environment.
- Fixed bug for Relay boards where web interface wasn't hiding a piece of the
relay settings form correctly.
- Fixed a bug where the relay web conditional was being checked, even if it
was disabled, when set up as a web conditional. This was causing API
timeouts if the web conditional was empty or invalid.
- Fixed bug that was not allowing provisioning mode to be activated, so Hubs
could not be connected to a new WiFi network.
|
3.8.1 |
1/1/2021 |
- Fixed bug that was not allowing provisioning mode to be activated, so Hubs
could not be connected to a new WiFi network.
|
3.9 |
2/8/2021 |
- Changed the socket system so that it manages sockets better. It will no
longer interrupt legitimate requests in progress for anything other than a
full new request. This means transmissions no longer get interrupted by
Chrome sending duplicate requests or speculative sockets, and makes the web
interface much more reliable.
- Added start of user activity after provisioning, so that the board enters an
active state when provisioning is done, and you don't have to push the Setup
button. Not a bug, just added for convenience.
- Fixed request handler to work correctly with Adafruit. Adafruit would only
send every other channel, and wouldn't allow updates to complete, which
meant the board stayed awake, and was just waiting for the update to finish.
|
3.10 |
6/8/2021 |
- Fixed submitting API tests so it no longer fails every other time.
- Added checkbox to allow override retrieval of settings from VegeCloud
regardless of timestamps.
- Fixed several small bugs in serving web interface to make it more reliable
- Fixed location of watchdog reset call
- Fixed simple_ftoa to better handle rounding
- Brought over improved time-to-string functionality
- Changed process of flashing WINC firmware and certs so that it handles past
failures better, boots into normal operation after flashing, and no longer
flashes unless the board is started with the drive inserted.
- Fixed possible bug with re-flashing the WINC firmware
|
3.10.1 |
6/28/2021 |
- Fixed bugs that occur when wifi is spotty.
|
3.10.2 |
7/16/2021 |
- Fixed reset during provisioning.
- Fixed provisioning failing after sleep
- Fixed USB not writing after sleep
|
3.10.3 |
8/6/2021 |
- Custom Server was writing out data using incorrect API. It now writes out
VegeHub API.
|
3.10.6 |
5/26/2022 |
- Fixed bug in URL validation for custom servers.
- Fixed bug in sending custom headers.
|
3.10.7 |
11/16/2022 |
- Fixed bug where static IP could not be disabled after it had been set up.
- Changed backup time server to faster alternative.
- Dumped time server failures to log.
|
3.10.8 |
8/23/2023 |
- Fixed ftoa bug - 0.001 were interpreted as 1
|