omikron
Posts: 12
Joined: Sat May 25, 2019 8:30 am

Building crazycat's media_build on RPi3

Sat May 25, 2019 8:52 am

Hello,

I am trying to make DVB EVOLVEO SIGMA T2 working.
Linux can see it as ID 0572:c68a Conexant Systems (Rockwell), Inc.

so I tried to use Crazycat's media-build

Code: Select all

sudo apt-get install raspberry-kernel-headers
sudo apt-get install libproc-processtable-perl git build-essential
git clone https://bitbucket.org/CrazyCat/media_build.git
cd media_build
./build.sh
sudo make install
This works well at desktop computer with Ubuntu. But not in recent Raspbian Lite.
It compiles and install without errors, but when I re-insert the device, /var/log/messages says that there are some problems with modules version.

Did anybody compile it on Pi3?

pesand
Posts: 3
Joined: Tue May 28, 2019 5:45 pm

Re: Building crazycat's media_build on RPi3

Tue May 28, 2019 6:12 pm

Hi, I am really happy that someone else has this tuner. Evolveo is a private brand of Czech company Abacus. Aren't you from Czech republic? Anyway tuner is rebranded Geniatech T230C2. Few months ago I have managed it to work with Orange Pi/Armbian. It was really painful and very time consuming. But now it works. My progress was similar to yours.

Code: Select all

apt install patchutils linux-headers-next-sunxi
sudo apt-get install git build-essential libproc-processtable-perl
sudo apt-get install dvb-apps dvb-tools w-scan vlc
git clone https://bitbucket.org/CrazyCat/media_build
cd media_build
./build
sudo make install
sudo make rmmod
sudo modprobe dvb_usb_cxusb
I also needed to charm with kernel version and it works with 4.20.12 for Armbian. But you may try

Code: Select all

sudo make rmmod
. It is the only difference in yours and mine process. Just now I am trying to make it work on rpi3, so I will give you a feedback.

omikron
Posts: 12
Joined: Sat May 25, 2019 8:30 am

Re: Building crazycat's media_build on RPi3

Wed May 29, 2019 8:10 am

pesand wrote:
Tue May 28, 2019 6:12 pm
Hi, I am really happy that someone else has this tuner. Evolveo is a private brand of Czech company Abacus. Aren't you from Czech republic?
I didnt know it about Evolveo.
Yes, I am from Prague.

This tuner is better in sensitivity than the PI DVB Hut and the most TVs

pesand
Posts: 3
Joined: Tue May 28, 2019 5:45 pm

Re: Building crazycat's media_build on RPi3

Wed May 29, 2019 12:43 pm

Greetings from Budweis ;-). Yesterday I have tried to compile drivers on latest raspbian full. I had to do some excercises with kernel versions before it finally compiled. But it still does not work. It sais

Code: Select all

[   82.794694] dvb_usb: disagrees about version of symbol rc_register_device
[   82.794711] dvb_usb: Unknown symbol rc_register_device (err -22)
[   82.794828] dvb_usb: disagrees about version of symbol rc_free_device
[   82.794836] dvb_usb: Unknown symbol rc_free_device (err -22)
[   82.794946] dvb_usb: disagrees about version of symbol rc_allocate_device
[   82.794953] dvb_usb: Unknown symbol rc_allocate_device (err -22)
[   82.795171] dvb_usb: disagrees about version of symbol rc_unregister_device
[   82.795178] dvb_usb: Unknown symbol rc_unregister_device (err -22)
and when I try modprobe

Code: Select all

modprobe: ERROR: could not insert 'dvb_usb_cxusb': Invalid argument
I am very happy, that on orange pi pc I somehow managed it to work. But I would like it to work on rpi too.
About sensitivity - I have very good DVB-T signal, so I can not compare. But RPi TV Hat works out of the box. This USB crap is a pain. This evening I will give it another try. I would like to use RPI with T230C2 as tvheadend and opi as TV box with kodi.

