Forum: PC Hard- und Software BT878-Karte zu DVB umbauen


von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Hallo,
durch die analog und DVB-T Abschaltung gibt es haufenweise alte 
TV-Karten. Die meisten haben einem Conexant Fusion BT878-A Chip (Win95 
Zeit). Dieser ist jedoch noch kein Schrott! Man kann die alten Karten 
als ADC / 24-Pin-GPIO oder als 4x FBAS Capture Card weiterverwenden. Die 
IOs sind dabei so schnell, dass man einen modernen DVB-Tuner (parallel 
über 8 Bits) daran anschließen kann. Das habe ich nun getan.
1
[   20.602543] bttv: driver version 0.9.19 loaded
2
[   20.602546] bttv: using 8 buffers with 2080k (520 pages) each for capture
3
[   20.602664] bttv: Bt8xx card found (0)
4
[   20.602823] bttv: 0: Bt878 (rev 17) at 0000:01:00.0, irq: 21, latency: 64, mmio: 0xdbdfe000
5
[   20.602868] bttv: 0: detected: Twinhan VisionPlus DVB [card=113], PCI subsystem ID is 1822:0001
6
[   20.602869] bttv: 0: using: Twinhan DST + clones [card=113,autodetected]
7
[   20.602952] bttv: 0: tuner absent
8
[   20.602973] bttv: 0: add subdevice "dvb0"
9
[   20.672375] bt878: AUDIO driver version 0.0.0 loaded
10
[   20.672417] bt878: Bt878 AUDIO function found (0).
11
[   20.672517] bt878_probe: card id=[0x11822],[ Twinhan VisionPlus DVB ] has DVB functions.
12
[   20.672523] bt878(0): Bt878 (rev 17) at 01:00.1, 
13
[   20.930529] dvbdev: DVB: registering new adapter (bttv0)
14
[   21.432112] bt878 0000:01:00.1: DVB: registering adapter 0 frontend -356392749 (DST DVB-T)...

Ich habe den Pollin-VDR-Receiver-Tuner mit TDA10023 eingebaut. Nun hat 
die Karte noch die alte "Kennung" drinnen, und es ist im SourceCode und 
dmesg ersichtlich, wie die Karte gefunden wird: [0x11822] Er läd die DVB 
Module und geht noch von DVB-T aus.
Hier müsste ich etwas ändern.

Zur Karte: Der BT878 hat einen I2C, an dem wiederum ein Mikrocontroller 
hängt - von dem aus geht dann ein I2C zu einem Flash-Rom, und ein 
weiterer unabhängiger I2C zum Tuner. Da wurde also eine Art I2C-Router / 
Hub / Konverter eingebaut. Vermutung: Scheinbar hat der "Twinhan DST + 
clones" Treiber für den Hersteller gut funktioniert, so dass die 
I2C-Tuner-Initialisierung und Sender-Umschaltung über den weiteren µC 
gehandelt wird, ohne extra weitere (andere) Module laden zu müssen, 
damit es "Plug&Play" bleibt... Es ist nicht mal diese "Twinhan" Karte. 
Vorher war ein NXT6000 (DVB-T) Tuner drauf.

Ich habe als erstes den neuen Tuner-I2C parallel zum BT878 und den 
Mikrocontroller geschalten. Es konnte dann kein DVB mehr gefunden 
werden. :-)

Kann mir jemand etwas dazu schreiben?
Braucht der BT878 unbedingt ein ROM? Kann ich den Tuner / TDA10023 
direkt mit den I2C des BT878 verbinden, und den "überflüssigen" 
Microcontroller dazwischen entfernen?? Könnte der BT878 den Tuner über 
ein Linux-Treiber-Modul SELBER (ohne µC dazwischen) ansprechen?? Das 
Modul kenne ich noch vom Pollin VDR Receiver, allerdings habe ich ja 
kein "richtiges" I2C, sondern erst über BT878. Noch kommt die Meldung: 
'bttv: 0: tuner absent', was wohl so viel heißt wie: Kein Tuner. 
Vielleicht gehe ich die Sache auch falsch an.

Für ein paar Tipps wäre ich sehr dankbar!... Entgegen der 
Wegwerfgesellschaft. Und Sorry falls der Beitrag besser zu "µC & 
Elektronik" oder einen anderen Bereich passt - war mir nicht sicher...

