Skip to content

Commit

Permalink
update readme
Browse files Browse the repository at this point in the history
  • Loading branch information
rpatel3001 committed Mar 17, 2024
1 parent 02e983e commit 9faeb1b
Showing 1 changed file with 260 additions and 8 deletions.
268 changes: 260 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,29 +22,29 @@ docker logs -f satdump | grep -v "(D)" | grep -v "Table Broadcast" | grep -v "Re

## Docker Compose


```
version: "3"
services:
satdump:
container_name: satdump
hostname: satdump
image: ghcr.io/rpatel3001/docker-satdump
image: ghcr.io/rpatel3001/docker-satdump:latest
restart: always
device_cgroup_rules:
- 'c 189:* rwm'
# device_cgroup_rules:
# - 'c 189:* rwm'
volumes:
- /dev:/dev:ro
# - /dev:/dev:ro
- ./vfo.json:/vfo.json
- ./Inmarsat.json:/usr/share/satdump/pipelines/Inmarsat.json
environment:
- RUN_CMD=satdump live inmarsat_aero_6 /tmp/satdump_out --source rtltcp --ip_address 10.0.0.114 --port 7373 --gain 49 --samplerate 1.536e6 --frequency 1545.552e6 --multi_vfo /vfo.json 2>&1 | grep -v "Invalid CRC!"
# - RUN_CMD=satdump live inmarsat_aero_6 /tmp/satdump_out --source rtlsdr --source_id 0 --gain 49 --samplerate 1.536e6 --frequency 1545.552e6 --multi_vfo /vfo.json 2>&1 | grep -v "Invalid CRC!"
```

The above setup is intended to decode Inmarsat 4F3 98W from an rtl_tcp stream at 10.0.0.114:7373. To directly use an RTL-SDR, replace `rtltcp` with `rtlsdr`, remove the `ip_address` and `port` options, and optionally add a `source_id` based on `satdump sdr_probe` if you have more than one RTL-SDR.

`vfo.json` contains the frequencies and decoder pipelines being used. You'll note that they are not exact due to an approximately 3.11 kHz frequency error in my RTL_SDR. You will likely need to look at a waterfall and adjust these values based on your specific device. They may even need tuning as ambient temperature changes.
The above setup is intended to decode Inmarsat 4F3 98W from an rtl_tcp stream at 10.0.0.114:7373. To directly use an RTL-SDR instead, uncomment the `cgroup` and `/dev` lines and switch which `RUN_CMD` line is commented. You may need to change the `--source_id` if you have more than one RTL-SDR.

`vfo.json` contains the frequencies and decoder pipelines being used. You'll note that they are not exact due to an approximately 3.11 kHz frequency error in my RTL-SDR. You will likely need to look at a waterfall and adjust these values based on your specific device. They may even need tuning as ambient temperature changes.

```
{
Expand Down Expand Up @@ -118,3 +118,255 @@ The above setup is intended to decode Inmarsat 4F3 98W from an rtl_tcp stream at
}
}
```

`Inmarsat.json` overrides the default settings for each decoder pipeline, including station_id, udp_sink, and save_file. The below file does not save files, sends every decoder pipeline's output to 10.0.0.14:5556, and sets a `station_id` based on the pipeline.

```
{
"inmarsat_std_c": {
"name": "Inmarsat STD-C",
"live": true,
"live_cfg": [
[
1,
0
],
[
2,
0
],
[
3,
0
]
],
"work": {
"baseband": {},
"soft": {
"psk_demod": {
"constellation": "bpsk",
"agc_rate": 0.1,
"symbolrate": 1200,
"rrc_taps": 31,
"rrc_alpha": 0.6,
"pll_bw": 0.03
}
},
"frm": {
"inmarsat_stdc_decoder": {}
},
"msg": {
"inmarsat_stdc_parser": {
"save_files": false,
"station_id": "XX-YYYY-IMSL-98W-STDC",
"udp_sinks": {
"test": {
"address": "10.0.0.114",
"port": 5556
}
}
}
}
}
},
// Aero-P
"inmarsat_aero_6": {
"name": "Inmarsat Aero 0.6k (WIP)",
"live": true,
"live_cfg": [
[
1,
0
],
[
2,
0
],
[
3,
0
]
],
"work": {
"baseband": {},
"soft": {
"sdpsk_demod": {
"symbolrate": 600,
"rrc_alpha": 0.4
}
},
"frm": {
"inmarsat_aero_decoder": {
"oqpsk": false,
"dummy_bits": 0,
"inter_cols": 6,
"inter_blocks": 3
}
},
"msg": {
"inmarsat_aero_parser": {
"save_files": false,
"station_id": "XX-YYYY-IMSL-98W-AERO6",
"udp_sinks": {
"test": {
"address": "10.0.0.114",
"port": 5556
}
}
}
}
}
},
"inmarsat_aero_12": {
"name": "Inmarsat Aero 1.2k (WIP)",
"live": true,
"live_cfg": [
[
1,
0
],
[
2,
0
],
[
3,
0
]
],
"work": {
"baseband": {},
"soft": {
"sdpsk_demod": {
"symbolrate": 1200,
"rrc_alpha": 0.4
}
},
"frm": {
"inmarsat_aero_decoder": {
"oqpsk": false,
"dummy_bits": 0,
"inter_cols": 9,
"inter_blocks": 2
}
},
"msg": {
"inmarsat_aero_parser": {
"save_files": false,
"station_id": "XX-YYYY-IMSL-98W-AERO12",
"udp_sinks": {
"test": {
"address": "10.0.0.114",
"port": 5556
}
}
}
}
}
},
"inmarsat_aero_105": {
"name": "Inmarsat Aero 10.5k (WIP)",
"live": true,
"live_cfg": [
[
1,
0
],
[
2,
0
],
[
3,
0
]
],
"work": {
"baseband": {},
"soft": {
"psk_demod": {
"constellation": "oqpsk",
"agc_rate": 0.2,
"symbolrate": 5.25e3, //10.5e3,
"rrc_alpha": 1.0,
"pll_bw": 0.01
}
},
"frm": {
"inmarsat_aero_decoder": {
"oqpsk": true,
"dummy_bits": 178,
"inter_cols": 78,
"inter_blocks": 1
}
},
"msg": {
"inmarsat_aero_parser": {
"save_files": false,
"station_id": "XX-YYYY-IMSL-98W-AERO105",
"udp_sinks": {
"test": {
"address": "10.0.0.114",
"port": 5556
}
}
}
}
}
},
// Aero-C
"inmarsat_aero_84": {
"name": "Inmarsat Aero 8.4k",
"live": true,
"live_cfg": [
[
1,
0
],
[
2,
0
],
[
3,
0
]
],
"work": {
"baseband": {},
"soft": {
"psk_demod": {
"constellation": "oqpsk",
"agc_rate": 0.2,
"symbolrate": 4.2e3,
"rrc_alpha": 1.0,
"pll_bw": 0.01
}
},
"frm": {
"inmarsat_aero_decoder": {
"is_c": true,
"oqpsk": true,
"dummy_bits": 0,
"inter_cols": 4,
"inter_blocks": 16,
"ber_thresold": 0.25
}
},
"msg": {
"inmarsat_aero_parser": {
"is_c": true,
"save_files": false,
"station_id": "XX-YYYY-IMSL-98W-AERO84",
"udp_sinks": {
"test": {
"address": "10.0.0.114",
"port": 5556
}
}
}
}
}
}
}
```

0 comments on commit 9faeb1b

Please sign in to comment.