omikron
Posts: 12
Joined: Sat May 25, 2019 8:30 am

Re: Building crazycat's media_build on RPi3

Wed May 29, 2019 3:33 pm

Same result here. Lot of 'disagrees about version of symbol ...' in DVB stuff.
Maybe there are some differences between version of kernel and the headers.

I tried this both with pre installed kernel and with update && upgrade (which installs a bit newer kernel). With the same results.

pesand
Posts: 3
Joined: Tue May 28, 2019 5:45 pm

Re: Building crazycat's media_build on RPi3

Wed May 29, 2019 4:16 pm

Yes, I agree. I will try older raspbian and post results.

djwoef
Posts: 2
Joined: Mon Jun 24, 2019 7:25 pm

Re: Building crazycat's media_build on RPi3

Mon Jun 24, 2019 9:21 pm

So I was very anxious to see the result of the previous message :-)

Which (old) version of Raspbian works with the mediabuild because I was having the exact same problems and whatever I did, fooling around with kernel configs etc etc I always got the "dvb_usb: disagrees about version of symbol rc_register_device" error and things did not work. On Ubuntu 16.04 and 18.04 no problems! But Raspbian is the challenge.

Having bought the August DVB-T230 which is actually also the Geniatech T230C2 ( idVendor=0572, idProduct=c68a:) described here https://www.linuxtv.org/wiki/index.php/Geniatech_T230C2