: Bearbeitet durch User
von foobar (Gast)


Lesenswert?

Ich hab hier noch ne Pinnacle PCTV-SAT im täglichen Einsatz (Bt878 + 
cx24110).

Der Bt8xx hat keine eigene Intelligenz.  Die "RISC"-Code ist nur ne 
etwas bessere Scatter-Gather-DMA-Unit - der Code wird dynamisch vom Host 
erstellt und vom Bt8xx per DMA aus dem normalen Host-RAM gelesen. 
Eigenes RAM/ROM (außer ein paar FIFOs) hat der Bt8xx nicht.

Die i2c-Schnittstelle ist rein für die Benutzung vom Host - der Chip 
selbst nutzt sie nicht.

Die mir bekannten DVB-Karten mit Bt8xx nutzen den nur als 
PCI-DMA-Interface.  Dazu schicken sie die DVB-Pakete über den 
unabhängigen parallelen 8-Bit Port des Bt8xx (an sich für digitales 
Audio gedacht), der sie dann per DMA in den Speicher schreibt.  Der 
gesamte Video-Teil liegt entweder brach oder, wie bei meiner PCTV-SAT, 
ist normal wie bei ner analogen TV-Karte beschaltet (ich kann also z.B. 
DVB und Video-In gleichzeitig nutzen).

Die gesamte Logik, welcher Frontend/Tuner auf welcher Karten vorhanden 
ist und wie der angesprochen wird, steckt im bt8xx-Treiber des Kernels. 
Da der Chip mal sehr beliebt war, gibt es Myriaden von Kombinationen und 
entsprechend ist der Treiber nen ziemlicher Wust ...

von foobar (Gast)


Lesenswert?

Ach so,

> Kann ich den Tuner / TDA10023  direkt mit den I2C des BT878
> verbinden, und den "überflüssigen" Microcontroller dazwischen
> entfernen?? Könnte der BT878 den Tuner über ein Linux-Treiber-
> Modul SELBER (ohne µC dazwischen) ansprechen??

Ich kenn den TDA10023 nicht, aber mein cx24110 z.B. hängt direkt am 
i2c-Bus und wird vom Host gesteuert.  Nen zusätzlicher Mikrocontroller 
ist auf der Karte nicht drauf.  Iirc war das bei vielen Karten so - 
insbesondere bei den "passiven" ohne MPEG-Decodern.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Wow super vielen Dank für die Infos...

foobar schrieb:
> Dazu schicken sie die DVB-Pakete über den
> unabhängigen parallelen 8-Bit Port des Bt8xx (an sich für digitales
> Audio gedacht),

OK das war der "Schritt" den ich gebraucht habe. Die Tuner-Clock geht 
hier (auch) in die Audio-L/R-Frame-"Clock" rein, was mich sehr 
verwundert hat. Daten sind an GPIO 8-15. Dann werde ich als nächstes mal 
den µC entfernen, und den Tuner direkt an den I2C hängen! Danke.

: Bearbeitet durch User
von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Korrektur:
> Der BT878 hat einen I2C, an dem wiederum ein Mikrocontroller
> hängt - von dem aus geht dann DER SELBE I2C zu einem Flash-Rom, und ein
> weiterer unabhängiger I2C zum Tuner.
1
BT878  ---> ROM
2
       |
3
       ---> µC ---> Tuner

Nun ist der µC weg!
1
BT878  ---> ROM
2
       |
3
       ---> Tuner

