Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.35 release candidate: GroPoint Modbus; Xbee & Digi WiFi fixes; Prep for batch transmission #463

Merged
merged 103 commits into from
May 18, 2024

Conversation

aufdenkampe
Copy link
Member

@aufdenkampe aufdenkampe commented Feb 22, 2024

This PR from develop to master prepares us for the next release, which includes these new features and improvements:

This PR is required for our upcoming work on:

This PR could also optimally include:

@SRGDamia1 I think we want to begin reviewing and preparing this work for our next release. Let's also explore if it makes sense to release the completed work sooner so that we can have a clean develop branch for upcoming work (i.e. #453 and #457).

aufdenkampe and others added 30 commits March 27, 2023 10:43
For Modbus GPLP-8 sensor only, for now.
...replacing any vestiges from `YosemitechY4000.h`
from GroPointProfileGPLP8
Correctly initialize response code variable terminator.
Saves 750 bytes of flash as the buffer can be placed in .bss to be
zero-initialized instead of .data.
Saves ~110 bytes of flash and substantial stack
Saves ~200 bytes of RAM and ~360 bytes of flash.

The equations reproduce the tables previously found in the source code
exactly. The reason for the values in the original tables is unknown.
The test for "15 seconds before the next logging interval" has been wrong
for years, possibly since this code was written, with no apparent
consequence. The behavior is additionally confusing to users deploying the
devices and causes problems with logging as the modem won't get turned
off for a long time.

Remove it completely to solve the problems.
Use cleaner interface and common functions that avoid repeated snprintf
and strlen usage to save ~2.5KB of flash and dozens of lines of code.

Removes extra \r\n from HTTP requests as a side effect, which were against
spec and caused spurious 400 Bad Request status messages from servers.
sendEveryX will be used in the future for data buffering functionality. Increase
its width to an int to allow larger buffers when desired.

Delete sendOffset completely as there is little reason for that particular
functionality. The offset will be in effect set randomly using the time the
datalogger initially powers on.
The C++ standard specifies that all objects in the same translation unit
(i.e. source file) are constructed in order of declaration. Since this is
the most common case when using Modular Sensors, the described case cannot
occur.
Everything is working well!
Replace UNKNOWN w/ GPLPX
for `gropointModel`, because it conflicted with YosemiTechModbus `UNKNOWN`
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
return _modemName + F(" Sn ") + _modemSerialNumber + F(" HwVer ") +
_modemHwVersion + F(" FwVer ") + _modemFwVersion;
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These need to be populated for all modems or moved just to the XBee where they are populated.

* version, and serial number fo the modem..
*/
String getModemDevId(void);

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implement for all, or move to XBee

* Returned as a portion of the #getModemDevId().
*/
String _modemSerialNumber;

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implement or move.

gsmModem.exitCommand();

++updateModemMetadata_cnt;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why always bump this and restart after 4?

Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Copy link

Please add your changes to the change log!

Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
Signed-off-by: Sara Damiano <sdamiano@stroudcenter.org>
@SRGDamia1 SRGDamia1 merged commit ca7653f into master May 18, 2024
101 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants