Project

General

Profile

Unable to query adapter - dvbhdhomerun on Synology NAS

Added by hoon tune over 12 years ago

Hi all,

I'm trying to get tvheadend + dvbhdhomerun running on a Synology ARM based NAS.

I'm really close I think, but I've hit a bit of a brick wall and don't know where to look to get past the issue.

dmesg says:

[ 184.600000] HDHomeRun: Begin init, version 0.0.9 
[ 184.600000] HDHomeRun: Waiting for userspace to connect 
[ 184.610000] HDHomeRun: End init 
[ 269.540000] hdhomerun: userhdhomerun connected 
[ 269.540000] hdhomerun: userhdhomerun connected 
[ 269.550000] hdhomerun: creating dvb device for 11105D0A-0 
[ 269.550000] DVB: registering new adapter (HDHomeRun) 
[ 269.590000] DVB: registering adapter 0 frontend 0 (HDHomeRun DVB-T)... 
[ 269.590000] HDHomeRun0: DVB Frontend registered 
[ 269.600000] HDHomeRun0: Registered DVB adapter0 
[ 269.640000] hdhomerun: device /dev/hdhomerun_data0 created 
[ 269.640000] hdhomerun: userhdhomerun connected 
[ 269.670000] hdhomerun: creating dvb device for 11105D0A-1 
[ 269.670000] DVB: registering new adapter (HDHomeRun) 
[ 269.710000] DVB: registering adapter 1 frontend 0 (HDHomeRun DVB-T)... 
[ 269.710000] HDHomeRun1: DVB Frontend registered 
[ 269.720000] HDHomeRun1: Registered DVB adapter1 
[ 269.750000] hdhomerun: device /dev/hdhomerun_data1 created 
[ 269.750000] hdhomerun: userhdhomerun connected 

but when I run tvheadend


[ALERT]:dvb: /dev/dvb/adapter0/frontend0: Unable to query adapter
[ALERT]:dvb: Unable to open /dev/dvb/adapter1/frontend0 -- No such device

the device does exist

diskstation> ls -l /dev/dvb/adapter0/
total 0
crw-rw-rw- 1 root root 212, 68 Feb 18 09:57 demux0
crw-rw-rw- 1 root root 212, 69 Feb 18 09:57 dvr0
crw-rw-rw- 1 root root 212, 67 Feb 18 09:57 frontend0

any ideas where to look next ?

Thanks


Replies (18)

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by Lennart Jütte over 12 years ago

can you write up a short howto for compiling tvheadend?

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

ok, this was for a ds210j (arm based)

First you need to install the correct bootstrap for your device, if you haven't already

cd /volume1/@tmp
wget http://wizjos.endofinternet.net/synology/archief/syno-mvkw-bootstrap_1.2-7_arm-ds111.xsh
chmod +x syno-mvkw-bootstrap_1.2-7_arm-ds111.xsh
sh syno-mvkw-bootstrap_1.2-7_arm-ds111.xsh
reboot

Now you need a few dependancies

ipkg update
ipkg upgrade

ipkg install optware-devel
ipkg install git
ipkg install openssl 
ipkg install gcc
ipkg install openssl-dev 

download the source

mkdir -p /opt/tvheadend
git clone https://github.com/andoma/tvheadend.git /opt/tvheadend
cd /opt/tvheadend

you need to edit the Makefile, change

MKBUNDLE = $(CURDIR)/support/mkbundle
to
MKBUNDLE = bash $(CURDIR)/support/mkbundle

you then need to update a few libraries

cp /opt/arm-none-linux-gnueabi/lib/libpthread-2.5.so /opt/arm-none-linux-gnueabi/lib/libpthread-2.5.so.bk
cp /lib/libpthread.so.0 /opt/arm-none-linux-gnueabi/lib/libpthread-2.5.so

cp /opt/lib/libssl.so.0.9.8 /opt/arm-none-linux-gnueabi/lib
cp /opt/lib/libssl.so.0.9.8 /lib
cp /opt/lib/libcrypto.so.0.9.8 /lib