Actually I got it to work once for a very short moment with a new kernel but was not able to reproduce it. It was after the './build', 'make install' and 'make rmmod' command but before the reboot. I did some manual 'insertmod' and 'modprobe' of a few modules and suddenly got it to work without error. Dit some scanning of frequencies and saw it was working! Then I did a reboot and I was having back the symbol problems again. Could not get it to work again. :-(

I started my own investigation because I saw heaven but lost it again!

There is some discussions/misunderstanding about other media_builds and distro's which should support the Geniatech T230C2. Believe me, they do not work. I tried them all. The mediabuild of Crazycat is the only one that works because I saw it! (even if it was for a short time).

Libreelec was a tricky one! There were some rumours about a special build of Libreelec should supported this device and many more. I tried them all! Libreelec 9 and up does not support it. Libreelec 8.2.5 DOES recognize the device. Whaaw! Finally something! Everythings seems ok, the firmware is even loaded but when doing some real scanning it is not able to lock on any frequency. Waste of time!

Now the goodies! This is the setup that worked for me!

I installed the last version of raspbian (2019-04-08) and booted it.

Dont install the raspberrypi-kernel-headers! I will give you the latest one and that will not work.

You need to go to version 4.9.59-v7+.

How do you do this? Look at https://github.com/Hexxeh/rpi-firmware/commits/master and scroll back until you see 'kernel: Bump to 4.9.59'. It was on committed on 29 Oct 2017. Sorry guys! Its a bit old but at least it works! Click the message and look for the 'git_hash' in the page. In this case it is '6820d0cbec64cfee481b961833feffec8880111e'

Then download this kernel version with Raspbian command

Code: Select all

'rpi-update <hash>'
It will backup the old moduled and install version 4.9.59 of the kernel and its modules.
Reboot! It will boot into the new (old) kernel.

Now get the sources of this kernel by using the rpi-tool

Code: Select all

 wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source
Get the sources and place them under /usr/src

Code: Select all

 sudo ./rpi-source  --dest /usr/src
Check if onder /lib/modules/4.9.59-v7+/ the build and source links point to the right location.

Code: Select all

lrwxrwxrwx  1 root root     14 Jun 23 14:09 build -> /usr/src/linux
lrwxrwxrwx  1 root root     14 Jun 23 14:09 source -> /usr/src/linux
And /usr/src should look like this:

Code: Select all

lrwxrwxrwx  1 root root        55 Jun 23 14:09 linux -> /usr/src/linux-6820d0cbec64cfee481b961833feffec8880111e
drwxrwxr-x 25 root root      4096 Jun 23 14:09 linux-6820d0cbec64cfee481b961833feffec8880111e
If you have other sources installed this might mess things up. It should look like this!

Now its time for mediabuild

Code: Select all

 git clone https://bitbucket.org/CrazyCat/media_build
Compile it.

Code: Select all

 cd media_build/
 ./build 
If everything compiled ok do the following:

Code: Select all

 sudo rm -rf /lib/modules/`uname -r`/kernel/drivers/media/*
And then:

Code: Select all

make install
And
Reboot and check 'dmesg'

Mine looks like this.

Code: Select all

[    2.901994] usb 1-1.4: Product: EyeTV Stick
[    2.902002] usb 1-1.4: Manufacturer: Geniatech
[    2.902009] usb 1-1.4: SerialNumber: 161206
[    3.027129] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    3.110577] systemd-journald[117]: Received request to flush runtime journal from PID 1
[    3.403877] media: loading out-of-tree module taints kernel.
[    3.406112] media: Linux media interface: v0.10
[    3.443061] videodev: Linux video capture interface: v2.00
[    3.443080] WARNING: You are using an experimental version of the media stack.
                As the driver is backported to an older kernel, it doesn't offer
                enough quality for its usage in production.
                Use it with care.
               Latest git patches (needed if you report a bug to [email protected]):

[    3.465191] WARNING: You are using an experimental version of the media stack.
                As the driver is backported to an older kernel, it doesn't offer
                enough quality for its usage in production.
                Use it with care.
               Latest git patches (needed if you report a bug to [email protected]):

[    3.505733] WARNING: You are using an experimental version of the media stack.
                As the driver is backported to an older kernel, it doesn't offer
                enough quality for its usage in production.
                Use it with care.
               Latest git patches (needed if you report a bug to [email protected]):

[    3.562698] dvb-usb: found a 'Mygica T230C2 DVB-T/T2/C' in warm state.
[    3.831447] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
[    3.832142] dvbdev: DVB: registering new adapter (Mygica T230C2 DVB-T/T2/C)
[    3.832163] usb 1-1.4: media controller created
[    3.833580] dvbdev: dvb_create_media_entity: media entity 'dvb-demux' registered.
[    3.857268] i2c i2c-3: Added multiplexed i2c bus 4
[    3.857283] si2168 3-0064: Silicon Labs Si2168-D60 successfully identified
[    3.857292] si2168 3-0064: firmware version: D 6.0.1
[    3.870039] si2157 4-0060: Silicon Labs Si2141 successfully attached
[    3.870113] usb 1-1.4: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)...
[    3.870143] dvbdev: dvb_create_media_entity: media entity 'Silicon Labs Si2168' registered.
[    3.921220] Registered IR keymap rc-total-media-in-hand-02
[    3.921438] rc rc0: Mygica T230C2 DVB-T/T2/C as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.4/rc/rc0
[    3.921756] input: Mygica T230C2 DVB-T/T2/C as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.4/rc/rc0/input0
[    3.922003] rc rc0: lirc_dev: driver dvb_usb_cxusb registered at minor = 0, scancode receiver, no transmitter
[    3.922011] dvb-usb: schedule remote query interval to 100 msecs.
[    3.922124] dvb-usb: Mygica T230C2 DVB-T/T2/C successfully initialized and connected.
[    3.922247] usbcore: registered new interface driver dvb_usb_cxusb
And 'usb-devices' shows

Code: Select all

T:  Bus=01 Lev=02 Prnt=02 Port=04 Cnt=02 Dev#=  4 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0572 ProdID=c68a Rev=08.00
S:  Manufacturer=Geniatech
S:  Product=EyeTV Stick
S:  SerialNumber=161206
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 4 Cls=ff(vend.) Sub=01 Prot=01 Driver=dvb_usb_cxusb
Please let me know if someone found a newer kernel to work with!

Enjoy!

Return to “Media centres”