Commit Graph

25 Commits

Author SHA1 Message Date
gretel
3bbd43cc1b Fix KISS beacon frame formatting and add sync pattern
Two issues were resolved with KISS interface beacon transmissions:

1. Fixed frame length handling to meet minimum length requirements (15 bytes) for
   TNCs like Direwolf. Previously, raw beacon data was being sent directly,
   causing frame length errors:

```
<<< Data frame from KISS client application, channel 0, total length = 11
  000:  c0 00 44 4e 39 54 54 2d 31 35 c0                 ..FOOBAR-15.
Frame length 8 not in allowable range of 15 to 2123.
ERROR - Invalid KISS data frame from client app.
```

2. Added standard 0xAA 0xAA sync pattern to improve radio modem synchronization
   and compatibility with packet radio protocols like FX.25 and IL2P.

This ensures:
- Proper frame length for TNC compatibility
- Better bit synchronization with standard sync pattern
- Improved reception reliability
- Compatible with both KISS TNCs and packet radio protocols

```
<<< Data frame from KISS client application, channel 0, total length = 18
  000:  c0 00 aa aa 44 4e 39 54 54 2d 31 35 00 00 00 00  ....FOOBAR-15....
  010:  00 c0                                            ..
[0L 21:25:43 UTC] (Not AX.25)<0xaa><0xaa>FOOBAR-15<0x00><0x00><0x00><0x00><0x00>
IL2P frame, max_fec = 1, 49 encoded bytes total
  000:  f1 5e 48 87 b8 59 b7 a1 cc 24 57 d6 0b 36 7c f1  .^H..Y...$W..6|.
  010:  7c d5 af 85 db 12 99 80 9d b8 6b bb 6b 05 df 1e  |.........k.k...
  020:  69 0e d8 69 05 f6 ff c4 24 fa 58 f7 e7 f2 a4 df  i..i....$.X.....
  030:  a1                                               .
```
2024-11-19 20:55:16 +01:00
Mark Qvist
fb4e53f6e3 Configured announce ingress limit defaults 2023-10-01 11:39:24 +02:00
Mark Qvist
0fd75cb819 Added announce frequency sampling to interfaces 2023-09-30 19:11:10 +02:00
Mark Qvist
c18806c912 Updated deprecated threading API call and updated docs 2022-09-30 19:02:41 +02:00
Mark Qvist
c6df6293b2 Added hardware MTU parameter to interfaces 2022-05-29 15:43:50 +02:00
Mark Qvist
124ec006b4 Auto-set sensible interface rate defaults 2022-04-17 19:35:31 +02:00
Mark Qvist
dc6877927e Updated license headers 2022-04-01 17:18:18 +02:00
Mark Qvist
8be1acee0a Added auto reconnection for disconnected serial-based devices 2021-12-05 14:35:25 +01:00
Mark Qvist
a692d29c90 Reconnect on serial port errors for KISS interface 2021-12-05 11:44:30 +01:00
Mark Qvist
c44c6f9086 Conditional imports for serial-based interfaces 2021-12-01 13:57:40 +01:00
Mark Qvist
259c2aa397 Conditional imports for serial-based interfaces 2021-12-01 13:39:51 +01:00
Mark Qvist
7991db5c74 Added rnstatus utility 2021-09-24 20:10:04 +02:00
Mark Qvist
65e8487b39 Added TCP client reconnection on TCP socket drop 2021-09-18 22:49:04 +02:00
Mark Qvist
425f0153d0 Added flow control timeouts to AX.25 interface and optimised timeouts. 2021-09-03 10:56:49 +02:00
Mark Qvist
e746a80dca Fixed beacon data in KISSInterface 2021-05-17 22:01:56 +02:00
Mark Qvist
f275065b40 Implemented ID beaconing on RNode and KISS interfaces 2020-08-13 15:06:39 +02:00
Mark Qvist
bd098c338a Indentation and formatting cleanup 2020-08-13 12:15:56 +02:00
Mark Qvist
8c506b0c78 Cleanup in interfaces 2020-05-06 14:34:19 +02:00
Mark Qvist
4c3a874b21 Fixed Python2 remnant in interfaces 2020-05-03 23:06:53 +02:00
Mark Qvist
fa50e1d35b Migrated to Python3 2020-04-22 17:07:40 +02:00
Mark Qvist
a339ae3d28 Preliminary Python3 support 2020-04-22 12:07:13 +02:00
Mark Qvist
0c49ca8458 Packet hashlist save to disk 2018-04-24 18:01:52 +02:00
Mark Qvist
eed78798f2 Flow control for KISS interfaces, Transport Identity implemented 2018-04-24 17:50:58 +02:00
Mark Qvist
9bfb7ae2d7 Implemented RNode interface driver 2018-04-05 19:15:05 +02:00
Mark Qvist
217ab1c2eb Cleanup 2018-04-04 15:26:34 +02:00