compile time

export CC=gcc

bash configure \
--host=armle-unknown-linux \
--target=armle-unknown-linux \
--build=i686-pc-linux \
--disable-avahi \
--release \
--openssl=/opt/lib \
--prefix=/opt/tvheadend

make

make install

to give it a test run

TVHROOT="/opt/tvheadend" 
TVHNAME="tvheadend" 
TVHBIN="${TVHROOT}/bin/${TVHNAME}" 
TVHUSER="${TVHNAME}" 

/opt/tvheadend/bin/tvheadend start -C

Ctrl-C to stop it

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by Lennart Jütte over 12 years ago

Thank you so very much for sharing this detailed tutorial!

Right after posting my request i got optware-devel to install (which was making problems...) and completed an almost identical build. Instead of copying all the libs from /opt/... to /lib I linked them.

Whatever - new problem: tvheadend (git-b877800) starts, but it won't scan for muxes after adding the initial mux. It just sits there an doesn't do anything. My tuner driver tells me, that there are a number of connections to it, but nothing happens (no cpu usage, nothing...).

DiskStation> /opt/bin/mediaclient --lc
**** List of Media Clients ****
/dev/dvb/adapter0/frontend0:
  6978 ... tvheadend
/dev/dvb/adapter0/dvr0:
  6978 ... tvheadend
/dev/dvb/adapter0/demux0:
  6978 ... tvheadend (0000)
  6978 ... tvheadend (0001)
  6978 ... tvheadend (0010)
  6978 ... tvheadend (0011)
  6978 ... tvheadend (0012)
  6978 ... tvheadend (0259)
  6978 ... tvheadend (012d)
  6978 ... tvheadend (01f5)
  6978 ... tvheadend (00c9)
  6978 ... tvheadend (0065)
  6978 ... tvheadend (0191)
  6978 ... tvheadend (00c0)
/dev/mediainput0:
  No client connected

From the Configuration/TV Adapters page in tvheadend:

Hardware
Device path:
/dev/dvb/adapter0
Device name:
Sundtek DVB-C
Host connection:
PCI
Frequency range:
47120 kHz - 900000 kHz, in steps of 62 kHz
Symbolrate range:
520000 Baud - 7233000 Baud
Status
Currently tuned to:
113,000 kHz 
Services:
6
Muxes:
1
Muxes awaiting initial scan:
1

As for the "unable to query"-problem: I my scenario an USB disk i attached to my DiskStation interfered with my tuner. Maybe both devices use to much power? I don't know. Unplugging everything but one tuner helped.

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

glad to see you got it compiled OK.

As the HDhomerun is a network device, I probably don't have the power draining issue you had.

as for the mux issue, you could just try to add them manually.

Configuration -> Tv Adapters -> HDHomeRun -> Multiplexes -> Add mux(es) manually.

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

Hi Matthew - not sure where your forum post ended up, but anyway I got it via email.

321liftoff
Good that it looks like the hdhomerun is up and going, but double check that everything is linked together, the character devices are correctly pointed to the >kernel drivers and that the drivers are loaded:

these are my outputs

DiskStation> bash tvh_start
making node hdhomerun_control 57
making node hdhomerun_data 253

DiskStation> lsmod | grep dvb
dvb_hdhomerun 11056 4
dvb_hdhomerun_fe 5843 2
dvb_hdhomerun_core 1961 2 dvb_hdhomerun,dvb_hdhomerun_fe
dvb_core 78863 1 dvb_hdhomerun

DiskStation> grep DVB /proc/devices
212 DVB

DiskStation> grep hdhomerun_control /proc/misc
57 hdhomerun_control

DiskStation> grep hdhomerun_data /proc/devices
253 hdhomerun_data

DiskStation> ll /dev/hdhome*
crw-rw-rw- 1 root root 10, 57 Mar 14 06:35 /dev/hdhomerun_control
crw-rw-rw- 1 root root 253, 0 Mar 14 06:35 /dev/hdhomerun_data0
crw-rw-rw- 1 root root 253, 1 Mar 14 06:35 /dev/hdhomerun_data1

