Frontplatine von SAT-Receiver an RPi

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hi zusammen,

    ich bin jetzt schon etwas länger dabei, meinen RPi in das Gehäuse eines alten SAT-Receivers einzubauen und die Frontplatine mitzunutzen. Die LED's habe ich schon per Transistor ans Laufen gebracht. Mit dem 7-Segment Display und den Tastern wusste ich bisher nicht weiter, allerdings habe ich heute nach langer Suche einen Schaltplan gefunden! :thumbs1:

    Ich würde einfach gerne die 3 Taster (Power, Up und Down) und die Anzeige nutzen können.

    Hoffentlich kann mir dabei jemand helfen, Schaltplanausschnitt ist im Anhang..

    Beste Grüße,

    Jannis

  • ist etwas tricky

    mal sehen ob ich das zusammenbekomme

    mit Data und CLK schiebst du mit 2 GPIO seriell Daten ein Byte rein,
    mit COM1 bis COM4 werden die LED Stellen gewählt, ich kann aber jetzt aus dem hier nicht die Kombinationen für alle LED Stellen sehen, dazu fehlt noch mehr Info, ABER man kann das ja ausprobieren,

    ein Byte umfasst 0-255 das über DATA mit CLK reinschieben für alle COM1 bis COM4 gibt genau 16 x 256 Möglichkeiten und dann weiss man welche Kombi für alle Zahlen in der LED Anzeige gelten.

    Die Tasterabfrage KP7 + KP5 macht man immer wenn K0 low ist mit com2 und com4 (K0 kann IMHO dauerhaft auf low = 0V = GND sein)
    KP4 kann immer an K1 abgefragt werden wenn COM1 low ist, aber das weisst du ja weil du COM1 setzen musst.


    PS 7-Segmentanzeige + PUNKT ergibt die 8 Segmente die das Schieberegister wählt, für welche Stelle macht COM1-4

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (4. Januar 2014 um 16:38)

  • Schon mal besten Dank für die Mühe! Wie kann ich das dann am besten verkabeln und das dann per Script machen? Die GPIO Pins können doch nur 1 und 0 oder? Wie kann ich die denn dann ansteuern?
    Per data was reingeben, per clk einen 01010101 geben und per com die stelle? Gibt es dafür eine Art Vorlage?

    Und die Taster kann ich dann mit cat ... gpiox/... abfragen?

    Das mit den mehreren Threads ist blöd gelaufen, ich kann die alten nicht mehr löschen..

    Einmal editiert, zuletzt von Janni501 (4. Januar 2014 um 16:57)


  • Das mit den mehreren Threads ist blöd gelaufen, ich kann die alten nicht mehr löschen..

    aber melden und um Löschung wegen doppelt bitten


    Schon mal besten Dank für die Mühe! Wie kann ich das dann am besten verkabeln und das dann per Script machen? Die GPIO Pins können doch nur 1 und 0 oder?

    ja und mehr muss doch nicht, DATA PIN auf 1 oder 0 je nach gewünschtem Bit und mit CLK 1-0-1 oder 0-1-0 reinschieben, wenn du das nicht kannst vergiss es ;)


    Gibt es dafür eine Art Vorlage?

    bestimmt, habe nur grad keinen Link zur Hand


    Und die Taster kann ich dann mit cat ... gpiox/... abfragen?

    keine deine Software die du nehmen willst nicht.....

    aber GPIO Programmiererei und Abfragerei gibt es überall

    evt. fängst du mit setzen und rücksetzen einer low Current LED 3mA und 470 Ohm oder einer ultrahellen LED und 1k Vorwiderstand an ?

    wenn das klappt, dann klappts auch mit den Bits schieben

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • Das bekomme ich hin :)
    Dann setz ich mich da mal ran und guck dann wie das so läuft, besten Dank!

    na dann berichte wenn fertig :thumbs1:

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • na dann berichte wenn fertig :thumbs1:


    ... und mir auch bitte ! :thumbs1:

    Wenn Du das hinkriegst - meine Hochachtung ist Dir (nach entsprechender Doku) sicher ! :-/

  • Gestern bin ich noch nicht dazu gekommen, meine Jumperkabel und das Steckbrett sind noch nicht da.. ich hab mir da schon selbst was gebastelt, aber auf den 434Mhz-Sender kann ich nicht verzichten, darum werde ich wohl noch ein paar Tage warten müssen..

  • Die Sachen sind zwar leider noch nicht da, allderdings bin ich schon am Überlegen, wie ich das ganze löse.

    Wir Schieberegister laufen, weiß ich, aber bei dem auf der Platine gibt es ja keinen Latch Input, also werden die Bits sofort ausgegeben, oder wie sehe ich das?
    Wenn MR ein High-Signal bekommt, werden die Outputs doch sozusagen "deaktiviert" bis wieder Low kommt, oder liege ich da falsch?

    Wenn an Com1 Low ankommt, sind alle 8 Segmente aktiv, wie kann das? Ich habe einfach 5V, Data, CLK und Com1 mit GPIO's verbunden und nichts gemacht..


  • Die Sachen sind zwar leider noch nicht da, allderdings bin ich schon am Überlegen, wie ich das ganze löse.

    Wir Schieberegister laufen, weiß ich, aber bei dem auf der Platine gibt es ja keinen Latch Input, also werden die Bits sofort ausgegeben, oder wie sehe ich das?

    siehst du richtig, jedes Bit das geschoben wird kommt auch raus, aber das macht doch nix solange die COM1-4 inaktiv ist, erst mit COM1-4 auf high= am Transistor invertiert legt die Kathoden der 7-Segmentanzeige auf GND und damit zum Leuchten (vermute ich mal weil ich die Anzeige ja nicht kenne, aber so würde das Sinn haben)


    Wenn MR ein High-Signal bekommt, werden die Outputs doch sozusagen "deaktiviert" bis wieder Low kommt, oder liege ich da falsch?

    müsste man noch mal genauer schauen, wenn du Schieberegister kennst schaffst du das selber


    Wenn an Com1 Low ankommt, sind alle 8 Segmente aktiv, wie kann das? Ich habe einfach 5V, Data, CLK und Com1 mit GPIO's verbunden und nichts gemacht..

    5V ist aber u.U. doof für den GPIO, da muss man höllisch aufpassen das man die GPIO nicht beleidigt durch 5V pullups, die mögen keine 5V.

    Den Rest müsste man durchmessen, COM1 auf low = 0V meint das den GPIO oder den Transistor ?

    Ich denke bei GPIO = low = 0V müsste der Transistor sperren am Collector = high sein ca. 5V und dann darf nix leuchten, muss man halt messen ob der Plan mit der Realität übereinstimmt und alle Bauteile OK sind. Das wäre besser vorher ohne GPIO mit Steckbrücken und oder Schalter zu testen, dann kann man jedes BIT einzeln ansteuern oder reinschieben. Notfalls das IC (und Transtistor) auslöten und high low manuell anlegen

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Also mit Com1 auf low meinte ich, dass der GPIO = 0V ist..

    Wo sollten am GPIO denn 5V Pullups ankommen, die COM1-4 sind ja alle an Transistoren wenn ich das richtig sehe und Data und CLK geben doch auch nur low oder high, warum dann 5V?

    Tut mir Leid, ich weiß da noch nicht so Bescheid..


  • Also mit Com1 auf low meinte ich, dass der GPIO = 0V ist..

    was liegt am Collector vom Transistor ? (Wahrheitstabelle aufstellen)

    EDIT:
    wah, das sind ja PNP Transistoren (hatte ich zuerst übersehen) kein Wunder das die bei GPIO 0V durchschalten und 5V an die Segmente legen und damit ist das die LED Anode !
    Also muss zum Leuchten das 74HC164 Bit im Gegenzug auf 0 = 0V sein und ist damit LED Kathode

    Ob man noch Pegelanpassung 3,3V zu 5V benötigt zum Schutz des PI wäre noch gesondert zu prüfen, die 1k Widerstände vom Transistor sind schon mal ne Strombegrenzung

    wenn du dazu nochg eine BAT42 wie hier:
    https://www.forum-raspberrypi.de/Thread-gpio-ei…=53031#pid53031
    zwischen GPIO und 3,3V legst sind die GPIO COM Leitungen schon mal sicher

    1k R wegen 5V (statt 10k wegen 24V) wie dort gezeichnet und Dioden zu CLK und DATA machen dann evt. rückwirkende pullups sicher.



    Wo sollten am GPIO denn 5V Pullups ankommen, die COM1-4 sind ja alle an Transistoren

    für die Transistoren sehe ich das mal vorsichtig ähnlich, muss noch mal später genauer gucken.


    Wo sollten am GPIO denn 5V Pullups ankommen und Data und CLK geben doch auch nur low oder high, warum dann 5V?

    jta was liegt am Schieberegister Eingang wenn nix angeschlossen ist ? vielleicht ein interner pullup ?
    Das kann man halt ohne Messen oder interne Schaltungskenntnisse des ICs nie vorhersagen, manchmal gibt es in den Datenblätter Auskunft über das Innenleben.


    Tut mir Leid, ich weiß da noch nicht so Bescheid..

    muss man aber vor zusammen verkabeln, sonst kann auch oder gerade ein PI sterben.

    Ich schaue mir das später noch mal an, jetzt ruft die Arbeit.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (6. Januar 2014 um 12:48)

  • Ah, besten Dank!

    Also 4x GPIO -|> COM1-4
    v
    _
    3.3V---|

    Ich hoffe, das ist erkennbar

    2x GPIO ->| DATA&CLK

    Am RPi gibt es ja beschriftete GPIO Pins, unter anderem CLK, unterscheidet der sich irgendwie von den anderen, weshalb ich ihn für die Clock benutzen sollte/könnte?

    Was mache ich denn mit dem 5V- oder 3.3V-Pin? Die LED's werden ja mit 5V betrieben, wozu dann der 3.3V Pin mit Bat42?

    Was macht die Bat42 denn? Bzw. was für eine Art Diode ist die denn?

    Einmal editiert, zuletzt von Janni501 (6. Januar 2014 um 13:18)


  • Ah, besten Dank!

    Also 4x GPIO -|> COM1-4
    v
    _
    3.3V---|

    Ich hoffe, das ist erkennbar

    2x GPIO ->| DATA&CLK

    ich ahne es, aber ob wir gleich reden würde ich nur am von dir gezeichnetem Plan unterschreiben


    Am RPi gibt es ja beschriftete GPIO Pins, unter anderem CLK, unterscheidet der sich irgendwie von den anderen, weshalb ich ihn für die Clock benutzen sollte/könnte?

    die CLK gehören zu I2C und SPI, klar kann man die benutzen wenn man sicherstellt welche Polarität und weiss wie zu benutzen sind. Ich habe am PI weder I2C noch SPI genutzt, aber dafür gibt es Beispiele. Fürs erste wäre einfacher und sicherer 2 freie GPIO zu nehmen und die Bits in beliebiger Polarität selber zu schieben, wenn alles läuft und die Polaritäten klar sind kann man auf I2C oder SPI gehen. I2C ist aber ein Protokoll und erwartet wohl passende Antworten die dein Schieberegister nicht liefert ! und bei SPI müsste man den Takt passend einstellen, also leicht wird das nicht.


    Was mache ich denn mit dem 5V- oder 3.3V-Pin? Die LED's werden ja mit 5V betrieben, wozu dann der 3.3V Pin mit Bat42?

    weil die GPIO nur 3,3V out liefern und auch als in nur 3,3V vertragen, sollte irgendein Frechling am GPIO gar 5V zurück liefern wollen ! so wird der Strom durch den R begrenzt und überschüssige Spannung zu 3,3V abgeleitet ! Ist eine normale Schutzschaltung die so in etwa im Atmel AVR schon serienmäßig integriert ist. (Deswegen kann ein Atmel auch parasitär ohne Vcc arbeiten, über Ports werden Spannungen nach Vcc geleitet.)


    Was macht die Bat42 denn? Bzw. was für eine Art Diode ist die denn?

    Ist eine Schottky Diode die mit geringerer Flussspannung daher kommt -> 0,2-0,3 V (gegnüber Silizium 0,7V typisch) bei den Niederstromtypen, also am Port kann sich keiner höhere Spannung einstellen als Vcc + 0,2V was die meisten Bauteile als Grenze vertragen.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Dann bestelle ich mir noch mal ein paar BAT42 Dioden, aber wo gibts die denn günstig im Internet?

    Kommen die sonst zufällig in DVD-Playern, Hifi-Anlagen oder SAT-Receivern vor?
    Dann löte ich mir da sonst einen raus :D

    Ich mach dann nachher mal per Software einen Schaltplan und poste den, okay?

    Das mit dem Scripten wird bestimmt auch noch eine spaßige Angelegenheit..:D


  • Dann bestelle ich mir noch mal ein paar BAT42 Dioden, aber wo gibts die denn günstig im Internet?

    kann ich nicht sagen, kaufe die immer so


    BAT42 Dioden
    Kommen die sonst zufällig in DVD-Playern, Hifi-Anlagen oder SAT-Receivern vor?
    Dann löte ich mir da sonst einen raus :D

    messen, DVM/DMM in Stellung Diode, wenn du in Durchlassrichtung was über 0,1 V und unter 0,4V findest ist die Chance hoch :D (Germaniaum Diode ginge ja auch, nur die werden selten)

    übrigens, nach neuerlicher Analyse reicht das high vom GPIO mit 3,3V nicht um die Transistoren für COM1-4 vollständig zu sperren !
    (ist ja leider anders als bei normalen NPN Schaltungen, da sperrt low mit 0V und öffnet high mit 0,7-1,4V was der PI ja bringt)

    Es werden also weitere Widerstände fällig.......

    ich glaube ich mache mal einen Schaltplan, per Worte ist zu unsicher....

    Plan brauchst nicht, wir müssen echte 5V und 0V an COM1-4 ausgeben von GPIO gesteuert mit nur 0 und 3,3V das geht mit einem nichtinvertierenden 74 HC 4050 Treiber, Vcc an 5V

    GPIO an Eingang vom 74 HC 4050, der zugehörige Ausgang zur Com1-4,

    http://www.hobbytronics.co.uk/image/data/misc/74hc4050.jpg

    Eingänge sind die A Pins, Ausgänge die Y Pins (die GPIO Schutzbeschaltung kann auch verwendet werden)
    ein high 3,3V aus dem GPIO schaltet 5V an COM und ein low 0V auch

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (6. Januar 2014 um 15:29)


  • Also reicht ein 74CH4050 für alle 4 COM Anschlüsse, oder sehe ich das falsch?

    siehst du richtig, du hättest sogar noch 2 Treiber frei um evtl, bei Bedarf K0 und K1 oder STB und TDER die LED zu schalten


    Brauche ich die BAT42 dann trotzdem noch?

    brauchen nicht, aber BAT42 nach 3,3V und 1k Widerstand in die GPIO Leitung ist natürlich ein zusätzlicher Schutz vor Verkabelungsfehler oder wenn das IC durchbrennt !

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • Gibt es den reichliche GPIO Pins um K1, K01, STB und TDER, die Anzeige, einen IR-Receiver und den 434Mhz-Transmitter anzusteuern?

    Wäre das realisierbar mit 2x 74HC4050 + 1x BAT42?

    wieviel freie nutzbare GPIO Pins du hast weiss ich leider nicht, ist das nicht von anderen genutzen Liberies und Hardware abhängig ?
    Es ist doch klar das einige vorbelegt sind:
    TxD, RxD die seriellen Leitungen
    1w für onewire
    SPI mit CLK für TFT am GPIO
    I2C SDA mit eigenem CLK -> SCL die nicht in jeder LIB frei nutzbar sind.

    wenn sie dir ausgehen könnte ein I2C Portexpander wie der PCF8574(A) für die K1, K0, STB und TDER in Verbindung mit 74HC4050 helfen

    wieso 1x BAT42 ? wenn du die GPIO vor eignen und anderen Fehlern schützen möchtest und willst gehört das mit R an jedem GPIO der mit mehr als 3,3V in Berührung kommen könnte ! (ich dachte glatt das hättest du mitlerweile verstanden :mad_GREEN: )

    der IR Receiver dem reicht ja 1k + BAT42 um seine 5V einem GPIO zur Auswertung zu übergeben

    also nochmal, alles was an den GPIO mit 5V gelangen könnte ! und das ist hier fast alles sollte mit 1k und BAT42 o.ä. die GPIO schützen,

    und die Schalterabfrage hängt ja auch noch dran, also werden benötigt freie 11 GPIO oder eben
    für Inputs ein I2C Portbaustein PCF8574(A) mit 5V Schutz an den GPIO, einen weiteren
    für Outputs I2C Portbaustein PCF8574(A) mit 5V Schutz an den GPIO

    dann hätte man mit 2 Portbausteinen 8 input und 8 output Leitungen sauber getrennt, kann also 8 Inputs auf einer Adresse abfragen und 8 Outputs auf einer anderen Adresse zugleich senden.

    Alle I2C Ports sollten dann sauber an 3,3V hängen und zu 5V mit Schutzbeschaltung als Eingang und Treiber 74HC4050 als Augang beschaltet sein,

    puh ob sich das lohnt ? wäre ja fast besser die gesamte Schaltung neu auf 3.3V zu trimmen

    als da wären:
    LED 2 und LED 3 auf low current mit 2-3mA bestücken oder mit ultra hellen LED und 1k Ohm Vorwiderstand direkt an GPIO
    den IR Empfänger zu TSOP 36 kHz 3,3V kompatibel zu ersetzen und an 3,3V legen
    Das IC 74HC164 ist als HC Type eh 3,3V verträglich nur ob die LED Anzeige mit 3,3V läuft weiss ich nicht, statt Transistoren QP2 - QP5 könnte man gleich einen 74 HC4050 an 5V direkt anschalten, dann wird ein high vom GPIO mit 3,3V gleich zu 5V gewandelt (also Transistoren rauswerfen). Die Tasterabfrage läuft dann mit dem IC 74HC164 gleich auf 3,3V, keine Wandlung mehr nötig.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (6. Januar 2014 um 16:34)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!