python/iot3/mobility: ETSI time fixes, expose more GNSS details, extend support for CAM - #586
Open
ymorin-orange wants to merge 23 commits into
Open
python/iot3/mobility: ETSI time fixes, expose more GNSS details, extend support for CAM#586ymorin-orange wants to merge 23 commits into
ymorin-orange wants to merge 23 commits into
Conversation
ymorin-orange
force-pushed
the
nyma/iot3-gpsd-devices
branch
7 times, most recently
from
August 20, 2026 10:35
ca9761b to
598b9cc
Compare
When we terminate the GNSS provider, we forcibly close the underlying filedescriptors, which causes the socket to raise an OSError exception (rightfully so). Cat that exception so that we canterminate the loop cleanly. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Every so often, test.mosquitto.org is unreachable, or the broker is not working, or publishing or subscribing does not work. For most MQTT tests, we can use the local mosquitto broker (which the python PR template documents), rather than test.mosquitto.org. Only for tests that require TLS or websockets, do we need test.mosquitto.org. If that is not available, document skipping the test. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Test for unknown altitude already handled in the first CAM test. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
When the altitude is unknown (None), it does not make sense to have a good altitude confidence... Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Closes Orange-OpenSource#587 Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Closes: Orange-OpenSource#585 Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Closes Orange-OpenSource#582 Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Closes Orange-OpenSource#583 Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
The StationType name was inherited from the legacy schemas, and ETSI has renamed it TrafficParticipantType instead. We already used that in the generic ETSI message, but derived objects were still using the legacy type. Switch those over now. We keep the legacy name for extenal users that may still depend on the old type, and since they are equivalent, we do not want them to switch (yet). Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
It is used as the defualt MQTT client-ID, just before we check it is set... So better check it right after parsing (and transforming) the configuration. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
No need to iterate on the object, which iterates on all sections, and exclude the default one; just iterate on sections(), which already excludes it. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
For conciseness and legacy, we call it station-type, which is what it was named previously, and that the SDK still expects. Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Member
Author
|
@mathieu1fb Just because you were so curious this morning, here's the PR! ;-) |
ymorin-orange
force-pushed
the
nyma/iot3-gpsd-devices
branch
from
August 20, 2026 11:05
598b9cc to
d47dcca
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Close #582
Close #583
Close #585
Close #587
Test
How to test
Note: in the following, lines starting with
$are to be executed on yourmachine, as a non-root user;
lines starting with
(docker)$are to be executed in the Docker container;lines starting with
(docker)🐍 $are to be executed in the Docker container,in the python venv.
with no credentials and no ACL; if not, run your own:
the OpenTelemetry API, on localhost. If you don't have one,
you may use an existing one, like:
(or that of your own collector if you have one):
(no need for an actual GNSS device):
and the necessary packages:
on
localhost:1883(see 1.2., above), inside thecontainer listening on the UNIX socket
/tmp/mqtt.socket.and packages' dependencies:
and do not rely on pip to do so, because our Python packages depend
one on the others by git hash, as they are not published on PyPi yet,
so installing one of our packages may overwrite another.
test.mosquitto.orgis unreachable, skip the test./python/iot3/tests/test-iot3-core-mqtt.Expected results
station_idis the third part of thesource_uuid: