Driver and example apps for Joker TV project
Clone or download
aospan fix debug compilation error
Signed-off-by: Abylay Ospan <>
Latest commit 62800a3 Nov 4, 2018
Failed to load latest commit information.
3party [libdvben50221] more verbose debug Oct 29, 2017
cmake part2: cmake: add downstream projects support Aug 11, 2017
docs Frequencies for TV channels in Cuba Jan 27, 2018
fw sof file for FPGA configuration on the fly Aug 18, 2018
hwtest Adjust OpenHTF values for testing hw Aug 24, 2018
include multiple device support Jul 26, 2018
linux [cxd2841er] send_burst fix and rework Apr 20, 2018
src fix debug compilation error Nov 4, 2018
tools fix2:do not show out of range transponders on graph Feb 1, 2018
.ctags now ctags can traverse ./linux (small) May 26, 2017
CMakeLists.txt bump version to 1.12.0 Mar 16, 2018 [diseqc] add script with diseqc commands Mar 16, 2018

libjokertv project

User-level driver for Joker TV card ( using libusb. Supported platforms: Linux, Mac OSx, Win32/64

'linux' folder contains stripped Linux kernel header and Linux media subsystem drivers (cxd2841er, helene, etc).

(c) Abylay Ospan, 2017,



mkdir build
cd build
cmake ../


example tune to DVB-C (J.83A) on 150MHz with bandwidth 8MHz

./joker-tv -d 1 -f 150000000 -b 8000000

example tune to US cable (J.83B, DVB-C annex B) on 150MHz with bandwidth 8MHz

./joker-tv -d 2 -f 150000000 -b 8000000 -m 3

example tune to ATSC on 575MHz with bandwidth 6MHz and modulation 8VSB

./joker-tv -d 11 -f 575000000 -b 6000000 -m 7

example tune to DVB-T on 650MHz with bandwidth 8MHz

./joker-tv -d 3 -f 650000000 -b 8000000

example tune to ISDB-T on 473MHz with bandwidth 6MHz

./joker-tv -d 8 -f 473000000 -b 6000000

example tune to DTMB on 650MHz

./joker-tv -d 13 -f 650000000

example tune to DVB-S on Galaxy 19 satellite (97W). Frequency 12152 MHz, Horizontal polarization (18V), symbol rate 20000, LNB settings 10750,10750,11600

./joker-tv -d 5 -f 12152000000 -s 20000000 -y 18 -p -z 10750,10750,11600

example tune to DVB-S on Galaxy 18 satellite (123W). Frequency 12033 MHz, Horizontal polarization (18V), symbol rate 20000, LNB settings 10750,10750,11600

./joker-tv -d 5 -f 12033000000 -s 8200000 -y 18 -p -z 10750,10750,11600

if everything is fine then you can see progress. Something like this:

usb device found
Sony HELENE Ter attached on addr=61 at I2C adapter 0x7fff5f915d78
TUNE done
WAITING LOCK. status=0 error=Undefined error: 0 
USB ISOC: all/complete=7999.868002/2381.460706 transfer/sec 18.586992 mbits/sec 
USB ISOC: all/complete=8000.020000/2369.505924 transfer/sec 18.493687 mbits/sec

resulting TS stream should apear in ./out.ts file.

TS stream generator

choose TS stream generated inside FPGA:

./build/joker-tv -t

generated TS will be saved into 'out.ts' file. Check TS stream correctness with following command:

./build/tscheck -f out.ts -p

I2C bus scan



Execute diseqc.txt script before tuning to satellite:

joker-tv -d 5 -f 12033000000 -s 8200000 -y 18 -p -z 10600,10600,11600 --diseqc diseqc.txt

script example:

# Start Motor Driving East and wait 4 seconds
0xE0 0x31 0x68 0x40
sleep 4

# Stop motor
0xE0 0x31 0x60