8 way bt878a board - works-sort of: please read second reply

Post here to indicate any hardware you have used and which is known to work with ZoneMinder. Not for questions.
User avatar
JasonH
Posts: 27
Joined: Thu Dec 16, 2004 8:33 pm
Location: Yorkshire

8 way bt878a board - works-sort of: please read second reply

Post by JasonH »

Another eBay special, an 8 chip board for around the 89GBP mark. Supplied with the ususal half-working windows software! I've managed to find the manufacturers (v. slow) website with a good picture of it. Note the yellow connector at the end. There are others listed on eBay without this.

http://www.jmk.hk/ey/productShow.asp?id=342

No kernel patch for this one, it works straight out of the box on Fedora Core3 using the following entries in modprobe.conf

Code: Select all

options bttv            radio=-1 card=77,77,77,77,77,77,77,77
options tuner           type=4,4,4,4,4,4,4,4
This is the only entry I've tried since my previous card was a grandtec clone and it seems to like these settings. If anyone actually knows what they're doing I'd be really pleased to learn of the proper ones - like is one chip supposed to be the master as mentioned in another thread?

Quality is quite good, there seems to be a little horizontal "light banding" now and then which occasionally triggers an alarm in Zoneminder but for the price I'm more than pleased with it :D
Last edited by JasonH on Tue May 31, 2005 9:22 pm, edited 1 time in total.
User avatar
zoneminder
Site Admin
Posts: 5215
Joined: Wed Jul 09, 2003 2:07 pm
Location: Bristol, UK
Contact:

Post by zoneminder »

Thanks for this Jason. Have you tried using -1 for the tuners as I think that means that it doesn't have tuners, which it shouldn't nbeed anyway for ZM. I can't get any response from the site you listed, is it a single height board or double (ie with daughter board)?

Phil
User avatar
JasonH
Posts: 27
Joined: Thu Dec 16, 2004 8:33 pm
Location: Yorkshire

Post by JasonH »