Der I2C von Tuner hängt wieder am BT878 parallel zum ROM! Es konnte 
dieses mal sogar ein DVB gefunden werden - (demux0 dvr0 net0) es fehlt 
nur "frontend0" was dann wohl der TDA10023 ist!!? Die "Kennung" wird 
weiterhin vom ROM geliefert: 0x11822, und entsprechend will der wieder 
irgendwas "Twinhan" mäßiges laden, schafft es aber nicht mehr:
1
[   21.235549] bttv: driver version 0.9.19 loaded
2
[   21.235552] bttv: using 8 buffers with 2080k (520 pages) each for capture
3
[   21.235622] bttv: Bt8xx card found (0)
4
[   21.236273] bttv: 0: Bt878 (rev 17) at 0000:01:00.0, irq: 21, latency: 64, mmio: 0xdbdfe000
5
[   21.236306] bttv: 0: detected: Twinhan VisionPlus DVB [card=113], PCI subsystem ID is 1822:0001
6
[   21.236307] bttv: 0: using: Twinhan DST + clones [card=113,autodetected]
7
[   21.236380] bttv: 0: tuner absent
8
[   21.236397] bttv: 0: add subdevice "dvb0"
9
[   21.449116] bt878: AUDIO driver version 0.0.0 loaded
10
[   21.449164] bt878: Bt878 AUDIO function found (0).
11
[   21.449269] bt878_probe: card id=[0x11822],[ Twinhan VisionPlus DVB ] has DVB functions.
12
[   21.449274] bt878(0): Bt878 (rev 17) at 01:00.1, 
13
[   21.449276] irq: 21, latency: 64, memory: 0xdbdff000
14
[   21.506382] dvbdev: DVB: registering new adapter (bttv0)
15
[   21.734737] dst: dst_comm_init: Initializing DST.
16
[   21.734740] dst: dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
17
[   21.736728] dst: rdc_reset_state: Resetting state machine
18
[   21.736729] dst: dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0000]
19
[   21.754723] dst: dst_gpio_outb: mask=[0002], enbb=[0002], outhigh=[0002]
20
[   21.970732] dst: write_dst: writing [ 00 06 00 00 00 00 00 fa ]
21
[   21.970872] dst: write_dst: _write_dst error (err == -5, len == 0x08, b0 == 0x00)
22
[   21.970873] dst: dst_error_recovery: Trying to return from previous errors.
23
[   21.970874] dst: dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
24
[   21.990730] dst: dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
25
[   22.010859] dst: write_dst: _write_dst error (err == -5, len == 0x08, b0 == 0x00)
26
[   22.010860] dst: dst_error_recovery: Trying to return from previous errors.
27
[   22.010861] dst: dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
28
[   22.030726] dst: dst_gpio_outb: mask=[ffffffff], enbb=[0001], outhigh=[0000]
29
[   22.050725] dst: write_dst: RDC 8820 RESET
30
[   22.050726] dst: dst_error_bailout: Trying to bailout from previous error.
31
[   22.050726] dst: rdc_8820_reset: Resetting DST
32
[   22.050727] dst: dst_gpio_outb: mask=[0004], enbb=[0004], outhigh=[0000]
33
[   22.052714] dst: dst_gpio_outb: mask=[0004], enbb=[0004], outhigh=[0004]
34
[   22.070728] dst: dst_gpio_outb: mask=[ffffffff], enbb=[0000], outhigh=[0000]
35
[   22.090727] dst: unknown device.
36
[   22.090755] dvb_bt8xx: frontend_init: Could not find a Twinhan DST

Als nächstes dieses ROM entfernen???

Ich habe folgende Pins vom Tuner noch nicht angeschlossen, mangels 
Pinout und Zuordnung:
-RST / Reset
-MPEG_DATA_VAL
-MPEG_PKT_SYNC
-MPEG_ERR
-NIM Adress Select

Das muss teilweise noch an weitere GPIOs ran. Lässt sich vom LOG oder 
Treiber rauslesen, welche Pins am BT878 dafür verwendet werden? Leider 
habe ich kein Datenblatt vom alten Tuner (DVBT-6K178P1T  052280519  
NXT6000) finden können, sonnst wäre es ja einfach zu übernehmen :-) Drei 
"geroutete" GPIOs sind noch "frei" am "footprint" (THD) vom alten Tuner. 
Ich bleib dran...

: Bearbeitet durch User
von Nano (Gast)


Lesenswert?

Was ihr da macht klingt interessant.
Euren Versuchsaufbau würde ich gerne mal sehen, wenn es da etwas zu 
sehen gibt.
Ich habe noch eine alte Hauppauge WinTV Theater mit BT878 Chipsatz, das 
war eine der ersten dieses Modells. Ich weiß allerdings nicht mehr wann 
ich die gekauft habe, eventuell war das 1997.

Wenn ich mich nicht irre, dann hatte die noch einen MSP430 µC onboard, 
aber da bin ich mir nicht sicher. Ich weiß nur, dass ich mal eine TV 
Karte mit einem solchen µC hatte.
Es könnte aber auch eine DVB-T Karte sein, die ich mir später gekauft 
habe, als der analoge terrestrisches TV Senderempfang abgeschalten und 
durch DVB-T ersetzt wurde.

