Serial Modem (Satcom/Sigfox)
Syrus can communicate with serial modem accessories such as Sigfox Communicator or Satcom which can transmit messages to the Sigfox network or to Iridium's™ global satellite network.
General Overview
- The way it works is that you instruct the Syrus to use it's RS232 RX & TX cables to work in
modem
mode - Connect the Sigfox or Satcom accessory to the Syrus
- Use the apx-serial tool or Syruslang to send messages to the serial interface via the respective Sigfox or Satcom destinations
Installation
Serial Wiring Pinout (found in 14-pin molex on Syrus Gateway device)
Satcom Wires | Signal | Description | Syrus Signal | Syrus Wires | ||
---|---|---|---|---|---|---|
RX | Satcom RX, connect to the Syrus orange data transmitter cable. | RS232_TX | ||||
TX | Satcom TX, connect to the Syrus blue data receiver cable. | RS232_RX | ||||
PWR | Power for the Satcom accessory, use the same power source as the Syrus +12-24V DC. | |||||
GND | Satcom's ground, connect to the Syrus 4 electrical ground cable. | GND |
Configuration
Once you have the Sigfox or Satcom accessory connected to the Syrus you can configure the serial port to modem
mode with the apx-serial tool.
$ sudo apx-serial mode modem
To test the communication with the accessory, you can use the state command.
$ sudo apx-serial modem state
{
"state": "connected",
"type": "satcom",
"id": "300234063907660",
"signal": 5,
"version": 15,
"buff_size": 50,
"buff_count": 1
}
Redis Interaction
To notify the connection status, the serial application publishes
serial/notification/modem/state connected
when connected, or
serial/notification/modem/state disconnected
when disconnected.
To notify an incoming message, the serial application publishes
serial/notification/modem/message "Incoming message"
Tips
Consider the amount of messages sent via satellite on your application, start with the smallest buffer size: 10, so you don't store a buffer of 100 messages before you connect the serial modem accessory.
$ sudo apx-serial modem buffer_size 10
The signal
of the satcom indicates the strength of the signal where:
- 0: No service available.
- 1-5: Each number represents about 2 db improvement in link margin over the previous value. 1 indicates about 2 db of link margin.
Consider that the satcom requires direct visibility to the sky with no obstruction to obtain the best results.
To view satcom communication logs and ensure there's messages being sent check the following /var/log/messages
Error codes
The apx-serial modem state
command might return a msg_st
field, which indicates a Satcom Message Error, the possible values are:
msg_st | Description |
---|---|
1 | Initial delimiter error. |
2 | Final delimiter error. |
3 | Checksum error. |
4 | Length error. |
5 | Busy. |
6 | No network coverage. |
7 | Error sending message. |
8 | Indicates MO session failure |
10 | GSS reported that the call did not complete in the allowed time. |
11 | MO message queue at the GSS is full. |
12 | MO message has too many segments. |
13 | GSS reported that the session did not complete. |
14 | Invalid segment size. |
15 | Access is denied. |
16 | ISU has been locked and may not make SBD calls (see +CULK command). |
17 | Gateway not responding (local session timeout). |
18 | Connection lost (RF drop). |
19 | Link failure (A protocol error caused termination of the call). |
20..31 | Reserved, but indicate failure if used. |
32 | No network service, unable to initiate call. |
33 | Antenna fault, unable to initiate call. |
34 | Radio is disabled, unable to initiate call (see *Rn command). |
35 | ISU is busy, unable to initiate call. |
36 | Try later, must wait 3 minutes since last registration. |
37 | SBD service is temporarily disabled. |
38 | Try later, traffic management period (see +SBDLOE command) |
39..63 | Reserved, but indicate failure if used. |
64 | Band violation (attempt to transmit outside permitted frequency band). |
65 | PLL lock failure; hardware error during attempted transmit. |
Updated about 1 year ago