Sorry guys, I may have spoke too soon. When I try to capture more than about 4 frames per second, the captured frames seem to produce a jumpy motion as though they were captured at inconsistant times. I know from the frame display in Zoneminder that they were captured at even intervals but the motion is jerky :(

Now each chip has a tiny surface mount LED next to it which lights up with the Windows sofware. Since it came with Kodicom software I tried using the kernel patch for the Kodicom card as detailed Here and this causes the LEDs to light up too but it caused the following error in the system log:
  • May 28 23:43:28 kernel: bttv0: Bt878 (rev 17) at 0000:02:08.0, irq: 11, latency: 64, mmio: 0xcdbfe000
    May 28 23:43:28 kernel: bttv0: using: Kodicom 4400R (slave) [card=133,insmod option]
    May 28 23:43:28 kernel: bttv0: Adlink RTV-24 initialisation in progress ...
    May 28 23:43:28 kernel: bttv0: Adlink RTV-24 initialisation(1) ERROR_CPLD_Check_Failed (read 3932430)
    May 28 23:43:28 kernel: bttv0: Adlink RTV-24 initialisation(2) ERROR_CPLD_Check_Failed (read 3932430)
I got a picture once but now I can't reproduce it :(

I'll have a play around but I'm afraid it may be best to go for a more proven card in the meantime.

By the way, that link does work but it's very slooow. If you can't see it, paste the entire thing into Google and click on "View Googles Cache" that's blindingly fast by comparison :P

cheers,
J
maclellan
Posts: 44
Joined: Fri Feb 25, 2005 10:57 pm

Post by maclellan »

I know the last post is quite old but did you ever get this board to work? I'm interested in 4 and 4 chip boards.

One thing to note about 4/8 chip video boards is they sometimes have incompatibilities with many motherboards. The website for your 8 chip board suggests it works with the Asus 845ep board. I've heard that often multichip boards are supported by the Intel chipset, and certainly not VIA. There are conflicts with other chipsets that cause unreliable video images to result and crashing programs.

I would be interested to know what you have found and what motherboard you attempted to use this board with.

Thanks!
User avatar
cordel
Posts: 5210
Joined: Fri Mar 05, 2004 4:47 pm
Location: /USA/Washington/Seattle

Post by cordel »

This is the company I had looked into importing boards last year. Unfortunatly they would not send just five boards for me to test out only in high quanities >200 boards. They are just as slow to corrispond with if not slower than thier site is to browse through. From the e-mail I take that they had to translate our emails so getting spacifics was not easy, so I gave up. If some can actually speak to them would be good. I'll give ya a phone line to use to call them and make arrangements :wink:
Regards,
Cordel
User avatar
JasonH
Posts: 27
Joined: Thu Dec 16, 2004 8:33 pm
Location: Yorkshire

Post by JasonH »

It's definately not a motherboard problem as the system dual boots into XP as well as FC3 and the Windows software that comes with it works ok on the XP partition.

I would re-iterate that it works fine with the card=77 option in my first post except that I had problems over 4fps.

Oh yes, my motherboard is a Elitegroup K7S5A with an AthlonXP 2000+
maclellan
Posts: 44
Joined: Fri Feb 25, 2005 10:57 pm

Post by maclellan »

Cordel:
Most exporters will send out small quantities for a one time purchase - that's standard. Maybe check with them again - perhaps they are more willing now to ship a few. But failing that I have a friend over there who might be able to get us some trials - perhaps next month.

There is another company www.chaners2000.com that sells 4 chip dvr boards for as low as 29BP. Anyone have experience with them? They will be glad to deal in trial quantities. The board kit includes all cables and connectors for 16 channels. The board is a Kodicom type.

Jason:
I've had boards that were flakey as well sometimes with "banding" you described. Sometimes one setting will make a big difference. Here is my debugging routine (i'm sure you've heard of them):

- #lspci -vv returns lots of detailed info. Check for conflicting interrupts or port assignments. You can sometimes alter interrupts/ ports in bios. Try a different pci slot to get a clue if it is HW conflict. Also try disabling

- #dmesg >>dmesgtext , read the dmesgtext to see what error occured during boot-up

-#v4l-info , to see how driver is talking to card. look for unusual values.

-#modinfo bttv, some bttv driver stats.

- In ZM you must define monitors for each input even if they are switched to 'none'. I've had strange results when this didnt happen. Also if there is no active camera its a good idea to keep it at 'none'.

- In ZM be sure to limit the number of buffers. The default is 40 which might be too much. I lower mine to 25 total per chanel.

- Change shared memory setting - it's a must! in /etc/sysctl.conf add a line like kernel.shmmax=150994944, (with 256M ram)

- Pay close attention to log messages in /tmp especially zm related files. This always gives a clue.
User avatar
cordel
Posts: 5210
Joined: Fri Mar 05, 2004 4:47 pm
Location: /USA/Washington/Seattle

Post by cordel »

Phil:
maclellan post above might be good for either the FAQ or How to trouble shoot.

maclellan:
Thanks for above how too. Some know it but we expect that everyone else does too so a good idea to have that available for all.
I Suspect that the language barrior was the largest problem at that time. Now my situation has changed so at the moment I can not import that quanitiy if I managed to get them to work so no point on me tring.

Regards,
Cordel
User avatar
zoneminder
Site Admin
Posts: 5215
Joined: Wed Jul 09, 2003 2:07 pm
Location: Bristol, UK
Contact:

Post by zoneminder »

Yes, some good advice there. I'll try and do some FAQ updates in thenext couple of days.

Phil
conor
Posts: 28
Joined: Fri Sep 26, 2003 8:59 pm

Post by conor »

Jason,

You were getting most success with card type 77 but it wasn't working over 4fps. Well card type 77 is for a four input card and by doing what you are doing you are saying that each 878A device is using it's four inputs. I believe that this board is just 8 inputs and dedicates each input to the one chip so you define 8 instances of a 1 input board.

The cards are defined in bttv-cards.c and what you are looking for there is one with 1 input so that entry will have the line:

Code: Select all

.video_inputs   = 1
Note that there should be a tab between the s and the = sign but spaces are there for those entries that have only one input (Grrrr!). There is also an entry for muxsel for each card which will have as many values as inputs. This is the value that is fed to 878A to define which of the 4 possible inputs is used (MUX0=2, MUX1=3, MUX2=1 and MUX3=0 just to be confusing). Therefore if the one input is fed to the first input then you are looking for a value of 2 as the only entry in muxsel. Card type 102 seems to fit the bill (assuming there is a 28 MHz crystal on board). If that doesn't work then try card type 85.

Because you are going to be creating a lot of frames if you enable all these cards together I suggest you do a couple of things. One is try it with just one card entry (card=102) and then start adding some more as you are confident of the ability of your machine to cope. The other thing is that the bttv driver could do with a few extra buffers in my opinion if you are not going to drop frames so set the value of gbuffers to be higher than the default 8, say 16 if you can. So hopefully your final configuration will be started by the line:

Code: Select all

modprobe bttv gbuffers=16 card=102,102,102,102,102,102,102,102
and you should then get 25fps for each card. Why were you only getting 4fps maximum before? Well because you were specifying a card with 4 inputs, the bttv driver was sharing the frame rate of 25fps (for PAL) with 4 inputs giving a theoratical maximum of 6.25fps but because four inputs are rarely synchronised you typically see a maximum of 4 fps for each input (it was probably waiting at each of the dead inputs).

Looks like you have a Kodicom KMC-8800 or what is a clone of it all right from the web site reference you supplied. Please take a good straight on picture of the card without glare (natural daylight might be best) and stick it somewhere on the web. The reason for this is so that the card details can be added to the V4L wiki and if we gather enough information on it, it can get it's own card type like it's sister KMC-4400R card.

The 4400R uses a mux which needs to be set up to the appropriate input which is why LEDs were lit when driving your card with that card type. If you can please get the 878A data sheet from Conexant and see which pins the LEDs and other chips are connected to on this board.

Please indicate the chip number of the chips to the left and right of the big chip in the centre out of interest. I don't believe this card has a mux like the 4400R but just in case there could be some indication of other tasks that would lead this board to be composed of two card types like the 4400R.

I don't know what Phil thinks but I wouldn't go for motion detect on 8 inputs that were coming in at 25fps because of the amount of time that processing would take.

I hope this info resolves your problems.

Regards,

Conor Downey
jameswilson
Posts: 5111
Joined: Wed Jun 08, 2005 8:07 pm
Location: Midlands UK

Post by jameswilson »

wow what a post. Conor i think ur expertise on this subject will be damn usefull.

When i get round to it i have a couple of 4 chip cards i cant get working so ill be asking you about them.
Great answer though very informative.

James
conor
Posts: 28
Joined: Fri Sep 26, 2003 8:59 pm

Post by conor »

Thanks James

But looking back at that post my advice about only trying one card=102 at first is baloney because of course the bttv driver is going to try and autodetect all the other 878A devices it finds anyway so it is a very bad idea :oops: and instead it is fine to put in all the card definitions at once.

In terms of processing it is only if he immediately defines zoneminder to work with all 8 devices at once that there could be a problem. I'd say add add one at a time and check the loading on the machine after each one is added.

Oh yeah and I forgot the radio=-1 parameter as Jason originally had because it may not be in his kernel (latest CVS V4L stuff has additional definitions relating to radio for each card type). So therefore from the outset the line for the modprobe is:

Code: Select all

modprobe bttv gbuffers=16 radio=-1 card=102,102,102,102,102,102,102,102
On another point there should be no_gpioirq parameter in the definition for this card type because the GPIO interreupt (the GPIO[8] input causing an interrpt) is something that this card is unlikely to use and it can be a nuisance otherwise.

Conor Downey
User avatar
JasonH
Posts: 27
Joined: Thu Dec 16, 2004 8:33 pm
Location: Yorkshire

Pictures

Post by JasonH »

Hi Conor,

Thanks for the detailed advice in your replies, I'll have a go with them and let you know how it goes.

Now as for the pictures, I messed about with my digital camera for a while but with poor results. As a last resort, I sat the thing on my Canon scanner and - to my surprise - got the an amazingly detailed picture despite the PCI bracket lifting it off the glass by nearly a centimeter!

You can even read the frequency of the crystal (you were right it is 28MHz).

http://www.jasonh.vispa.com/Card_Front.jpg

http://www.jasonh.vispa.com/Card_Back.jpg

cheers,
J
conor
Posts: 28
Joined: Fri Sep 26, 2003 8:59 pm

Post by conor »

Jason,

Excellent quality pictures of your card. Everything on there looks standard enough except for the Lattice chip which is

It looks fairly standard so my suggestion of using card number of 102 is probably good - if you don't get any picture change the mexsel value as I suggested. I'd leave out the gbuffers=16 though for now as that will mean a lot of memory is taken up that you may not have. The default (which is 8) for gbuffers should give sufficient frame storage. I only realise now that the gbuffers are actually allocated on a per card basis so too high a value and it will use up all your memory.

I note that your dmesg output shows PCI latency=64 which is a higher value than the 32 I get on Intel based boards with the same hardware. I think that the Elite K7S5A motherboard that you are using is based on the Via chipset so I doubt that you would get all 8 channels working at the full frame rate as the board/processor just are not up to it. Try only one channel to begin with.

Post how you get on with this board as it is one that could be included in the kernel/v4l-wiki if it is proven to work.

Regards,

Conor
User avatar
JasonH
Posts: 27
Joined: Thu Dec 16, 2004 8:33 pm
Location: Yorkshire

Post by JasonH »

This card is working with conors settings and the error messages have gone. Although I'm still having problems at capture rates higher than 4fps. Basically if an object like a car is captured it moves unevenly when played back. This is especially evident when using slow playback or frame by frame as the distance the object moves varies quite a lot between frames. Strange that there are no sync problems in xawtv though.

On balance I am happy with the card as using higher frame rates really pushes up the CPU usage in any case.

Thanks all for your help.
Post Reply