3.6.2 Radio Settings
3.6 MSC Software Interface
3.6.2.1. General Settings | 3.6.2.2. Transmit Packet Settings | 3.6.2.3. Receive Packet Settings
Radio settings are reconfigured by section. Each setting command is an ASCII string that is comma delimited.
All setting configuration packets will have a first field of the character ‘s’ and end with a carriage return. A line feed following the carriage return will be ignored.
Example s, … CR LF Line feed would be ignored and would be treated the same: s, … CR
A delay of greater than 1 second will cause the input data buffer to be reset if the content is incomplete.
3.6.2.1. General Settings
3.6.2.1.1. USART Settings
Default asynchronous communications speed is 115200 baud.
3.6.2.1.2. TWI Settings
The only configurable TWI settings are the bus address. The address can be any value between 0x01 and 0x7F.
3.6.2.1.3. Temperature and Voltage Thresholds
MiniSatCom has a configurable temperature and voltage safety system which is used to protect against device failure. Each field has a warning and a critical threshold to prevent high power amplifier operation or all transmitting respectively. The voltage is an under voltage measurement on the supply voltage. The temperature is an over temperature measurement at the micro controller.
3.6.2.1.5. AX.25 Settings
The AX.25 default configuration specifies the beginning fields of the KISS TNC packet. Within this, the transmit port and all addresses/callsigns are declared. The default control (0x03) and protocol (0xf0) will be used.
(^) The users will need to define the dource and destination callsigns as an address. The address field is as long as the user wants. In many applications, a 6 byte callsign and 1 byte SSID is used. In all cases, bit 0 of each byte is set as 0 except for the last byte of the address field.
Callsigns are typically upper case alpha-numeric ascii characters and are only 7 bits long. Because bit 0 is to indicate the last address byte, each callsign character is shifted to the left by 1 bit.
SSID is a number ranging from 0 to 15 and typically follows the address characters. This number is shifted to the left 1 bit to allow for bit 0 to the last byte in the address field indication. The bits 5 and 6 are reserved and are left as 1. Bit 7 is the command bit and is set to 1 for the first callsign, the destination, and 0 for all additional callsigns.
Example HEX: 73 2C 61 2C 00 82 A0 A4 84 60 60 E2 9C 9E 86 82 98 98 63 0D
(Now for RealTerm Copy/Paste) 0x73 0x2C 0x61 0x2C 0x00 0x82 0xA0 0xA4 0x84 0x60 0x60 0xE2 0x9C 0x9E 0x86 0x82 0x98 0x98 0x63 0x0D
Elements 1, 2, 3: Header
Group: Settings
SubGroup: AX.25
Parameter: Transmit port desired for the change. Port 0: 0x00, Port 1: 0x10, Port 2: 0x20, Port 3: 0x30
HEX: 73 2C represents CHAR: s,
HEX: 61 2C represents CHAR: a,
HEX: 00 represents Port 0: 0x00
Element 4.1: Specify the AX.25 Destination callsign (any length)(Remember Each Byte Must << 1)
Example Address CHAR: APRB00, DEC: 130 160 164 132 96 96, HEX 82 A0 A4 84 60 60
Element 4.2: Specify the AX.25 Destination SSID Properties as one byte
Control Bit (MSB) | Reserved | Reserved | SSID 1 | SSID 2 | SSID 3 | SSID 4 | HDLC Bit (LSB)
Example Binary: 1 1 1 0 0 0 1 0, HEX: E2
Default Setup: Destination SSID 1, Control bit 1, HDLC bit 0
Element 4.3: Specify the AX.25 Source callsign (any length)(Remember Each Byte Must << 1)
Example Address CHAR: NOCALL, DEC: 156 158 134 130 152 152, HEX 9C 9E 86 82 98 98
Element 4.4: Specify the AX.25 Source SSID Properties as one byte
Control Bit (MSB) | Reserved | Reserved | SSID 1 | SSID 2 | SSID 3 | SSID 4 | HDLC Bit (LSB)
Example Binary: 0 1 1 0 0 0 1 0, HEX: 63
Default Setup: Source SSID 1, Control bit 0, HDLC bit 0
Element 5: End the Packet
End the packet with a carriage return (no comma required between last parameter and CR)
Example HEX: 0D
3.6.2.1.6. HDLC Packet Configuration
HDLC packet frames can be used for sending data to and from the radio module. HDLC packets allow for both data addressing and packet data verification. Each HDLC packet features a 16bit checksum to enable proper packet reception.
3.6.2.1.7. HDLC State
All packets except HDLC can be disabled from direct control access, forcing HDLC encapsulation for access.
Advantages of HDLC encapsulation
HDLC encapsulation can contain any other packet
Packet has Checksum verification
Housekeeping Settings
3.6.2.2. Transmit Packet Settings
There are 4 transmit ports, each with 3 configuration sections. When being configured, the second field should be the ascii value of the port number being addressed (‘0’, ’1’, ’2’ or ’3’). The section is specified in the third field and can be any of the following options:
‘m’ – Modulation
‘e’ – Encoding
‘p’ – Port enable/disable
Any of the following settings can be modified. Because of limited bit resolution, the actual value of a specific setting will be set to the value as-close-as-possible value.
Each property should be configured with 2 fields, the field designation followed by its value. Multiple values can be configured in series. If restrictions apply (frequency limits, data rate limits, etc) the entire transaction will fail.
3.6.2.2.1. Transmit Modulation
The modulation settings are specific to the RF properties.
3.6.2.2.2. Transmit Encoding
The binary encoding options are performed on each data packet.
A given AX.25 packet has a series of start flags, the address field (Callsign and SSID bytes), Control field, Protocol field, Data field, a Frame Check Sequence and a stop flag. For a packet being transmitted, the following steps occur:
The data field encryption (between Protocol and Frame Check Sequence)
CRC16 calculation
Append start and stop flags
Perform NRZI
Perform LSFR
Key up and start sending preamble bits. This continues until minimum number for preamble bits have been sent and the key up timer expires.
Between packets, the next packet will be encoded while the preamble bits are sent. Once both have been completed, the packet will be sent.
3.6.2.2.3. Port Enable/Disable
Enabling and disabling a given port enables burst data downlink. A port can be disabled, data can be buffered over some mission time, and finally, when re-enabled, burst data down.
3.6.2.3. Receive Packet Settings
There is 1 receive port with 4 configurable sections. When being configured, the second field should be the ascii value of the port number being addressed (’R’). The section is specified in the third field and can be any of the following options:
‘m’ – Modulation
‘e’ – Encoding
‘u’ – User packet
‘s’ – Settings packet
‘p’ – Port enable/disable
Any of the following settings can be modified. Because of limited bit resolution, the actual value of a specific setting will be set to the value as-close-as-possible value.
Each property should be configured with 2 fields, first its field designation followed by its value. Multiple values can be configured in series. If restrictions apply (frequency limits, data rate limits, etc) it will fail the entire transaction.
3.6.2.3.1. Receive Modulation
The modulation settings are specific to the RF properties.
3.6.2.3.2. Receive Encoding
The binary decoding options are performed on each data packet.
A given AX.25 packet has a series of start flags, the address field (Callsign and SSID bytes), Control field, Protocol field, Data field, a Frame Check Sequence and a stop flag. For a packet being received, the following steps occur:
Preamble lock
Start flag detection
Stop flag detection
Perform LSFR
Perform De-NRZI
CRC16 calculation/authentication
If there is a bit issue preventing the stop flag from being recognized, the receiver will reset the buffers should a packet exceed the Packet Length Max variable size. This should be as small as possible, but larger than all possible applications of this configuration. Remember that the bit stuffing process can cause a packet to grow up to 120% of the original size and this buffer should be sized accordingly.
3.6.2.3.3. Port Enable/Disable
Enabling and disabling a given port enables burst data downlink. A port can be disabled, data can be buffered over some mission time, and finally, when re-enabled, burst data down.