von Nano (Gast)


Lesenswert?

Nano schrieb:
> Es könnte aber auch eine DVB-T Karte sein, die ich mir später gekauft
> habe, als der analoge terrestrisches TV Senderempfang abgeschalten und
> durch DVB-T ersetzt wurde.

Also das mit dem onboard  MPS430.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Angehängte Dateien:

Lesenswert?

Nano schrieb:
> Versuchsaufbau würde ich gerne mal sehen

Die Spannungen kann ich auf der Karte gut selbst erzeugen. (Widerstand 
Quer nach Masse, zum Anpassen einer Rail von 2,5V auf 1,8V) Die 
"Einschaltsequenz" der einzelnen Spannungen, wie sie jemand anderer im 
Forum an diesen Tuner implementiert hat, fehlt mir komplett. Bedingt 
durch die "hintereinander geschalteten" Linear-Regler passiert das fast 
"automatisch" in Hardware. (5V muss stehen und das andere zieht etwas 
nach) Da muss ich aber eventuell nochmal "eingreifen", falls es nicht 
reicht, und falls die Spannungen im Tuner nen "latchup" verursachen.

Ich habe die Stelle des "rausgerupften" µC noch nicht gereinigt. 
Schrecklich!!! Die Leitungen am Pollin-Board sind "original" etwas 
länger, dafür aber besser geschirmt und isoliert... Das ROM ist noch 
drauf.

<Optional>
Es stehen zwei graue Drähte nach oben ab, das ist
-RST / Reset und
-NIM Adress Select
Die drei grauen Leitungen mittig / rechts sind die:
-MPEG_DATA_VAL
-MPEG_PKT_SYNC
-MPEG_ERR
welche momentan einfach "irgendwo" hängen.
Die beiden grauen Drähte rechts, die nach unten wandern sind I2C.
</Optional>


Kleiner Tipp: Die Tuner sind echt schwer raus zu löten, ohne dabei was 
zu zerstören. Mit nem Dremel und ner Trennscheibe kann man die einzelnen 
Verbindungen gut trennen, und die "halben" abgetrennten Pins als "Steg" 
zum Drähte anlöten verwenden. Schrumpfschlauch später...

: Bearbeitet durch User
von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Nano schrieb:
> Also das mit dem onboard  MPS430.

Hier "war" es ein SyncMos SM8952A @12MHz - 8052 kompatibel.
Der bedient hier nur 2x I2C (wie beschrieben) und dieses "Auflöt-Modul" 
was hier fehlt - Ich denke der µC dient weiterhin dazu irgend ein 
Singnal auf "Anwesenheit" zu erkennen - aber die ganze Bestückung und 
Beschaltung dazu fehlt. Es "endet" an 2 Klinkenbuchsen (Analog IN?) und 
1x Chinchbuchse (Digital IN?)  (unbestückt)

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Tim S. schrieb:
> welche momentan einfach "irgendwo" hängen.

Kann mir jemand sagen welche weiteren Pins des Tuners notwenig sind? 
Insbesondere mit dem
> -MPEG_DATA_VAL
> -MPEG_PKT_SYNC
> -MPEG_ERR

Und kann jemand auf seiner Karte "herausfinden" wo Reset angeschlossen 
wurde? Ich hänge als nächstes eine RGB-LED an die
> drei GPIOs am "footprint" (THD) vom alten Tuner
um es heraus zu finden!

: Bearbeitet durch User
von foobar (Gast)


Lesenswert?

> Als nächstes dieses ROM entfernen???

Ich habe gerade noch mal nachgeschaut: der 878 (im Gegensatz zum 848) 
liest nach einem PCI-Reset aus dem i2c-EEPROM (falls vorhanden; ein 
24c02, Addr 0x50) die Subsystem-ID und die Subsystem-Vendor-ID aus (4 
Bytes ab Addr 0xfc), die dann später im PCI-Config-Header erscheinen. 
Außerdem unterstützt er PCI-VPD (vital product data) und nutzt dafür das 
PROM.

