Commit graph

110 commits

Author SHA1 Message Date
Ahmet Inan
d53f6bdf7e print the absolute sample position of synchronization 2025-07-07 06:45:42 +02:00
Ahmet Inan
a5ec161773 print SFO and residual CFO 2025-07-06 15:17:20 +02:00
Ahmet Inan
0ce4068061 average both synchronization symbols for a better channel estimate 2025-07-06 12:58:58 +02:00
Ahmet Inan
5d257f55ec implemented differential modulation 2025-07-05 17:04:27 +02:00
Ahmet Inan
0cf1e2f3fe added some more modes 2025-07-05 10:33:17 +02:00
Ahmet Inan
6150c538b4 limit precision 2025-07-04 17:21:53 +02:00
Ahmet Inan
9c29a0a08d simplified demodulation or erase function 2025-07-04 16:59:26 +02:00
Ahmet Inan
5677a7163b merged demodulation with demapping 2025-07-04 16:52:41 +02:00
Ahmet Inan
9370ce0bcd update channel smoothly 2025-07-04 08:31:45 +02:00
Ahmet Inan
5b99d357bf moved crc0 and data array to common struct 2025-07-02 12:16:15 +02:00
Ahmet Inan
8cab519b16 moved common code to Common class 2025-07-02 12:02:36 +02:00
Ahmet Inan
7c2b4d94a0 don't need to skimp on letters here 2025-07-02 08:47:26 +02:00
Ahmet Inan
69ebf0ea29 made offsets accessible to other methods 2025-07-02 07:05:20 +02:00
Ahmet Inan
d565750bf7 use a larger list 2025-07-02 06:49:38 +02:00
Ahmet Inan
53593d3350 use a shorter MLS for leading noise 2025-07-01 23:41:18 +02:00
Ahmet Inan
42ed10ea14 use 31 length MLS for pilots 2025-07-01 23:19:36 +02:00
Ahmet Inan
b71926062d use 16 bit LLRs 2025-07-01 22:53:14 +02:00
Ahmet Inan
25d9f2218b removed now redundant erasing 2025-07-01 21:04:47 +02:00
Ahmet Inan
b10e171e9a added some more modes 2025-07-01 15:04:08 +02:00
Ahmet Inan
f0f0aace39 reduced guard interval to 1/16 2025-07-01 13:39:50 +02:00
Ahmet Inan
464d4a96c2 sprinkle QAM64 with QAM4 or QAM16 to fill in the gaps 2025-07-01 11:27:15 +02:00
Ahmet Inan
838155c063 skew pilot and reserved tones 2025-07-01 08:26:28 +02:00
Ahmet Inan
50429635a0 cleaned up names 2025-07-01 06:32:55 +02:00
Ahmet Inan
efe5b9421d interleave reserved tones with data subcarriers 2025-06-30 21:47:08 +02:00
Ahmet Inan
d5c4bb25f5 added helper arrays 2025-06-30 14:39:03 +02:00
Ahmet Inan
8bcfd30426 added setup methods 2025-06-30 13:30:08 +02:00
Ahmet Inan
4b99f82aac use the first 32 comb pilots to signal the mode 2025-06-30 12:36:35 +02:00
Ahmet Inan
4430de392b also use 32 reserved tones for QAM64 2025-06-28 11:57:40 +02:00
Ahmet Inan
0089c8cb30 comb distance and offset are constant now 2025-06-28 11:30:53 +02:00
Ahmet Inan
09ada3d10f always use 32 comb type pilots 2025-06-28 08:41:47 +02:00
Ahmet Inan
ab5a0ed683 replaced synchronization symbol with two longer symbols 2025-06-27 14:11:23 +02:00
Ahmet Inan
77719cc63b added more shuffles 2025-06-25 16:39:28 +02:00
Ahmet Inan
4cb15194aa replaced Fisher-Yates shuffle with XorShiftMask mapping 2025-06-25 12:35:32 +02:00
Ahmet Inan
f92a24eb5a use non-systematic polar codes 2025-06-25 11:54:53 +02:00
Ahmet Inan
6282c0af33 avoid variable length arrays 2024-11-07 11:07:43 +01:00
Ahmet Inan
d5a0b5c2f2 moved Schmidl & Cox correlator to own header 2024-03-17 11:55:25 +01:00
Ahmet Inan
2ec2af1ec9 algorithm header not needed anymore 2024-03-09 19:32:53 +01:00
Ahmet Inan
cd03049294 oops 2024-03-09 18:13:25 +01:00
Ahmet Inan
ad3cf75925 avoid oversaturation decoder errors at high SNR 2024-02-21 11:28:35 +01:00
Ahmet Inan
359a38ad6e candidates are sorted now 2024-02-09 13:42:40 +01:00
Ahmet Inan
a56466c08f added support for multiple input and output files 2024-01-25 17:26:36 +01:00
Ahmet Inan
2d765a78fd start parity bits early, as we use a crc at the end 2024-01-21 11:01:18 +01:00
Ahmet Inan
d69dd7aa03 use parity aided polar codes 2024-01-20 23:13:58 +01:00
Ahmet Inan
ad5f0e04ea removed rattlegram modes 2024-01-20 18:16:30 +01:00
Ahmet Inan
390a11e5dc revised modes to better amortize the preamble cost
.. and to have a larger minimum size payload of 256 bytes
2024-01-05 13:24:49 +01:00
Ahmet Inan
c597ac3398 added rattlegram modes 2024-01-03 18:12:48 +01:00
Ahmet Inan
bce8a6ee56 erase remaining bits 2023-12-26 11:28:56 +01:00
Ahmet Inan
fff6c60bbe added six new modes
Mode 23: DQPSK, 1/2-rate code, 1600 Hz bandwidth and 1.08 seconds
Mode 24: DQPSK, 3/4-rate code, 1600 Hz bandwidth and 1.08 seconds
Mode 25: QAM16, 1/2-rate code, 1700 Hz bandwidth and 1.08 seconds
Mode 26: QAM16, 3/4-rate code, 1700 Hz bandwidth and 1.08 seconds
Mode 27: QAM64, 2/3-rate code, 1900 Hz bandwidth and 1.26 seconds
Mode 28: QAM64, 3/4-rate code, 1900 Hz bandwidth and 1.26 seconds
2023-12-26 11:28:56 +01:00
Ahmet Inan
d98abc99cd do finer compensation using data-driven estimation 2023-12-18 19:07:47 +01:00
Ahmet Inan
b93079de81 compensate using comb type pilots 2023-12-18 13:23:13 +01:00