Linux DVB driver = success

HDHomeRun development

Moderator: Moderators

Postby tfylliv » Sun Mar 06, 2011 12:33 pm

Not quite certain how it works on Fedora - but usually this error indicates that you need to install a kernel header package.

Check for a package named something like "kernel-headers" for you current kernel and try to install that.
tfylliv
Expert
 
Posts: 106
Joined: Sat Sep 04, 2010 3:08 pm

I have kernel-headers installed

Postby bjrosen » Sun Mar 06, 2011 6:41 pm

I do have kernel-headers installed, it's not included in the Fedora kernel headers.
bjrosen
 
Posts: 4
Joined: Sat Mar 05, 2011 6:06 pm

Re: I have kernel-headers installed

Postby tfylliv » Mon Mar 07, 2011 3:48 am

bjrosen wrote:I do have kernel-headers installed, it's not included in the Fedora kernel headers.


Bugger. I remember having the same problem with Debian, there I ended up building me own kernel to get a directory with all the kernel headers.

Anyway, looks like you on Fedora can do something like this:

http://www.g-loaded.eu/2005/12/14/the-c ... l-headers/

Old article though. But it looks simple enough.

When/if you can get the above to work, there is a "KERNEL_DIR" in the dvbhdhomerun/kernel/Makefile that you need to point to the kernels source you just created.
tfylliv
Expert
 
Posts: 106
Joined: Sat Sep 04, 2010 3:08 pm

Postby mikaelhm » Mon Mar 07, 2011 2:53 pm

I just found a small bug in the kernel make file, it does not work if there is a space in the path to the src folder my download folder on Ubuntu (danish) is called "Hentede Filer".

It took me quite a while to figure this out :)
mikaelhm
 
Posts: 6
Joined: Mon Jan 25, 2010 3:19 am

Re: Trying to build on Fedora 14

Postby tfylliv » Sat Mar 12, 2011 3:18 pm

Hey bjrosen,

bjrosen wrote:I'm trying to build 0.0.8 on Fedora 14. I have the hdhomerun development package installed. I haven't gotten very far, it can't find dvb_demux.h. I see that file in a kernel.org kernel but not in the Fedora kernel, what do I need to install?


I had a little time to kill on a train ride so tinkered a bit with building on fedora 14. Its a little cumbersome but can certainly be made to work. I've put up my notes here:

https://sourceforge.net/apps/trac/dvbhd ... i/Building

And if anybody else has some notes on getting it to build on strange versions of Linux do send them to me I will then gather them on that page.
tfylliv
Expert
 
Posts: 106
Joined: Sat Sep 04, 2010 3:08 pm

tvheadend

Postby nojstevens » Sun May 08, 2011 12:52 pm

Hello,

Hoping someone here may be able to help me. I did a clean ubuntu install, installed dvbhdhomerun and tvheadend. I could see my 2 x ATSC HDhomerun in the TV Adapters list. Added muxes, services and set up EPG - all was working great. BUT - now I don't have the tuners showing up anymore. I've added the startup command as detailed in the FAQ, but I cannot get tvheadend to recognize my tuners anymore. If I type userhdhomerun this is what i get...

Num of devices = 1

Name of device: 1015FA74-0
Tuner type set to "ATSC" based on conf file
Tuner: 0
Set initial pass-all filter for tuner: 1

Name of device: 1015FA74-1
Tuner type set to "ATSC" based on conf file
Tuner: 1
Set initial pass-all filter for tuner: 1

Couldn't open: /dev/hdhomerun_control

Anyone help me?

Jon
nojstevens
 
Posts: 15
Joined: Sun Mar 22, 2009 11:37 am

Postby nojstevens » Sat May 21, 2011 5:13 am

Hello,

Still not got this resolved - did another totally clean 10.4-2 and installed TVheadend and followed all the info on dvbhdhomrun and from the xbmc forum. My ATSC HDHomerun is seen by Ubuntu, I can scan on hdhomrun_config and it works fine, but when I go to the tvheadend page my tuners don't appear.