Nötig ist es also nicht.  Der bttv-Treiber weiß dann aber nicht, um was 
für ein Board es sich handelt und muß von Hand konfiguriert werden.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Danke für die Infos. Ich hab die beiden I2C Pins mal "hochgehebelt", 
damit es ohne Rom Booten kann. Sonnst keine Änderungen. Aber es bootet 
nicht: Kernel-Panic "Not all CPUs in Sync" oder so - Er resettet sich 
dann nach 30 Sekunden. Das passiert jetzt IMMER wenn die Karte steckt. 
Also auch wieder mit ROM. Vielleicht hab ich den BT878 "zerstört", und 
das ganze liegt erst mal wieder auf Eis! määh Ich löte den Tuner mal 
runter, und schau dass er  mit Karte bootet und gugg was ihm grade nicht 
passt. häng

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Nääh will nicht mehr, Karte ist kaputt :-(

Kernel panic - not syncing: Timeout: Not all CPUs entered broadcast 
exception handler
Shutting down cpus with NMI.

Ich muss wieder aufgeben, schade eigentlich! Sobald ich nochmal eine 
Karte mit BT878 vom Müll "retten" konnte gehts weiter.

: Bearbeitet durch User
von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Tim S. schrieb:
> Mit nem Dremel und ner Trennscheibe kann man die einzelnen
> Verbindungen gut trennen, und die "halben" abgetrennten Pins als "Steg"
> zum Drähte anlöten verwenden.

Alles nicht optimal. Man muss den Tuner öffnen, um den Metall-Span und 
Trennscheiben-Staub wieder abzuwaschen. (Hatte ich natürlich getan!) 
Naja bis zum nächsten mal :-)

: Bearbeitet durch User
von foobar (Gast)


Lesenswert?

Evtl auch mal schauen, ob nicht ein Span im PCI-Slot gelandet ist ...

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Schade, ich fand das Projekt interessant - auch wenn der PCI-Slot ansich 
bereits in den Schrott-Abgrund hineinschaut.

Ich schaue mal ob ich noch eine Karte mit BT878 in der Restekiste habe.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

foobar schrieb:
> Evtl auch mal schauen, ob nicht ein Span im PCI-Slot gelandet ist ...

LÖL Quatsch! Hier ist es sauber! Ich habe es heraus geflext, weil die 
Lötaugen und Leiterbahnen im Tuner extrem dünn und "filigran" sind, und 
weil ich die Pollin-Platine nicht zerstören will. Man braucht sehr viel 
Hitze, und auslöten würde die Leiterplatte oder den Tuner beschädigen! 
Ich hab es mit meinen Mitteln jedenfalls nicht geschafft. Daher radikal 
abflexen!

Ben B. schrieb:
> auch wenn der PCI-Slot ansich
> bereits in den Schrott-Abgrund hineinschaut.

Weiß jemand ob die PCI-Express auf PCI-Parallel Brücken-Chips auch die 
"DMA-Transfers" gescheid handeln? Der BT878 ist ja voll abhängig 
davon... Habe "Sachen" gehört, wie dass es angeblich nicht immer 
funktioniert.

Offtopic1: Es gab mal die Audigy4 (pro) PCI. Geiles Teil. Danach kamen 
die Audigy-Xfi für PCI-Express. Bis auf ein- zwei Modelle pure 
Ramschware!! Und jetzt: Der GLEICHE Audigy4-PCI-Chip von damals wird 
wieder NEU verkauft, mit vorgeschalteter PCI-Express-Brücke. Aber gut 
dass ich die "Orginal-PCI-Version" immer noch eingebaut habe. Sie ist 
"schneller" und latenzarmer, als die neu aufgelegte Version. Ähnliches 
kann ich mir beim BT878 auch vorstellen, was ja bereits für die 
DVB-Karten "halb" passiert ist, obwohl es ein Uhr-alter IC ist, der 
hauptsächlich wegen seinen ADCs benutzt wurde, was bei DVB natürlich 
vollkommen EGAL ist... Warum: Weil es über seine "nebensächlichen" GPIOs 
trotzdem funktioniert! Der IC ist über 20! Jahre alt. Aber Was will man 
mehr??? :Offtopic1

Offtopic2: Mal was anderes:
https://www.pollin.de/p/dvb-tv-mhat-raspberry-pi-foundation-810942?&gclid=EAIaIQobChMIgJSG1Izf5AIVBeR3Ch37bwDnEAQYBCABEgIpNvD_BwE

Leider nur DVB-T. Gehen die über I2S rein? Ganz seriell? Das kann der 
Pollin/Phillips-Tuner ja "auch" im Serial-Mode mit der Data0-Line, oder? 
Vielleicht ist Rasperris I2S auch schnell genug für DVB-C!? :Offtopic2