DiskStation> ll /dev/dvb/*
/dev/dvb/adapter0:
total 8
drwxr-xr-x 2 root root 4096 Mar 14 06:35 .
drwxr-xr-x 4 root root 4096 Mar 14 06:35 ..
crw-rw-rw- 1 root root 212, 4 Mar 14 06:35 demux0
crw-rw-rw- 1 root root 212, 5 Mar 14 06:35 dvr0
crw-rw-rw- 1 root root 212, 3 Mar 14 06:35 frontend0

/dev/dvb/adapter1:
total 8
drwxr-xr-x 2 root root 4096 Mar 14 06:35 .
drwxr-xr-x 4 root root 4096 Mar 14 06:35 ..
crw-rw-rw- 1 root root 212, 68 Mar 14 06:35 demux0
crw-rw-rw- 1 root root 212, 69 Mar 14 06:35 dvr0
crw-rw-rw- 1 root root 212, 67 Mar 14 06:35 frontend0

this is what my tvh_start script looks like

# Create device nodes for HDHomerun
mkdir -p /dev/dvb/adapter0
mknod /dev/dvb/adapter0/frontend0 c 212 3
mknod /dev/dvb/adapter0/demux0 c 212 4
mknod /dev/dvb/adapter0/dvr0 c 212 5
mkdir -p /dev/dvb/adapter1
mknod /dev/dvb/adapter1/frontend0 c 212 67
mknod /dev/dvb/adapter1/demux0 c 212 68
mknod /dev/dvb/adapter1/dvr0 c 212 69
# Set permissions
chmod 755 /dev/dvb/adapter*
chmod 666 /dev/dvb/adapter*/*
chown root:root /dev/dvb/adapter*/*
#
insmod /opt/dvb-core/dvb-core.ko
insmod /opt/dvb-core/dvb_hdhomerun_core.ko
insmod /opt/dvb-core/dvb_hdhomerun_fe.ko
insmod /opt/dvb-core/dvb_hdhomerun.ko
#
#lsmod to check if everything is running
#grep -i dvb /proc/devices
#
DYNAMIC_ID=$(grep hdhomerun_control /proc/misc | awk "{print \$1}")

if [ "$DYNAMIC_ID" != "" ]; then
  echo "making node hdhomerun_control" $DYNAMIC_ID
  mknod /dev/hdhomerun_control c 10 $DYNAMIC_ID
else
  echo "Unable to detect hdhomerun_control inside /proc/misc." 
fi
# Set permissions
chmod 666 /dev/hdhomerun_control
chown root:root /dev/hdhomerun_control
#
# Clear userhdhomerun log
rm -f "/opt/dvbhdhomerun/dvbhdhomerun.log" 
#
# Run userhdhomerun with LD_PRELOAD
# (because libhdhomerun.so is inside QPKG folder)
/opt/dvbhdhomerun/userhdhomerun/build/userhdhomerun \
        -f -u root -g root -l "/opt/dvbhdhomerun/dvbhdhomerun.log" 
#
sleep 1
#
DYNAMIC_ID=$(grep hdhomerun_data /proc/devices | awk "{print \$1}")
if [ "$DYNAMIC_ID" != "" ]; then
  echo "making node hdhomerun_data" $DYNAMIC_ID
  mknod /dev/hdhomerun_data0 c $DYNAMIC_ID 0
  mknod /dev/hdhomerun_data1 c $DYNAMIC_ID 1
else
  echo "Unable to detect hdhomerun_data inside /proc/devices." 
fi
#
# Set permissions
chmod 666 /dev/hdhomerun_data*
chown root:root /dev/hdhomerun_data*

Note the diskstation doesnt have udev or anything, so I have to insmod the modules etc

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by m 321liftoff over 12 years ago

I deleted the post, because I remembered that I had already asked you those questions over at the SiliconDust forum. Here's my output:

[~] # lsmod | grep dvb 
dvb_hdhomerun 10136 16 - Live 0xbf0f2000
dvb_hdhomerun_fe 5618 1 dvb_hdhomerun, Live 0xbf089000
dvb_hdhomerun_core 1861 2 dvb_hdhomerun,dvb_hdhomerun_fe, Live 0xbf062000
dvb_core 80945 1 dvb_hdhomerun, Live 0xbf4c8000

[~] # /bin/grep DVB /proc/devices
212 DVB

[~] # /bin/grep hdhomerun_control /proc/misc
 56 hdhomerun_control

[~] # /bin/grep hdhomerun_data /proc/devices
253 hdhomerun_data

[~] # ll /dev/hdhome*
crw-rw-rw-    1 admin    everyone  10,  56 Mar 12 16:50 /dev/hdhomerun_control
crw-rw-rw-    1 admin    everyone 253,   0 Mar 12 16:50 /dev/hdhomerun_data0
crw-rw-rw-    1 admin    everyone 253,   1 Mar 12 16:50 /dev/hdhomerun_data1

[~] # ll /dev/dvb/*
/dev/dvb/adapter0:
drwxr-xr-x    2 admin    administ     1.0k Mar 12 16:50 ./
drwxr-xr-x    4 admin    administ     1.0k Mar 12 16:50 ../
crw-rw-rw-    1 admin    everyone 212,   4 Mar 12 16:50 demux0
crw-rw-rw-    1 admin    everyone 212,   5 Mar 12 16:50 dvr0
crw-rw-rw-    1 admin    everyone 212,   3 Mar 12 16:50 frontend0

/dev/dvb/adapter1:
drwxr-xr-x    2 admin    administ     1.0k Mar 12 16:50 ./
drwxr-xr-x    4 admin    administ     1.0k Mar 12 16:50 ../
crw-rw-rw-    1 admin    everyone 212,  68 Mar 12 16:50 demux0
crw-rw-rw-    1 admin    everyone 212,  69 Mar 12 16:50 dvr0
crw-rw-rw-    1 admin    everyone 212,  67 Mar 12 16:50 frontend0

Some differences I notice:
(1) For the dvb devices, I use a group of "everyone" whereas yours is "root". Maybe that's where the error is?
(2) dvb_hdhomerun is dependent on dvb_hdhomerun_fe in my config, but not in your config (look at the lsmod differences). Maybe fe stands for frontend, which could be a source of problems?
(3) Also with the error pointing towards "frontend0" and frontend0 is linked to the dvb-core.ko, that makes me suspect dvb-core. How did you obtain the dvb-core? If you compiled it, what options did you use? If you explained the compile process on another forum, then you can refer me there instead of duplicating the info.

I know the feeling of being soooo close ;) Hope we can get there!

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

I've tried changing the permissions, makes no difference :-(

I had to cross-compile all the modules on a Ubuntu box.

This is what I did:

#download files to /home/administrator/Downloads

#http://sourceforge.net/projects/dsgpl/files/Synology%20NAS%20GPL%20Source/1337branch/synogpl-1373-6281.tbz/download

cd /home/administrator/Downloads
cp gcc421_glibc25_88f6281-GPL.tgz /usr/local/
cd /usr/local
tar -xpf gcc421_glibc25_88f6281-GPL.tgz –C /usr/local/
cd /home/administrator/Downloads
tar -xpf synogpl-1372-6281.tbz

cd /home/administrator/Downloads/source/linux-2.6.32/
cp /home/administrator/Downloads/source/linux-2.6.32/synoconfigs/88f6281 /home/administrator/Downloads/source/linux-2.6.32/.config

uname -r
nano Makefile *EXTRAVERSION= -33-generic

make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- menuconfig
--make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- oldconfig
make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- prepare scripts

nano .config
#-- find # CONFIG_DVB_CORE is not set
#-- change to CONFIG_DVB_CORE=m

make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- modules

cd /home/administrator/src
cvs -z3 -d:pserver:[email protected]:/cvsroot/dvbhdhomerun co -P dvbhdhomerun
cd /home/administrator/src/dvbhdhomerun/kernel

nano Makefile
KERNEL_DIR    := /home/administrator/Downloads/source/linux-2.6.32

make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-

# env CC=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-gcc \
LD=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-ld \
RANLIB=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-ranlib \
CFLAGS="-I/usr/local/arm-none-linux-gnueabi/include" \
LDFLAGS="-L/usr/local/arm-none-linux-gnueabi/lib" \
./configure \
--host=armle-unknown-linux \
--target=armle-unknown-linux \
--build=i686-pc-linux \
--disable-avahi \
--release \
--prefix=/opt/tvheadend

make 

For example, to compile 2.6 kernel modules for 5281 platform:
# cd linux-2.6.15
# cp 88f5182-config .config
# make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- oldconfig
# make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- menuconfig
# make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- modules

cd /home/administrator/Downloads/source/linux-2.6.32/drivers/media/dvb/dvb-core

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

(2) dvb_hdhomerun is dependent on dvb_hdhomerun_fe in my config, but not in your config (look at the lsmod differences). Maybe fe stands for frontend, which could be a source of problems?

fe surely does stand for frontend, I think it must be the problem.

I load the modules in this order:

insmod /opt/dvb-core/dvb-core.ko
insmod /opt/dvb-core/dvb_hdhomerun_core.ko
insmod /opt/dvb-core/dvb_hdhomerun_fe.ko
insmod /opt/dvb-core/dvb_hdhomerun.ko

I think we checked before and made them the same order...

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by m 321liftoff over 12 years ago

Yes, that's the order I'm loading them so I don't think the problem is there. Maybe there's a reason dvb_hdhomerun.ko isn't seeing the dvb_hdhomerun_fe.ko. It might be worth posting on the dvbhdhomerun forum asking the question...

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

I'm might try a new thread there, but I think Villy has been busy on other things as I haven't seen him reply to anything since your query

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by m 321liftoff over 12 years ago

I'm sure you've come across these, but check out the FAQs on both of these webpages:

http://sourceforge.net/apps/trac/dvbhdhomerun/wiki/FAQ#ConfigureforDVB-T
http://www.lex-web.net/use-hdhomerun-with-tvheadend-via-a-virtual-device-devdvbadapter1/

Are you using an ATSC tuner or something else. If something else, have you configured it per the websites above?

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

Thanks for the thought...

I'm using DVB-T (Australia) and yeah, I've changed the configuration for it in /etc/dvbhdhomerun

Keep the ideas coming though :-)

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune over 12 years ago

Thanks to villyft I have a solution!

the minor device numbers were different on my Synology box. I have no idea if they'll stay consistent on everyone's box, but this is how we worked out what they should be:
[https://sourceforge.net/projects/dvbhdhomerun/forums/forum/1223414/topic/5114083/index/page/1]

my startup script now looks like this:

# Create device nodes for HDHomerun
mkdir -p /dev/dvb/adapter0
mknod /dev/dvb/adapter0/demux0 c 212 0
mknod /dev/dvb/adapter0/dvr0 c 212 1
mknod /dev/dvb/adapter0/frontend0 c 212 2
mkdir -p /dev/dvb/adapter1
mknod /dev/dvb/adapter1/demux0 c 212 3
mknod /dev/dvb/adapter1/dvr0 c 212 4
mknod /dev/dvb/adapter1/frontend0 c 212 5
# Set permissions
chmod 755 /dev/dvb/adapter*
chmod 666 /dev/dvb/adapter*/*
chown root:root /dev/dvb/adapter*/*
#
insmod /opt/dvb_native/dvb-core.ko
insmod /opt/dvb_native/dvb_hdhomerun_core.ko
#
insmod /opt/dvb_native/dvb_hdhomerun.ko
insmod /opt/dvb_native/dvb_hdhomerun_fe.ko
#
#lsmod to check if everything is running
#grep -i dvb /proc/devices
#
DYNAMIC_ID=$(grep hdhomerun_control /proc/misc | awk "{print \$1}")
if [ "$DYNAMIC_ID" != "" ]; then
  echo "making node hdhomerun_control" $DYNAMIC_ID
  mknod /dev/hdhomerun_control c 10 $DYNAMIC_ID
else
  echo "Unable to detect hdhomerun_control inside /proc/misc." 
fi
# Set permissions
chmod 666 /dev/hdhomerun_control
chown root:root /dev/hdhomerun_control
#
# Clear userhdhomerun log
rm -f "/opt/dvbhdhomerun/dvbhdhomerun.log" 
#
# Run userhdhomerun with LD_PRELOAD
# (because libhdhomerun.so is inside QPKG folder)
/opt/dvbhdhomerun/userhdhomerun/build/userhdhomerun \
        -f -u root -g root -l "/opt/dvbhdhomerun/dvbhdhomerun.log" 
#
sleep 1
#
DYNAMIC_ID=$(grep hdhomerun_data /proc/devices | awk "{print \$1}")
if [ "$DYNAMIC_ID" != "" ]; then
  echo "making node hdhomerun_data" $DYNAMIC_ID
  mknod /dev/hdhomerun_data0 c $DYNAMIC_ID 0
  mknod /dev/hdhomerun_data1 c $DYNAMIC_ID 1
else
  echo "Unable to detect hdhomerun_data inside /proc/devices." 
fi
#
# Set permissions
chmod 666 /dev/hdhomerun_data*
chown root:root /dev/hdhomerun_data*

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by Mikkel Petersen over 12 years ago

This might be a dumb question hoon tune, but how did you install the drivers for the hdhomerun?

Could maye write a tutorial for compiling/installing the dvbdhomerun driver on a Synology, along with the any needed packages, like you did for TVHeadend itself?

I followed your tutorial for headend itself, and with a few minor differences, as mine is Intel based, I managed to get it installed, but I'm completely clueless on the driver.

Thanks in advance, Mikkel.

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by Rene Herbrich over 12 years ago

It took me about one and a half days, but I got it working on my Synology DS211+ (DSM 4.0)

At first follow hoon tune's instructions to compile tvheadend.

Then compile the SiliconDust driver/tools on your NAS.

#-- Download files to /opt

#-- Download SiliconDust driver/tools
#-- http://download.silicondust.com/hdhomerun/libhdhomerun_20120405.tgz

cd /opt
tar -xpf libhdhomerun_20120405.tgz
cd /opt/libhdhomerun

make

Based on the instructions of hoon tune here is what I did to compile the drivers (the kernel part) on Ubuntu 12.04:

#-- Ubuntu 12.04 needs the package libncurses5-dev, otherwise you get the error 'make menuconfig' requires the ncurses libraries
#-- apt-get install libncurses5-dev

#-- Download files to /home/administrator/Downloads

#-- Download Synology Kernel Sources -- has to match with the cpu in your NAS
#-- http://sourceforge.net/projects/dsgpl/files/Synology%20NAS%20GPL%20Source/1337branch/synogpl-1373-6281.tbz/download

#-- Download DSM Tool Chain -- has to match with the cpu in your NAS
#-- http://sourceforge.net/projects/dsgpl/files/DSM%204.0%20Tool%20Chains/Marvell%2088F628x%20Linux%202.6.32/

cd /home/administrator/Downloads
cp gcc421_glibc25_88f6281-GPL.tgz /usr/local/
cd /usr/local
tar -xpf gcc421_glibc25_88f6281-GPL.tgz –C /usr/local/
cd /home/administrator/Downloads
tar -xpf synogpl-1372-6281.tbz

#-- Compile DVB Core Driver

cd /home/administrator/Downloads/source/linux-2.6.32/
cp /home/administrator/Downloads/source/linux-2.6.32/synoconfigs/88f6281 /home/administrator/Downloads/source/linux-2.6.32/.config

make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- menuconfig

#-- a menu appears, where you have to set the kernel config
#-- select System Type
#-- change the system type to ARM system type (Marvel Kirkwood) -- has to match with the cpu in your NAS
#-- select Marvell Kirkwood Implementations
#-- select Synology 6281 series NAS
#-- go back to main screen of kernel config
#-- select Device Drivers
#-- go to Multimedia support, press Y to include
#-- select Multimedia support
#-- go to DVB for Linux, press M to include as module
#-- go back to main screen and exit (yes to save the new config)

make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- prepare scripts
make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi- modules

#-- Compile DVB Drivers for HDHomeRun

cd /home/administrator/src
cvs -z3 -d:pserver:[email protected]:/cvsroot/dvbhdhomerun co -P dvbhdhomerun
cd /home/administrator/src/dvbhdhomerun/kernel

nano Makefile
#-- KERNEL_VERSION := 2.6.32.12
#-- KERNEL_DIR    := /home/administrator/Downloads/source/linux-2.6.32

make ARCH=arm \ CROSS_COMPILE=/usr/local/arm-none-linux-gnueabi/bin/arm-none-linux-gnueabi-

#-- dvb-core.ko
#-- /home/administrator/Downloads/source/linux-2.6.32/drivers/media/dvb/dvb-core

#-- dvb_hdhomerun_core.ko
#-- dvb_hdhomerun_fe.ko
#-- dvb_hdhomerun.ko
#-- /home/administrator/src/dvbhdhomerun/kernel

Copy the four driver files to /opt/dvb_native of your NAS

For the userspace part, copy the dvbhdhomerun folder from /home/administrator/src to /opt of your nas

#-- Download files to /opt

#-- compiling the userspace part requires cmake, which is not available through ipkg

#-- Download CMAKE Sources
#-- http://www.cmake.org/files/v2.8/cmake-2.8.8.tar.gz

cd /opt
tar -xpf cmake-2.8.8.tar.gz
cd /opt/cmake-2.8.4
./bootstrap
make
make install

#-- compile userspace part

cd /opt/dvbhdhomerun/userhdhomerun

nano CMakeLists.txt
#-- change LIBHDHOMERUN_PATH to where the compiled SiliconDust driver/tools are
#-- SET(LIBHDHOMERUN_PATH /opt/libhdhomerun)

make

I had to reorder the insmod commands in the startup script. Otherwise insmod of dvb_hdhomerun.ko fails
because of some symbols which can't be found.

insmod /opt/dvb_native/dvb-core.ko
insmod /opt/dvb_native/dvb_hdhomerun_core.ko
insmod /opt/dvb_native/dvb_hdhomerun_fe.ko
insmod /opt/dvb_native/dvb_hdhomerun.ko

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by Mikkel Petersen over 12 years ago

Thanks Rene, will try and set up an ubuntu distro on a laptop I have lying around, and try at get it working.

Will report back:-)

[edit: removed reference to removed file]

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by Rene Herbrich over 12 years ago

Hope the instructions will help :-)

[edit: removed reference to removed file]

RE: Unable to query adapter - dvbhdhomerun on Synology NAS - Added by hoon tune about 12 years ago

I've compiled the dvbhdhomerun files for a DS210j

You can use them direct if your Synology NAS uses the same ARM processors

Download the .ko files into /opt/dvb_native

Download the startup scripts into /opt

in order
start up the hdhomerun with start_homerun
then tvheadend with start_tvh

start_tvh (314 Bytes) start_tvh start_tvh
start_homerun (2.24 KB) start_homerun start_homerun
dvb-core.ko (817 KB) dvb-core.ko dvb-core.ko
dvb_hdhomerun_fe.ko (142 KB) dvb_hdhomerun_fe.ko dvb_hdhomerun_fe.ko
dvb_hdhomerun_core.ko (59.8 KB) dvb_hdhomerun_core.ko dvb_hdhomerun_core.ko
dvb_hdhomerun.ko (298 KB) dvb_hdhomerun.ko dvb_hdhomerun.ko
    (1-18/18)