The Geniatech T230C (also branded as MyGica T230C) is an evolution of Geniatech T230. Although it has the same external appearence, it uses different hardware, and is not supported by mainstream 2016-grade kernels.
Contributions are welcome The following components are used on the device
- USB interface: ?
- Demodulator: ?
- Tuner: ?
Guesses are open, based on the corresponding needed firmware files
As of kernel 4.4, drivers are not included in the kernel (at least not in Raspbian 8). However, the driver dvb_usb_cxusb fully supports the device, and can be found in the Video4Linux project. It is possible to build it using CrazyCat's media_build tool.
The T230C appears as a 0572:c689 device
usb 1-1.3.3: New USB device found, idVendor=0572, idProduct=c689 usb 1-1.3.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-1.3.3: Product: EyeTV Stick usb 1-1.3.3: Manufacturer: Geniatech usb 1-1.3.3: SerialNumber: 160421
Building the driver
The following procedure works on a 4.4.43-v7+ kernel and was tested on a Raspberry Pi. It should be pretty similar on other distros.
Run apt-get install raspberrypi-kernel-headers to get the correct headers (i.e. the headers corresponding to your exact current kernel build) into /lib/modules/<some folders about your current $(uname -r) kernel version>/. In my case, 2 folders were created: 4.4.43+ and 4.4.43-v7+ In case it does not download the right kernel version headers (there is a mismatch between uname -r and the folder names in /lib/modules), you can grab the raspi sources by running:
# get the rpi-source tool wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source chmod u+x rpi-source ./rpi-source --dest /somewhere/that/has/free/space # It does not create headers into /usr/src though or symlinks everywhere in /lib/modules, so: ln -s /somewhere/that/has/free/space /usr/src/linux-headers/$(uname -r) ln -s /usr/src/linux-headers/$(uname -r) /lib/modules/$(uname -r)/build ln -s /usr/src/linux-headers/$(uname -r) /lib/modules/$(uname -r)/source ...and do the same with uname -r, but without the trailing -v7+ (eg 4.4.43+ if uname -r is 4.4.43-v7+)
Check that a correct .config file (corresponding to the exact current build of your kernel) is available at /lib/modules/$(uname -r)/build/.config It should normally have been fetched by rpi-source. If it was not the case, run modprobe configs, and the .config file that you want is available in the compressed file /proc/config.gz
Now we have the correct sources and .config file, we can fetch the driver sources and build it by using CrazyCat's media_build tool:
git clone https://bitbucket.org/CrazyCat/media_build cd media_build ./build --main-git
Be sure to have some space left, as it downloads a part of the kernel tree.
In case the build fails about frame_vector.c: No rule to make target '..../v4l/frame_vector.c' , comment the following lines in media_build/v4l/Makefile, so that they appear like this:
#ifeq ($(makefile-mm),1) #-include $(obj)/Makefile.mm #endif
Then you can install the drivers by running sudo make install
The process should have installed the correct corresponding firmwares into /lib/firmware. If it is not the case, grab and install the needed firmwares from https://bitbucket.org/CrazyCat/media_build/downloads/dvb-firmwares.tar.bz2.
The Geniatech T230C requires these firmwares (available in https://bitbucket.org/CrazyCat/media_build/downloads/dvb-firmwares.tar.bz2):
They must be copied in /lib/firmware
IR Remote Control
It has not been tested yet. Contributions are welcome.
This DVB-T stick supports every French DVB-T channel (i.e. both HDTV and SDTV, broadcast as MPEG4). They are succesfully processed through tvheadend.
It should support DVB-T2 (it is advertised on the package), although this has not been tested yet. Contributions are welcome.