aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias P. Braendli <matthias.braendli@mpb.li>2014-02-07 09:24:39 +0100
committerMatthias P. Braendli <matthias.braendli@mpb.li>2014-02-07 09:24:39 +0100
commit05bc267d10902357814a8493f18937f5cb51f8f6 (patch)
treecd045bb0a708d64a3161968a54d8d6cb46b6a43e
parentdcf1a7527bf3ea977710eae30bd24d8c65c9d6c5 (diff)
downloadmmbtools-aux-05bc267d10902357814a8493f18937f5cb51f8f6.tar.gz
mmbtools-aux-05bc267d10902357814a8493f18937f5cb51f8f6.tar.bz2
mmbtools-aux-05bc267d10902357814a8493f18937f5cb51f8f6.zip
some updates, removal of old scripts
-rw-r--r--README-SFN127
-rw-r--r--cosin.mux3
-rwxr-xr-xmoduhd-2048.sh3
-rwxr-xr-xmoduhd-resample.sh3
-rwxr-xr-xmux-throttled-nofb.sh19
-rwxr-xr-xmux-throttled.sh19
-rw-r--r--test.ini10
-rw-r--r--zmq-simul.mux12
8 files changed, 15 insertions, 181 deletions
diff --git a/README-SFN b/README-SFN
deleted file mode 100644
index de4ef7c..0000000
--- a/README-SFN
+++ /dev/null
@@ -1,127 +0,0 @@
-README for the SFN patch
-========================
-
-Concept
--------
-
-Each modulator receives ETI frames with absolute timestamps. These timestamps
-are composed of two parts:
-- The TIST field as defined in the ETI standard, giving an offset after the
- pulse per second signal;
-- A time information transmitted using the MNSC, representing the precise time
- when the frame must be transmitted, with one-second resolution.
-
-When CRC-DABMUX is called with -s, the TIST is defined in each frame. The
-Time is always encoded in the MNSC.
-
-In a SFN setup, it is not possible to rely on a modulator to slow down the
-Ensemble multiplexer. CRC-DABMUX takes an additional parameter -r to output one
-ETI frame every 24ms. This output parameter only adds a simul:// output.
-
-The ETI stream must then be made available to several transmission sites. For
-this, the eti_tcp server can be used.
-The eti_tcp server listens on the port specified on the command line.
-An example invocation is:
-./mux-throttled.sh -s -m 1 | ./eti_tcp/eti_tcp.py 54001
-
-Each modulator then receives the ETI stream through a TCP connection. Each frame
-contains the complete timestamp, to which an per-modulator offset is added.
-The sum is then given to the USRP. The offset can be specified in two ways:
-
-using -o delay:
-Adds a constant delay specified on the command line (see 1st example).
-
-using -O delayfile
-Adds the delay specified in the given file. The file must contains a single
-line containing a floating point number. This file is read each 50 frames, and
-the modulator delay is updated.
-
-In both cases, the units are seconds.
-
-Example modulator invocation (for a B100 USRP supporting 2048Msps and with a
-fixed delay of 2.3 seconds)
-nc localhost 54001 | ./moduhd-2048.sh -o 2.3
-
-Example modulator invocation (for an USRP requiring resampling and with a delay
-specified in a separate file "moddelay")
-nc localhost 54001 | ./moduhd-resample.sh -O moddelay -G 5
-
-It is also possible to set daugherboard gain using -G. Furthermore, the transmission
-frequency is set on the command line, as seen in the examples in moduhd-XXX.sh.
-
-CRC-DABMOD uses the UHD library to output modulated samples to the USRP device.
-When started, it defines the USRP time using the local time and the PPS signal.
-It is therefore important to synchronise computer time using NTPd.
-
-When a frame arrives with a timestamp that is in the past, the frame is dropped.
-If the timestamp is too far in the future, the output module waits a short
-delay.
-
-Synchonisation can be verified by using an oscilloscope and a receiver. It is
-very easy to see if the null symbols align.
-
-
-Hardware requirements
----------------------
-
-The following hardware is required to test the SFN patch to the CRC mmbTools:
-- Two USRPs ;
-- One or two computers with the mmbTools installed ;
-- A network connection between the two computers ;
-- A 10MHz refclk source ;
-- A 1PPS source synchronised to the 10MHz ;
-- An oscilloscope to check synchronisation.
-
-The lab setup used in the experiments :
-http://pic.mpb.li/IMAG0411.jpg
-
-In this example, one USRP B100 and one USRP2 are used. Modulation is done on two
-different computers, but it also works with a single computer. In that case, the
-device string for the -u option for CRC-DABMOD must specify the device. (e.g.
--u "type=b100", -u "type=usrp2" or -u "serial=ABC123")
-
-The HP33120A generator at the bottom is used to generate the 10MHz REFCLK (sine,
-2Vpp). It's sync output is used as 10MHz IN for the Agilent 33250A generator.
-The Agilent is set to a square wave, 1Hz. Its sync output is then wired to the
-PPS input of the USRPs.
-
-List of changes made
---------------------
-To CRC-DABMUX:
-- Throttled output option instanciates a simul output
-- Set TIST and use MNSC to transmit time
-- Command line arguments handling
-
-Files:
-Modified Eti.h and DabMux.cpp
-
-To CRC-DABMOD:
-- Added multithreaded UHD Output module
-- Added normalisation for UHD (we must divide output samples by
- 32768.0)
-- Command line arguments handling
-- Changed the flowgraph to be able to chose between outputs
-- Added decoding of time in MNSC
-- Added delay control for the modulator using -o and -O
-- Initially set the timezone to UTC, because the MNSC is in UTC
-
-Files:
-Added OutputUHDThreaded.{cpp,h}, TimestampDecoder.{cpp,h}; Modified DabMod.cpp,
-DabModulator.h, Eti.h, EtiReader.{cpp,h}; Changed some .h files to include
-<stdio.h> because of compilation issues; Corrected OutputMemory char* name().
-
-
-Future elements to be changed
------------------------------
-- Communicate delay and buffer information between multiplexer and modulators,
- to have a better control about delays.
-- Handle UHD asynchronous messages in another thread, and use this information
- for monitoring
-
-Repository:
-http://hg.mpb.li/mmbtools-sfn/
-
-2012-07-11
-Matthias P. Braendli
-matthias@mpb.li
-
diff --git a/cosin.mux b/cosin.mux
index 20859ed..87e388e 100644
--- a/cosin.mux
+++ b/cosin.mux
@@ -6,8 +6,7 @@ general {
nbframes 0
- ; Enable TCPLog on port 12222
- tcplog false
+ syslog false
writescca false
tist false
}
diff --git a/moduhd-2048.sh b/moduhd-2048.sh
deleted file mode 100755
index 8144512..0000000
--- a/moduhd-2048.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-../crc-dabmod-0.3.3/src/crc-dabmod /dev/stdin -g2 $* -l -u "master_clock_rate=32768000,type=b100" -F 234208000
diff --git a/moduhd-resample.sh b/moduhd-resample.sh
deleted file mode 100755
index e603064..0000000
--- a/moduhd-resample.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-../crc-dabmod-0.3.3/src/crc-dabmod /dev/stdin -g2 $* -l -r 4000000 -u "" -F 234208000
diff --git a/mux-throttled-nofb.sh b/mux-throttled-nofb.sh
deleted file mode 100755
index c0a650a..0000000
--- a/mux-throttled-nofb.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/bash
-
-# run this with -s
-
-../crc-dabmux-0.3.0.4/src/CRC-DabMux -o -L "TuxMux" $* -r \
- -A funk.mp2 -b 128 -i 10 -S -L "Funk" -C \
- -A luschtig.mp2 -b 128 -i 3 -S -L "Luschtig" -C \
- -O fifo:///dev/stdout?type=raw
- #-O fifo:///dev/stdout
-
- #-A 1.ff -b 128 -i 4 -S -L "Banane" -C \
-# -O udp://0.0.0.0:54000?type=raw
-
-#CRC-DabMux -L "TuxMux" \
-# -A 1.ff -b 128 -i 10 -S -L "L2_128" -C \
-# -F 2.ff -k -b 48 -i 2 -S -L "AAC48" -C \
-# -F 3.ff -k -b 64 -i 3 -S -L "AAC64" -C \
-# -F 4.ff -k -b 128 -i 4 -S -L "AAC128" -C \
-# -O fifo:///dev/stdout
diff --git a/mux-throttled.sh b/mux-throttled.sh
deleted file mode 100755
index 4eb8fef..0000000
--- a/mux-throttled.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/bin/bash
-
-# Run this with -s
-
-../crc-dabmux-0.3.0.4/src/CRC-DabMux -o -L "TuxMux" -c 1249 -i 20479 $* -r \
- -A funk.mp2 -b 128 -i 10 -S -L "Funk" -C \
- -A luschtig.mp2 -b 128 -i 3 -S -L "Luschtig" -C \
- -A 1.ff -b 128 -i 0 -S -i 16386 -L "Banane" -C \
- -O fifo:///dev/stdout?type=raw
- #-O fifo:///dev/stdout
-
-# -O udp://0.0.0.0:54000?type=raw
-
-#CRC-DabMux -L "TuxMux" \
-# -A 1.ff -b 128 -i 10 -S -L "L2_128" -C \
-# -F 2.ff -k -b 48 -i 2 -S -L "AAC48" -C \
-# -F 3.ff -k -b 64 -i 3 -S -L "AAC64" -C \
-# -F 4.ff -k -b 128 -i 4 -S -L "AAC128" -C \
-# -O fifo:///dev/stdout
diff --git a/test.ini b/test.ini
index c8d470f..aa2e8da 100644
--- a/test.ini
+++ b/test.ini
@@ -10,12 +10,12 @@ filelog=1
filename=/dev/stderr
[input]
-#transport=file
-#source=/home/bram/pdm/mmbtools-sfn/scripts/eti/fb_framed.eti
+transport=file
+source=/home/bram/dab/mmbtools-aux/eti/funk.raw.eti
#source=/dev/stdin
-transport=zeromq
-source=tcp://localhost:8080
+#transport=zeromq
+#source=tcp://localhost:8080
loop=0
[modulator]
@@ -40,7 +40,7 @@ filtertapsfile=filter/simplefiltertaps.txt
[output]
; choose output: possible values: uhd, file
-output=uhd
+output=file
[fileoutput]
filename=/dev/null
diff --git a/zmq-simul.mux b/zmq-simul.mux
index 1e9fab1..6d485e0 100644
--- a/zmq-simul.mux
+++ b/zmq-simul.mux
@@ -5,13 +5,19 @@ general {
; the number of ETI frames to generate (set to 0 to get an unlimited number)
nbframes 0
+ ; The statsserver for extracting statistics
+ statsserverport 12720
- ; Enable TCPLog on port 12222
- tcplog false
+ syslog false
writescca false
tist false
}
+remotecontrol {
+ ; enable the remote control server
+ telnetport 12721
+}
+
; Some ensemble parameters
ensemble {
id 20479
@@ -80,7 +86,7 @@ components {
; A list of outputs, in the format
; unique_id "uri"
outputs {
- foobar "fifo:///dev/stdout?type=raw"
+ ;foobar "fifo:///dev/stdout?type=raw"
;zmq "zmq+tcp://*:8080"
; This throttles muxing down to nominal rate