rudi_s
75f33727b2
Update .forgejo/workflows/doc.yaml
2024-08-27 18:10:11 +02:00
rudi_s
059108457e
Update .forgejo/workflows/doc.yaml
2024-08-27 18:10:11 +02:00
Thomas Kolb
3ca4eaf3ef
Even more debugging
2024-08-27 18:10:11 +02:00
Thomas Kolb
a9d4b318f9
More debugging
2024-08-27 18:10:11 +02:00
Thomas Kolb
50ccda3738
docker: make version a parameter
2024-08-27 18:10:11 +02:00
Thomas Kolb
a0120abc39
Workflow: Add git to the container
2024-08-27 18:10:11 +02:00
Thomas Kolb
934ba4a339
Workflow: add nodejs to image
2024-08-27 18:10:11 +02:00
Thomas Kolb
a56460bef6
workflow: add checkout step
2024-08-27 18:10:11 +02:00
Thomas Kolb
a6c758e1b5
Actions: next try
2024-08-27 18:10:11 +02:00
Thomas Kolb
0b3bbfe2c9
Add Forgejo workflow for documentation
2024-08-27 18:10:11 +02:00
Thomas Kolb
e5d668c7cd
Add build scripts for docker container
2024-08-27 18:10:11 +02:00
Thomas Kolb
10f634d144
doc: translate message sequence diagrams to mscgen
...
Mermaid is more beautiful, but the tool stack is really annoying. A Chrome
browser should not be necessary to generate some SVGs.
2024-08-27 18:07:12 +02:00
Thomas Kolb
79c340c20d
connection: add state checks
2024-08-25 23:27:22 +02:00
Thomas Kolb
fc9e5c5229
Combine layer2_rx and layer2_tx in a new connection module
...
The new module is not used yet, but this is a preparation for the future
multi-client networking support.
2024-08-25 22:26:56 +02:00
Thomas Kolb
899152a530
Remove config.h from Git; must be adapted by the user
...
A template for the config file is provided in src/config.h.template. It must be
copied to src/config.h and adapted for force users to set their own station
call sign.
2024-08-25 20:26:41 +02:00
Thomas Kolb
303bfaec4f
doc: enable stem processing for formulas
2024-08-25 01:14:38 +02:00
Thomas Kolb
76f9f37b5d
doc/Makefile: add clean target
2024-08-25 01:14:28 +02:00
Thomas Kolb
9d86bc3c97
doc: write generated files to separate directory
2024-08-25 00:52:51 +02:00
Thomas Kolb
c52d0766d7
Remove obsolete compile_flags.txt
2024-08-23 19:52:24 +02:00
Thomas Kolb
2e91fd7c42
Apply free software+documentation licenses
...
All code is now licensed under GPLv3+. The documentation is licensed under
CC BY-SA 4.0.
This is now officially free software! \o/
2024-08-23 11:53:40 +02:00
Thomas Kolb
017eb221f1
Integrate the interleaver
2024-08-16 22:14:07 +02:00
Thomas Kolb
325abdbd02
packet_queue: allow max. 15 packets to be queue (transmit window)
...
16 is not allowed because it leads to an overflow in sequence numbers, making
them ambiguous.
2024-08-09 22:22:01 +02:00
Thomas Kolb
6d9068f63d
define INTERLEAVE_DISTANCE
2024-08-09 22:18:20 +02:00
Thomas Kolb
2ddb8aa18c
Randomize retransmit time
2024-08-09 22:16:14 +02:00
Thomas Kolb
d2ef6d9741
Remove empty packets from the queue after their first transmission
2024-07-27 00:50:04 +02:00
Thomas Kolb
04dcfff6fd
Do not transmit an empty packet if an empty packet was received
2024-07-27 00:33:47 +02:00
Simon Ruderich
9990aa5fbb
main: check return value of layer2_tx_fill_packet_queue()
2024-07-24 20:20:36 +02:00
Simon Ruderich
52f45cb433
layer2: check return values when adding empty packets
2024-07-24 20:20:36 +02:00
Simon Ruderich
4e2815923c
layer2: handle invalid message types just in case
2024-07-23 09:24:32 +02:00
Simon Ruderich
fe3460a899
doc: s/should/must/
2024-07-23 09:21:14 +02:00
Simon Ruderich
766caf7e07
layer2/packet_structs: use variable to reduce duplication
2024-07-23 09:15:56 +02:00
Simon Ruderich
b3a49fe0ba
layer2: update comments, use constant
2024-07-23 09:15:34 +02:00
Simon Ruderich
8aacbaf8c3
layer2/packet_queue: remove unused function packet_queue_can_add_packet()
2024-07-23 08:41:42 +02:00
Simon Ruderich
9845514a46
layer2/packet_queue: permit using full queue size
...
Previously, only PACKET_QUEUE_SIZE - 1 elements could be stored.
2024-07-23 08:41:25 +02:00
Thomas Kolb
10a869d1a2
Layer 2: send Empty Packet acknowledgements if there’s nothing else to transmit
2024-07-22 22:19:23 +02:00
Thomas Kolb
87eeb045b0
docs: define an Empty Frame and its usage
2024-07-22 21:40:54 +02:00
Thomas Kolb
c9916c08da
Add a simple interleaver implementation (not used yet)
2024-07-21 17:23:15 +02:00
Thomas Kolb
04f29b94bf
rx: show AGC gain after preamble, header and data
2024-07-20 22:33:08 +02:00
Thomas Kolb
576cdbfac5
Added ham64.c/.h to CMakeLists.txt
2024-07-20 22:32:01 +02:00
Thomas Kolb
77b24cf591
tests: Added variant of rx_file test for layer2 debugging
2024-07-20 22:31:13 +02:00
Thomas Kolb
38010ea672
rx-debugging: always dump symbols on packet boundaries
2024-07-20 22:30:27 +02:00
Thomas Kolb
12e727be00
packet_structs: add function to dump a packet header to the log
2024-07-20 22:29:04 +02:00
Thomas Kolb
3068db1d50
Handle retransmit timeouts
2024-07-20 01:04:03 +02:00
Thomas Kolb
fe684f7a1d
Fixed stack overflow in transmit()
2024-07-20 01:03:31 +02:00
Thomas Kolb
db2700c0f7
layer2_decode_packet_header: fixed rx_seq_nr readout
2024-07-20 01:02:42 +02:00
Thomas Kolb
bfe1cce6e3
packet_queue: wrap sequence number in packet_queue_delete()
2024-07-20 01:01:55 +02:00
Thomas Kolb
ac0fb54623
layer2_tx: fixed logging
2024-07-20 01:01:35 +02:00
Thomas Kolb
3b7d6baa74
layer2_tx: fixed packet size
2024-07-20 01:01:01 +02:00
Thomas Kolb
bcbcf5aeff
Layer 2: Added logging for retransmit handling
2024-07-20 00:26:53 +02:00
Thomas Kolb
d449e31586
logger: show module name
2024-07-20 00:04:32 +02:00