SENSBLUE ATLAS/Datasheet: Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| Line 4,475: | Line 4,475: | ||
|Measured power | |Measured power | ||
|} | |} | ||
==== <big>24.13 Modem Actor</big> ==== | |||
===== 24.13.1 App Interfacing ===== | |||
User App interface and functionalities exposed to the open part of the MQTT broker. Simplified interface to configure and obtainmodem (LTE) data. Connecting to the broker for this area requires no credentials. | |||
===== 24.13.2 Mobile (LTE Modem) ===== | |||
The Mobile actor manages the LTE modem using ModemManager ('''mmcli'''). It allows monitoring modem status, configuring connectivity (APN, operator,network mode), and performing diagnostics. | |||
===== 24.13.3 Scan Operators ===== | |||
Scans available network operators (requires SIM and modem enabled). | |||
'''Req-Topic''': modem/runtime/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "SCAN_OPERATORS" | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/runtime/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"operators": [ | |||
{ | |||
"id": "26801", | |||
"name": "vodafone P", | |||
"status": "available" | |||
}, | |||
{ | |||
"id": "26806", | |||
"name": "MEO", | |||
"status": "available" | |||
} | |||
] | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
===== 24.13.4 Set Operator ===== | |||
The supported modes are: | |||
* auto → modem selects de operator automatically ('''default'''). | |||
* manual→ user forces a specific operator using '''operator_id'''. | |||
- Operators are identified using '''MCC + MNC codes''': | |||
{| class="wikitable" | |||
|'''Operator''' | |||
|'''Code''' | |||
|'''Country''' | |||
|- | |||
|Vodafone PT | |||
|26801 | |||
|Portugal | |||
|- | |||
|MEO | |||
|26806 | |||
|Portugal | |||
|- | |||
|NOS | |||
|26803 | |||
|Portugal | |||
|} | |||
These values are obtained dynamically via SCAN_OPERATORS | |||
* '''Recommendations:''' | |||
Default should always be '''auto''' | |||
Use '''manual''' only when: | |||
- You need to force roaming behavior | |||
- You want to lock to a specific network for stability/testing | |||
====== '''Auto Selection''' ====== | |||
'''Req-Topic''': modem/config/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "SET_OPERATOR", | |||
"taskParams": { | |||
"mode": "auto" | |||
} | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/config/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"success": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
====== Manual Selection ====== | |||
'''Req-Topic''': modem/config/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "SET_OPERATOR", | |||
"taskParams": { | |||
"mode": "manual", | |||
"operator_id": "26801" | |||
} | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/config/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"success": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
===== 24.13.5 Set APN Configuration ===== | |||
Supports automatic (predefined APN) or custom configuration. | |||
====== Actual Behavior ====== | |||
When '''SET_APN''' is executed, the system performs the following sequence: | |||
# '''Disconnects the current data connection''' (if connected) | |||
# Applies the new APN configuration | |||
# Initiates a new connection using the provided APN | |||
# Waits until the modem reaches '''connected state''' | |||
This means a '''full reconnection is automatically performed'''. | |||
No additional RESET or manual reconnection is required. | |||
====== Impact & Considerations ====== | |||
* Active data connection is '''interrupted''' | |||
* Ongoing communications (MQTT, HTTP, VPN, etc.) will be '''dropped''' | |||
* IP address may change after reconnection | |||
* Operation may take '''several seconds (typically 5–20s)''' | |||
* If connection fails, the modem may remain '''disconnected''' | |||
====== Known APNs ====== | |||
{| class="wikitable" | |||
|'''Operator''' | |||
|'''APN CONF''' | |||
'''NAME''' | |||
|'''APN''' | |||
|'''PROXY''' | |||
|'''PORT''' | |||
|'''MCC''' | |||
|'''MNC''' | |||
|'''AUTH''' | |||
'''TYPE''' | |||
|'''APN''' | |||
'''TYPE''' | |||
|'''CARRIER''' | |||
|'''OBS.''' | |||
|- | |||
|MEO, UZO | |||
| -- | |||
|internet | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
|- | |||
|1nce | |||
| -- | |||
|iot.1nce.net | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
| -- | |||
|- | |||
|Vodafone | |||
|Vodafone | |||
Internet | |||
|net2.vodafone.pt | |||
|iproxy.vodafone.pt | |||
|80 | |||
|268 | |||
|01 | |||
|PAP | |||
|default | |||
|unspecified | |||
|[https://ajuda.vodafone.pt/manuais/vodafone/smart-4g/explorar/configure-o-telefone-para-internet Docs] | |||
|} | |||
====== Supported Modes ====== | |||
* auto | |||
* custom | |||
{| class="wikitable" | |||
|'''Mode''' | |||
|'''Description''' | |||
|- | |||
|auto | |||
|Uses modem default / SIM-provided APN | |||
|- | |||
|custom | |||
|Uses user-defined APN credentials | |||
|} | |||
'''- Auto APN (e.g. 1NCE)''' | |||
Uses the default APN embedded in the modem or provided by the SIM. | |||
'''Req-Topic''': modem/config/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "SET_APN", | |||
"taskParams": { | |||
"mode": "auto" | |||
} | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/config/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"apn": "internet", | |||
"success": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight>'''- Custom APN''' | |||
Allows full control over APN configuration. | |||
'''Req-Topic''': modem/config/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "SET_APN", | |||
"taskParams": { | |||
"mode": "custom", | |||
"apn": "internet", | |||
"user": "user", | |||
"password": "pass" | |||
} | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/config/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"apn": "internet", | |||
"success": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
===== 24.13.6 Get Modem Status ===== | |||
'''Req-Topic''': modem/runtime/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "GET_STATUS" | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/runtime/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"modem": { | |||
"present": true, | |||
"enabled": true, | |||
"state": "registered", | |||
"signal": 34, | |||
"access_tech": "lte", | |||
"operator": "vodafone P", | |||
"sim": "ready" | |||
} | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
===== 24.13.7 Enable / Disable Modem ===== | |||
'''Req-Topic''': modem/runtime/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "SET_MODEM_STATE", | |||
"taskParams": { | |||
"enabled": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/runtime/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"enabled": true, | |||
"success": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
===== 24.13.8 Reset Modem ===== | |||
Performs a full modem reset and recovery sequence. | |||
'''Req-Topic''': modem/runtime/in<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"action": "RESET" | |||
} | |||
} | |||
</syntaxhighlight>'''Reply-Topic''': modem/runtime/out<syntaxhighlight lang="json"> | |||
{ | |||
"id": "<TIMESTAMP>", | |||
"origin": "APP", | |||
"task": { | |||
"taskResult": { | |||
"success": true | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
====== Actual Behavior ====== | |||
When RESET is executed, the system performs a '''complete modem restart flow''': | |||
=== 25. Included Software Stack === | === 25. Included Software Stack === | ||