Ich mach auf jeden Fall weiter.
Weil das Pollin Board mit seinen +40 ICs und dem ganzen Analog-Kram 
zieht echt sehr viel Strom!

: Bearbeitet durch User
von Clemens L. (c_l)


Lesenswert?

Tim S. schrieb:
> Weiß jemand ob die PCI-Express auf PCI-Parallel Brücken-Chips auch die
> "DMA-Transfers" gescheid handeln?

Auf dem PCI-Bus werden Bursts in Echtzeit verarbeitet; PCI-Express 
benutzt Pakete (mit großer Bandbreite, aber relativ hoher Latenz). Das 
wird zu einem Problem, wenn ein PCI-Busmaster einen Lesezugriff aus dem 
Hauptspeicher startet, und die Brücke noch nicht weiß, wie viele Bytes 
sie anfordern soll. Die Brücke muss da ordentlich prefetchen und cachen.

> Der BT878 ist ja voll abhängig davon...

Aber er liest nicht, er schreibt.

von foobar (Gast)


Lesenswert?

>> Der BT878 ist ja voll abhängig davon...
>
> Aber er liest nicht, er schreibt.

Er tut beides, liest den RISC-Code, schreibt Daten.

Mein Board hat ne PCIe-to-PCI-Bridge (ASMedia ASM1083/1085) und ich 
hatte zu viele Underflows.  Ist alles schon ne Weile her (ca 8 Jahre), 
aber so weit ich mich erinnere, habe ich etwas an den 
Latency-Einstellungen rumgespielt und ein paar zusätzliche ReSyncs im 
RISC-Code eingefügt.  Hat ein (auch heute noch) zufriedenstellendes 
Ergebnis geliefert.

Iirc hatte auch der vorherige Rechner kleine DMA-Probleme mit dem Bt8xx 
- da war's aber beim Schreiben.  Keine Ahnung, wie da der PCI-Bus 
angebunden war.  Was wohl immer problematisch war: mehrere Bt8xx-Karten 
in einem System - da wurde regelmäßig die verfügbare Bandbreite 
überschritten.

von Jupp (Gast)


Lesenswert?

Die Twinhan-Meldung ist normal, der TDA lieferte früher(?) Philips 
CU1216 in den Logs.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Tim S. schrieb:
> Leider nur DVB-T. Gehen die über I2S rein? Ganz seriell?

Die nehmen anscheinend SPI.
https://elinux.org/images/2/2f/ELCE2018-poster-Sony-rpi-cxd2880.pdf

von Nano (Gast)


Lesenswert?

Ersteinmal Danke für die Bilder.


Tim S. schrieb:
> Man kann die alten Karten
> als ADC / 24-Pin-GPIO oder als 4x FBAS Capture Card weiterverwenden.


Ich habe mir gerade mal das Functional Block Diagram des Bt878 
Datasheets angesehen.
Siehe:
http://pvr.sourceforge.net/Bt878.pdf

Wenn man den S-Video Eingang nimmt, dann kommen nach dem 40 MHz ADC und 
vor dem GPIO noch ein "Decimation LPF" und eine "Video Decode & Scaling" 
Einheit. Stört diese nicht, wenn man den Chip nur als ADC betreiben 
möchte oder habe ich dich da falsch verstanden?

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?


: Bearbeitet durch User
von Nano (Gast)


Lesenswert?

Ach so okay, schade und danke für den Link.

Laut verlinktem Text geht damit folgendes:
"The analog input offers 360 kHz usable BW at 8 effective bits or 100kHz 
usable BW at 12 effective bits. The digital input offers up to 20 Mbps 
for the parallel mode and 40 Mbps for the serial mode."

Es ist somit ein bisschen besser als mit einer normalen Soundkarte, aber 
da lohnt sich dann aus meiner Sicht kaum der Aufwand.

von Michael B. (mb_)


Lesenswert?

Im Linux Kernel gibt es einen Treiber "bt8xxgpio" CONFIG_GPIO_BT8XX, der 
die GPIO-Pins des BT878 dem Linux-GPIO-Subsystem (auch sysfs) 
bereitstellt.
Zum Aktivieren des Treibers muss CONFIG_VIDEO_BT848 deaktiviert werden 
(n).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.