Your Name
658c469bf6
doc: don't use external resources
...
/ build-doc (push) Successful in 15s
/ deploy-doc (push) Waiting to run
/ build-hamnet70 (push) Has been cancelled
Embedding (only) parts of MathJax is a bit ugly ...
2024-08-28 13:41:36 +02:00
Thomas Kolb
b46b2536e1
Add a CI workflow compiling the hamnet70 program
/ build-hamnet70 (push) Successful in 25s
/ build-doc (push) Successful in 14s
/ deploy-doc (push) Has been skipped
2024-08-27 22:01:51 +02:00
Thomas Kolb
1bcc8c2fea
Add Dockerfile with hamnet70 build dependencies
2024-08-27 22:01:51 +02:00
Thomas Kolb
c342cf656e
Move documentation docker scripts to /ci/docker
2024-08-27 21:28:09 +02:00
Thomas Kolb
03829e058b
Run deployment only on main branch
2024-08-27 21:23:40 +02:00
Thomas Kolb
f686635837
doc: automatic builds and deployment using Forgejo Actions
...
/ build-doc (push) Successful in 14s
/ deploy-doc (push) Successful in 9s
Actions run in a custom Docker image built by the scripts in `doc/docker`.
There are two jobs that run in sequence:
- `build-doc`: builds the documentation from the AsciiDoc sources.
- `deploy-doc`: Uploads the generated files to http://0fm.de
2024-08-27 21:10:30 +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
Thomas Kolb
041255e15f
layer2_tx: Fixed stack-use-after-return
2024-07-19 22:26:02 +02:00
Thomas Kolb
725a0ffd21
Ignore the squelch while receiving a packet
...
Before this commit, samples could be dropped during packet reception, which for
sure destroys the current packet and potentially the following one. Now samples
are stored even if the squelch „closes“, and decoding will potentially fail due
to high noise, but not due to missing samples.
2024-07-19 22:11:29 +02:00
Thomas Kolb
60d7fbf373
setup_tundev: limit TX queue len to 16
2024-07-19 21:59:38 +02:00
Thomas Kolb
48f061e334
Handle sequence numbers
...
This should enable basic retransmission handling.
2024-07-18 23:26:57 +02:00
Thomas Kolb
93aa429f4f
Fixed unused variable warning
2024-07-18 22:58:13 +02:00