HackTV is a software package which turns the HackRF One into an analog TV transmitter.
There are two versions of HackTV:
I've put together some pages about the work I've done with HackTV:
./hacktv -f 855250000 -g 36 -s 14000000 -m i --filter VIDEOFILE
For other channel/frequency mappings, refer to the frequency list on Wikipedia.
At least for the BBC Selector decoder box I borrowed, the channel assignments are:
./hacktv -f 1093e6 -D 10000000 -g 36 -s 14000000 -m pal-fm --filter VIDEOFILE
-D 10000000
../hacktv -f 1092.56e6 -g 36 -s 20250000 -m dmac-fm --filter VIDEOFILE
1092.56 MHz is Galaxy, Channel ID 0x70B2. Other options on a BSB receiver are:
Channel No. | Transponder | RF frequency (MHz) | IF frequency (MHz) | Channel ID (CHID) | Channel name |
---|---|---|---|---|---|
1 | 20 | 12091.90 | 1322.72 | E8B5 | The Movie Channel |
2 | 12 | 11938.46 | 1169.28 | 48B3 | The Sports Channel / The Computer Channel |
3 | 8 | 11861.74 | 1092.56 | 70B2 | Galaxy |
4 | 16 | 12015.18 | 1246.00 | D0B4 | The Power Station |
5 | 4 | 11785.02 | 1015.84 | 20B1 | Now |
6 | 2 | 977.48 | |||
7 | 6 | 1054.20 | |||
8 | 10 | 1130.92 | |||
9 | 14 | 1207.64 | |||
10 | 18 | 1284.36 |
The IF frequency can be obtained from the transponder number with the following formula:
$F_{IF} = ({Transponder} \times 19.18) + 939.12 \, \mathrm{(MHz)}$
The satellite frequency can be obtained from the IF frequency:
$F_{SAT} = F_{IF} + 10769.18 \, \mathrm{(MHz)}$
To set the Channel ID, use the --chid
command line parameter, e.g.: --chid 0xB4
for Power Station.
./hacktv -f 1378.56e6 -g 47 -s 20250000 -m d2mac-fm --eurocrypt tv1000 --filter VIDEOFILE
Include -o soapysdr:lime
in the HackTV command line.
I can't recommend the LimeSDR, the hardware is horribly unreliable. Mine failed irreparably after only a few hours of use. The warranty being only 30 days should tell you everything you need to know!
The ASTRA “Decoder” port is pinned as follows:
Looking into the rear panel of the decoder | Looking into the plug |
---|---|
21-pin SCART female (socket) | 21-pin SCART male (plug) |
Pin | Function | Notes |
---|---|---|
1 | Audio Right | |
2 | Audio Right | |
3 | Audio Left | |
4 | Audio Ground | |
5 | (Pace) RGB Blue ground | |
6 | Audio Left | |
7 | (Pace) RGB Blue signal | |
8 | Ext Dec Status | 0V = decoder inactive 9-12V = decoder active |
9 | (Pace) RGB Green ground | |
10 | (Pace) Ext Switch (Amstrad) PAL baseband out (unfiltered and unclamped) | Not connected on Pace SS9000 Relay Drive output on Pace MSS200/MSS300/Apollo |
11 | (Pace) RGB Green signal | |
12 | (Pace) Serial Data I/O (Amstrad) MAC baseband out | Pace - used to communicate with a Pace dish positioner |
13 | (Pace) RGB Red ground | |
14 | Fast blanking ground | |
15 | (Pace) RGB Red signal | |
16 | (Pace) RGB status in | aka Fast Blanking in |
17 | Video Out ground | |
18 | Video In ground | |
19 | PAL Baseband video out (filtered and clamped) | |
20 | Video In | |
21 | Ground/shield (SCART case) |
The decoder connects to the satellite receiver using an ordinary SCART cable, which connects the “in” pins on one side to the “out” pins of the other (and vice versa).
To feed video into an SVA1, make the following connections: