1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
|
This file contains information about the changes done to
ODR-DabMod in this repository
2018-08-07: Matthias P. Braendli <matthias@mpb.li>
(v2.2.0):
Fix bug in CFR implementation that was introduced in v2.1.0.
Make the ZeroMQ list command return JSON.
Add a few GPSDO stats to munin.
Make sure changes applied through RC stay after an internal modulator reset.
Remove the boost dependency.
2018-05-29: Matthias P. Braendli <matthias@mpb.li>
(v2.1.0):
Add s16 output format.
Add compilation target for the EasyDABv3, which
doesn't have boost and requires constellation points
output. This required changing the configuration file parser.
Avoid RC crash when setting invalid values.
2018-03-21: Matthias P. Braendli <matthias@mpb.li>
(v2.0.0):
Big rework of the SDR device handling, putting in common more
logic between UHD and SoapySDR. Goal is to enable SoapySDR devices
to be used for SFN and for DPD. (Not yet possible)
Replace the old timestamp path that went around the process flowgraph
by a new metadata path that goes through the flowgraph, to avoid the
issues with misalignment of frame and timestamps. Do not mix different
versions when using timestamps, and be careful when mixing ODR-DabMod
with other transmitters in SFNs, as the timestamp interpretation can
change!
Fix TII carrier selection.
Add OFDM symbol windowing for improved shoulder performance.
Add a timeout to the ZeroMQ input to quit on SIGINT (Ctrl-C).
Optionally show the flowgraph metadata in the file output for
test purposes.
Add antenna selection to UHD and SoapySDR outputs.
Make EDI input optional (it's not well tested, unfinished and slows
compile time)
Improve portability for non-Linux POSIX systems.
Default to TM 1, do not read from ETI anymore.
Add support for UHD 3.11.
Implement auto-reconnect for the TCP input.
2017-11-18: Matthias P. Braendli <matthias@mpb.li>
(v1.1.0):
Fix TII insertion power level.
Fix bug in parsing timestamps appearing in rare conditions.
Add Crest Factor Reduction prototype.
Cleanup console output of flowgraph statistics.
Add prototype for Digital Predistortion.
Enable some additional compiler warnings.
Add some useful UHD statistics to RC.
Add configure option to disable march=native.
2017-06-05: Matthias P. Braendli <matthias@mpb.li>
(v1.0.1):
Move GainControl into a separate thread to make better use
of multiprocessor systems.
Give explicit names to GainControl modes (fix, max, var) in
configuration.
Add u8 IQ output format.
Add a normalised complexf IQ output format.
Make resampler unity-gain, i.e. remove digital_gain - sample rate
dependency.
Read UHD async messages in separate thread to lessen influence on the
time-critical transmit thread.
Pre-fill UHD IQ buffer before starting to stream data, to ensure it is
properly filled and reduce underruns.
2017-03-03: Matthias P. Braendli <matthias@mpb.li>
(v1.0.0):
* odr-dabmod:
Add ETI-over-TCP input.
Add EDI input.
Add SoapySDR output, than can drive HackRF, LimeSDR and other boards.
Add LO offset to UHD output.
Make gainmode VAR the default and improve config syntax.
Fix TII insertion.
Display FCT and TIST in remote control.
Add most commonly used FIRFilter taps into binary and enable the
filter by default.
Add fast math configure option that can be used to improve performance
on ARM platforms as it allows the compiler to use NEON.
Improve logging.
Refactor internals (flowgraph, main loop, C++11 modernisation and more)
2016-07-30: Matthias P. Braendli <matthias@mpb.li>
(v0.6.0):
* odr-dabmod:
Remove the broken KISS FFT support.
Replace FCT discontinuity check by verification of
the timestamps.
Change DSP thread priorities to realtime.
Quite some internal refactoring.
Fix segfault on quit due to incorrect teardown of FFTW.
Add Travis CI build instructions.
2015-11-27: Matthias P. Braendli <matthias@mpb.li>
(v0.5.5):
* odr-dabmod:
Fix compile errors with recent C++ standard library.
Correct command line options when using UHD and ZMQ input.
Enable ZeroMQ be default in ./configure
2015-09-18: Matthias P. Braendli <matthias@mpb.li>
(v0.5.4)
* odr-dabmod:
Better GPSDO handling, both for Ettus GPSDO
and ODR LEA-M8F board.
Add (experimental) TII support.
Improve thread priority definition.
Simplify handling of TIST offset, and add to RC.
Switch project to C++11.
2015-07-24: Matthias P. Braendli <matthias@mpb.li>
(v0.5.3)
* odr-dabmod:
Replace zmq.hpp to support version 4.1.x
2015-04-10: Matthias P. Braendli <matthias@mpb.li>
(v0.5.2)
* odr-dabmod:
Merge static delay parameter and ZeroMQ remote control.
Add max_frames_queued option for ZeroMQ input.
Restart modulator on FCT discontinuity or ZeroMQ input
buffer overrun.
Improve error messages and documentation.
Add ZeroMQ output REP socket type for interconnection with
GNURadio.
Fix license text in usage view.
2015-01-24: Matthias P. Braendli <matthias@mpb.li>
(v0.5.1)
* odr-dabmod:
Security: force Telnet RC to listen only on
localhost.
Add raspine's ZeroMQ RC and UHD staticdelay setting
Add I/Q format converter (signed 8-bit)
2014-12-09: Matthias P. Braendli <matthias@mpb.li>
(v0.5.0)
* odr-dabmod:
Add support for ARM processors.
Use FFTW instead of KISS FFT by default.
Add a ZeroMQ I/Q output.
Support more fine-grained UHD TX gain.
Make the -C flag optional to simplify the usage.
2014-09-26: Matthias P. Braendli <matthias@mpb.li>
(v0.4.5)
* odr-dabmod:
Change UHD normalisation to reduce risk of nonlinearities.
Add digital gain setting to RC.
Fix handling of timestamps when using ZMQ input, for the SFN
scenario.
2014-05-20: Matthias P. Braendli <matthias@mpb.li>
(v0.4.4)
* odr-dabmod:
Merge patch for USRP1 subdevice setting.
Merge patch to correct ZMQ input command line
argument.
* generate-firfilter.py:
Get FIRFilter generator script to work
with newer GNURadio versions.
2014-04-04: Matthias P. Braendli <matthias@mpb.li>
(v0.4.3)
* odr-dabmod:
Various UHD improvements, esp. related to
external clock input handling.
ZeroMQ input protocol format updated to avoid
frame phase alignment errors (not
backward compatible)
Various cleanup and fixes
2014-03-07: Matthias P. Braendli <matthias@mpb.li>
(v0.4.2)
* odr-dabmod:
Fix frequency/channel choice
Improvements in ZMQ input reliability
Use correct syslog identification
2014-02-11: Matthias P. Braendli <matthias@mpb.li>
(v0.4.1)
* odr-dabmod:
Include zmq.hpp and prefer it over the one
provided by the system.
Add the channel option to the configuration file
for the UHD output.
Replace fprintf calls by correct usage of the
logging subsystem.
Fix some compilation warnings.
2014-02-07: Matthias P. Braendli <matthias@mpb.li>
(v0.4.0)
* odr-dabmod:
Renamed CRC-DABMOD to ODR-DabMod
Fixed version generation
Fixed missing files in tarball
2014-01-31: Matthias P. Braendli <matthias@mpb.li>
(tag r11)
* crc-dabmod:
Minor improvements in logging, remote control,
zmq input and autotools
2013-12-14: Matthias P. Braendli <matthias@mpb.li>
(tag r10)
* autotools:
Remove autogenerated files and add bootstrap
Fix faulty logic for --enable-input-zeromq
2013-11-21: Matthias P. Braendli <matthias@mpb.li>
(tag r9)
* crc-dabmod:
Make generate-filter compatible with newer GNURadio
Add the FIRFilter tap generation tool
Remove references to mercurial in ChangeLog
2013-11-10: Matthias P. Braendli <matthias@mpb.li>
(tag r8):
* crc-dabmod:
Added secondary ETI input support.
Added ZeroMQ ETI input.
Fixed muting issue on missing timestamps, and
Added related configuration entry.
ZeroMQ dependency added in configure.ac
Versioning changed to make hg revision visible
Completed READMEs and INSTALLs
2012-09-13: Matthias P. Braendli <matthias@mpb.li>
(tag r7):
* crc-dabmod/*:
Logging implementation cleaned up, and several
related bugs have been solved.
Added Boost version check into autoconf
* crc-dabmod/src/OutputUHD.*:
Use non-deprecated way of setting clock and time
for the USRP.
2012-08-26: Matthias P. Braendli <matthias@mpb.li>
(tag r6):
* crc-dabmod:
RemoteControl compatibility issue
2012-08-23: Matthias P. Braendli <matthias@mpb.li>
(tag r5):
* crc-dabmod/*:
Minor fixes to FIRFilter and file configuration
2012-08-17: Matthias P. Braendli <matthias@mpb.li>
(tag r4):
* crc-dabmod/*:
FIRFilter can not be remote-controlled, and supports on-the-fly change
of the filter taps.
2012-08-16: Matthias P. Braendli <matthias@mpb.li>
(tag r3):
* crc-dabmod/*:
Implemented basic telnet remote control that can change
some UHD settings, and a syslog-compatible logging system.
2012-08-14: Matthias P. Braendli <matthias@mpb.li>
(tag r2):
* crc-dabmod/*:
Added .INI configuration file parser.
2012-08-01: Matthias P. Braendli <matthias@mpb.li>
(tag r1):
* crc-dabmod/*:
It is now possible to run dabmod with OutputUHD even
when no external 10MHz reference nor 1PPS are used.
When using FIRFilter, the TimestampDecoder keeps one delay value
to compensate for the increased pipeline latency of the FIRFilter.
As a consequence, it should be possible to synchronise two DABMODs,
even if only one uses FIRFilter.
2012-06-04 Pascal Charest <pascal [dot] charest [at] crc [dot] ca>
* BlockPartitioner.cpp BlockPartitioner.h DabModulator.cpp EtiReader.cpp EtiReader.h:
Solved CIF count synchronisation bug.
2012-02-07 Pascal Charest <pascal [dot] charest [at] crc [dot] ca>
* DabMod.cpp DabModulator.cpp DabModulator.h: Added gain factor to support UHD scale.
Added manual DAB mode control.
* GainControl.cpp GainControl.h: Added gain factor to support UHD scale.
* Makefile.am kiss_fft129.tar.gz: Updated Kiss FFT library to 1.2.9.
2011-12-15 Pascal Charest <pascal [dot] charest [at] crc [dot] ca>
* configure.ac: Added Wall option to debug compilation.
Added mm_malloc macro.
* src/BlockPartitioner.h: Changed from codec to mux.
* src/Buffer.cpp src/Buffer.h: New buffer management class.
* src/DabMod.cpp: Changed from mm_malloc to memalign for Efence support.
Replaced all fixed memory size with dynamic Buffer class.
Removed FFTW api.
* src/DabModulator.cpp src/DabModulator.h: Solved integer overflow bug for CicEqualizer initialisation.
* src/GainControl.cpp: Added handling of null symbol when gain would be infinity.
* src/InputMemory.h: Solved debug wrong file name issue.
* src/kiss_fftsimd.c src/kiss_fftsimd.h: Generic function to pack data for SIMD operations (currently not used).
2011-12-09 Pascal Charest <pascal [dot] charest [at] crc [dot] ca>
* *: Added support for DAB mode I, III and IV.
2010-07-14 Pascal Charest <pascal [dot] charest [at] crc [dot] ca>
* configure.ac: Added enable-prof and enable-fft-simd options.
* src/GainControl.cpp: Changed to system defined variables.
* src/Makefile.am: Removed code about FFTW and KISS_FFT the only FFT library.
* src/OfdmGenerator.cpp src/OfdmGenerator.h: Added support for KISS_FFT simd operations.
* src/PuncturingEncoder.cpp: Solved a bug for last bits (tail) encoding.
* src/Resampler.cpp src/Resampler.h: Added support for KISS_FFT simd operations.
Removed unused code.
* src/crc-dwap.py: Adapted to latest Gnuradio version.
2010-02-12 Pascal Charest <pascal [dot] charest [at] crc [dot] ca>
* *: Initial public release
|