I have had it working once - both appeared, but then after a reboot they were no longer there. I see almost a quick flash of something in the pull down list

Really looking for some suggestions on this - i feel I am 99% there but missing something.

At one point I did have it all working as I said, got tvheadend PVR plugin in XBMC connected and added services and guide and was happily watching TV in XBMC, but it did not survive a reboot :-(

What am I doing wrong?

Jon

(if I run a scan, this is the response I get)
$ scan /usr/share/dvb/atsc/*
scanning /usr/share/dvb/atsc/us-ATSC-center-frequencies-8VSB
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
main:2273: FATAL: failed to open '/dev/dvb/adapter0/frontend0': 2 No such file or directory

I also think I might have two tvheadends running - if I type sudo service tvheadend stop then I can still connect to the web page ??

Also, if I do stop tvheadend and type sudo userhdhomerun then I do see my tuners in tvheadend

Jon
nojstevens
 
Posts: 15
Joined: Sun Mar 22, 2009 11:37 am

Postby tfylliv » Sat May 21, 2011 11:28 am

Hey Jon,

Let's get a little more information and see what can figure out.

nojstevens wrote:I also think I might have two tvheadends running - if I type sudo service tvheadend stop then I can still connect to the web page ??


That most likely means tvheadend is still being started by init.d script instead of the upstart script.

After doing "sudo service tvheadend" stop, try also doing a:

sudo /etc/init.d/tvheadend stop

Does that stop tvheadend? (ps aux | grep tvheadend easily show if it is running)

nojstevens wrote:Also, if I do stop tvheadend and type sudo userhdhomerun then I do see my tuners in tvheadend


Ok, that would definately indicate that the userhdhomerun aren't being start automatically. Try deleting the logfiles (sudo rm -rf /var/log/dvbhdhomerun.*) and reboot - what does the logfile say after reboot? If empty, then we know it isn't being started.
tfylliv
Expert
 
Posts: 106
Joined: Sat Sep 04, 2010 3:08 pm

Postby nojstevens » Sat May 21, 2011 4:02 pm

Hi, thank you so much for the post. I have some answers to your questions...

The first sudo service tvheadend stop still has the web service running

I then typed

sudo /etc/init.d/tvheadend stop

web still running

so I typed it again (sudo /etc/init.d/tvheadend stop)

web stopped.

Next I deleted the log files and restarted, this is what the new log file says after a reboot.

Running as group: video
Num of devices = 0
No HDHomeRun devices found! Exiting

If I then type

userhdhomerun

I get Couldn't open: /dev/hdhomerun_control

but if I type sudo userhdhomerun then it works

This is a clean install today so i've clearly messed it up real good, but I can't figure out why!

Thanks for any tips

Jon
nojstevens
 
Posts: 15
Joined: Sun Mar 22, 2009 11:37 am

Postby tfylliv » Sun May 22, 2011 3:00 am

Hey Jon,

Lets make sure the driver is good first.

nojstevens wrote:Next I deleted the log files and restarted, this is what the new log file says after a reboot.

Running as group: video
Num of devices = 0
No HDHomeRun devices found! Exiting

If I then type

userhdhomerun

I get Couldn't open: /dev/hdhomerun_control

but if I type sudo userhdhomerun then it works


All this would indicate that the /dev/hdhomerun_control device isn't created with the standard group "video" - check that first:

Code: Select all
tfylliv@zotac:/etc$ ls -al /dev/hdh*
crw-rw---- 1 root video  10, 55 2011-03-18 00:39 /dev/hdhomerun_control


If you don't see that "video", then you are missing the rule for udev that makes this happen. E.g. this one:

/lib/udev/rules.d/59-dvbhdhomerun-utils.rules

with the following contents:

Code: Select all
KERNEL=="hdhomerun_data[0-9]*", GROUP="video"
KERNEL=="hdhomerun_control", GROUP="video"
tfylliv
Expert
 
Posts: 106
Joined: Sat Sep 04, 2010 3:08 pm

Postby nojstevens » Sun May 22, 2011 3:59 am

Hi tfylliv,

I checked the rules file and I have the two KERNEL statements that you sent

KERNEL=="hdhomerun_data[0-9]*", GROUP="video"
KERNEL=="hdhomerun_control", GROUP="video"

Also, last night I did another clean install. (I have the state saved as a snapshot from my earlier enquiry - I checked the above on the snapshot and that statement is there too)

I believe I now have only one tvheadend running. If I reboot I must start userhdhomerun as root and then stop and start the tvheadend service. If I do this then everything works.

My guess is therefore that userhdhomerun is not starting as boot so when the tvheadend service starts it is not there? Would you agree, and if so how do I fix it?

When I install tvheadend and the dvb stuff I am logged on as a user, not as root - could this be why I am having issues?

Jon
nojstevens
 
Posts: 15
Joined: Sun Mar 22, 2009 11:37 am

Postby rmoliner » Sun May 22, 2011 4:26 pm

Hello,

I am trying to install dvbhdhomerun to be used with "tvheadend + xbmc.pvr"
Currently, I am running tvheadend + xbmc.pvr with some USB DVB-S2 devices without any problems.
To be able to use these USB DVB-S2 hardware, I installed S2-liplianin (http://www.linuxtv.org/wiki/index.php/S2-liplianin)

I am tried to follow all the steps indicated in this forum and in dvbhdhomerun sourceforge, but finally I am not able to run the driver.
Maybe I made something wrong.

Please, Can you help me to find the problem?
Thanks in advance.





My system is Ubuntu 10.10 x86_64 (kernel 2.6.35-28-generic)

The "HDHomerun Config" dectects the device.

cat /etc/modules
lp
rtc
dvb_hdhomerun

cat /etc/dvbhdhomerun
[1210214B-0]
tuner_type=DVB-T

[1210214B-0]
tuner_type=DVB-T

cat /lib/udev/rules.d/59-dvbhdhomerun-utils.rules
KERNEL=="hdhomerun_data[0-9]*", GROUP="video"
KERNEL=="hdhomerun_control", GROUP="video"

The "video" group exists. And My user account is added to "video" group

When I make the make install for $SRC/kernel, I got these warnings:
WARNING: /lib/modules/2.6.35-28-generic/kernel/drivers/staging/cx25821/cx25821-alsa.ko needs unknown symbol videobuf_sg_dma_map
WARNING: /lib/modules/2.6.35-28-generic/kernel/drivers/staging/cx25821/cx25821-alsa.ko needs unknown symbol videobuf_sg_dma_unmap


Note:
I think that videobuf_sg_dma_map/unmap were removed from Linux kernel from 2.6.35 and above
Search for "V4L/DVB: videobuf: Remove the videobuf_sg_dma_map/unmap functions" in:
http://www.kernel.org/pub/linux/kernel/ ... 5-git2.log



sudo service tvheadend stop
sudo userhdhomerun

Num of devices = 1

Name of device: 1210214B-0
Tuner type set to "DVB-T" based on conf file
Tuner: 0
Set initial pass-all filter for tuner: 1

Name of device: 1210214B-1
Auto detecting tuner type
Type of device: hdhomerun_dvbt
Tuner: 1
Set initial pass-all filter for tuner: 1

Couldn't create tuner! ioctl failed. This means the kernel module is either not loaded or has malfunctioned. Check dmesg.
Couldn't create tuner! ioctl failed. This means the kernel module is either not loaded or has malfunctioned. Check dmesg.


ls -al /dev/hdh*
-rw-r--r-- 1 root root 0 2011-05-23 00:21 /dev/hdhomerun_control

dmesg
May 23 00:42:48 Teulix kernel: [ 81.526574] dvb_hdhomerun: disagrees about version of symbol dvb_frontend_detach
May 23 00:42:48 Teulix kernel: [ 81.526578] dvb_hdhomerun: Unknown symbol dvb_frontend_detach (err -22)
May 23 00:42:48 Teulix kernel: [ 81.526738] dvb_hdhomerun: disagrees about version of symbol dvb_unregister_frontend
May 23 00:42:48 Teulix kernel: [ 81.526740] dvb_hdhomerun: Unknown symbol dvb_unregister_frontend (err -22)
May 23 00:42:48 Teulix kernel: [ 81.526883] dvb_hdhomerun: disagrees about version of symbol dvb_register_frontend
May 23 00:42:48 Teulix kernel: [ 81.526885] dvb_hdhomerun: Unknown symbol dvb_register_frontend (err -22)
rmoliner
 
Posts: 7
Joined: Thu Dec 17, 2009 12:15 pm

Postby wilagobler » Tue Jun 21, 2011 11:01 pm

nojstevens wrote:Next I deleted the log files and restarted, this is what the new log file says after a reboot.

Running as group: video
Num of devices = 0
No HDHomeRun devices found! Exiting


The problem is in the upstart script /etc/init/dvbhdhomerun-utils.conf

Code: Select all
start on (filesystem and net-device-up and started udev)


The net-device-up event is emitted as soon as lo is up, before the real network has started. userhdhome then runs a discover when only the lo interface is running which of course fails.

To fix it change /etc/init/dvbhdhomerun-utils.conf to
Code: Select all
 start on (filesystem and net-device-up IFACE!=lo and started udev)


Which means at least one real interface is configured before running userhdhomerun.
wilagobler
 
Posts: 1
Joined: Tue Jun 21, 2011 10:35 pm

Postby mrmachine » Sun Jul 17, 2011 6:09 am

Thanks for creating this driver. I just installed the packages from launchpad, changed /etc/dvbhdhomerun so that both tuners are DVB-T (I'm in Australia), but Tvheadend shows each tuner as "HDHomeRun ATSC", and I only see networks by location for the US. Normally (with another DVB-T card I have installed) there are networks for Australia. When I try to add manually nothing happens, either. I think I read somewhere that there is a bug in Tvheadend about adding muxes manually for ATSC.

Do I need to do something else to get the HDHomerun recognised as a DVB-T device? I saw some posts about changing something in the source and re-building, but I thought that was fixed in the latest version (0.0.9.1) and that this should be configured in /etc/dvbhdhomerun?

Cheers.
mrmachine
 
Posts: 7
Joined: Sun Jul 17, 2011 5:56 am

Postby tfylliv » Sun Jul 17, 2011 3:28 pm

mrmachine wrote:Thanks for creating this driver. I just installed the packages from launchpad, changed /etc/dvbhdhomerun so that both tuners are DVB-T (I'm in Australia), but Tvheadend shows each tuner as "HDHomeRun ATSC", and I only see networks by location for the US.

Do I need to do something else to get the HDHomerun recognised as a DVB-T device?


No, that would do it. But check you /var/log/dvbhdhomerun.log to be sure you did it correct, something like the following:

Code: Select all
Running as group: video
Num of devices = 1

Name of device: 1210E3DC-0
Tuner type set to "DVB-C" based on conf file
Tuner: 0
Set initial pass-all filter for tuner: 1

Name of device: 1210E3DC-1
Tuner type set to "DVB-C" based on conf file
Tuner: 1


If that is OK, you have probably run tvheadend before changing the /etc/dvbhdhomerun conf file to DVB-T. In that case tvheadend can be "stuck" on thinking the tuners is ATSC. Do this:

1) Stop tvheadend (sudo /etc/init.d/tvheadend stop)
2) Stop dvbhdhomerun (sudo service dvbhdhomerun-utils stop)
3) navigate to: /home/hts/.hts/tvheadend
4) In the following subdirs: dvbadapters, dvbtransports, dvbmuxes.
5) Go into each of them, and delete files concerning the wrong ATSC tuners.

6) Start dvbhomerun (sudo service dvbhdhomerun-utils start)
7) Start tvheadend (sudo /etc/init.d/tvheadend start).
8 ) Profit? ;-)
tfylliv
Expert
 
Posts: 106
Joined: Sat Sep 04, 2010 3:08 pm

PreviousNext

Return to Development - HDHomeRun

Who is online

Users browsing this forum: No registered users and 1 guest