Dieses Blog durchsuchen

Ärger mit HDMI Upscaler

Dieses Teil hier habe ich mir über ebay bestellt. Es ist dies ein Video - "Upscaler", also ein Teil, das den alten analogen Videostandard (Composite CVBS) digitalisiert und in den HD-Standard 720p bzw. 1080p hochrechnet und über eine HDMI Buchse ausgibt. Gedacht ist es, um den Output eines alten VHS-Recorders, einer alten Spielekonsole oder des guten alten Commodore C64 auf den Fernseher, oder eher auf einen Computermonitor zu bekommen, der einen digitalen Eingang (DVI) hat. So also der Plan. Also im Netz gesucht und unter vielen Angeboten ein Gerät gefunden, das neben den Chinch Buchsen für CVBS-Video und Audio L,R auch noch einen HDMI Eingang besitzt. Cool - dachte ich. Mit drei Tasten soll man Auflösung, 50/60Hz (Pal/NTSC-TV Norm) und eben den Eingang umschalten können.

 Also bestellt, bezahlt und auch geliefert bekommen. Und gleich einen ersten Test, wie denn die Bildqualität am PC-Monitor so sei, begonnen. Also das Gerät (in einer Mattschwarzen Metallbox - optisch gut verarbeitet) angeschlossen, das mitgelieferte 5V Steckernetzteil eingestöpselt und in freudiger Erwartung auf den Bildschim gestarrt. Da stand aber ausser "kein Signal" nur mehr ... eben "kein Signal".
Also erstmal überprüft, ob Saft da ist. Ja - die rote Led am Gerät leuchtete. Dann die Kabelverbindungen überprüft, andere Kabel bzw. Adapter verwendet - nichts. Danach versucht, vom Raspi über HDMI an die Box, dann weiter über HDMI an den TV ... nichts. Dann alle möglichen Tasten und Kombinationen gedrückt ... wieder nichts. Als Endkontrolle dann den Raspi direkt mit dem TV über HDMI verbunden - und bumm - Bild ist da. Also muß was mit dem Converter nicht stimmen. Kein Problem dachte ich, reklamieren und zurücksenden. Genau das habe ich nach Absprache mit dem Lieferanten auch gemacht. Dann passierte erstmal nicht. Keine Rückerstattung, kein neues Gerät. Die Zeit verging ... knapp sechs Wochen später kam dann der Paketdienst - aber er brachte keinen neuen Converter, sondern mein Paket wieder zurück. Mit dem Postvermerk "wurde nicht abgeholt". Also wieder den Lieferanten kontaktiert... er habe nichts erhalten, auch keinen Abholschein, bekam ich zu hören. Ich solle das Paket einfach noch einmal versenden. Die Kosten für den Rückversand trage er aber nicht. (wieder nicht). Das war jetzt genug. Das Hin- und Hersenden übersteigt ja schon fast den Warenwert. Da von diesem Händler kein kulantes Verhalten zurückkam, kam von mir eine negative ebay-Berwertung und ich verzichtete auf den ganzen Rechtsanspruch und Käuferschutz. Dafür nahm ich das Gerät unter die Lupe.

Auf den ersten Blick sieht das Innenleben recht ordentlich aus. Wenn man aber genauer hinsieht, dann erkennt man eine Verarbeitung nach "Fernostqualität". Der MST6M181VS-LF-Z1 Videoprozessor Chip beispielsweise, wurde bei der Bestückung scheinbar nicht exakt positioniert und leicht verdreht festgelötet. Auch war zwischen den Pads und den Anschlussbeinchen des IC´s ein Spalt zu erkennen. Und hier ist auch das Problem. Als ich testweise mit den Fingern Chip und PCB zusammendrückte, startete der Upscaler und zeigte am ein TV ein kleines Infofenster mit Auflösung und Scanfrequenz.
IC ist schlecht positioniert
Das bedeutet, dass es hier Verbindungsprobleme gibt. Also startete ich den Versuch, mit der Reworkanlage und einwenig Kolophonium, den Chip nachzulöten. Das gelang auch, und der Scaler startet jetzt immer zuverlässig.

Nachlöten mit Heißluft
Aber leider hielt das nur kurze Zeit, er startet zwar immer noch, zeigt aber nur mehr wirre Pixel und bunte Flächen an. Vermutlich hat der Reworkprozess den Chip zu sehr gestresst und ihm ein vorzeitiges Ende bereitet. Also noch einmal mit der Heißluft nachgelötet (kann ja sein dass immer noch eine Lötstelle nicht passt), aber das Ergebnis war dasselbe.

Arduino mit Matlab

Heute möchte ich ein Thema vorstellen, mit dem ich mich kurz im Rahmen einer Recherche beschäftigt habe. Viele (Techniker) kennen vielleicht die Software Matlab von der Firma Matworks. Das ist ein extrem umfangreiches Softwarepaket, das bei uns in der Lehre eingesetzt wird, um Studierende in allen möglichen technischen Bereichen zu unterrichten. Sei es Signalverarbeitung, Regelungstechnik, Bildverarbeitung, etc. - Matlab ist das Tool, um all das professionell umzusetzen. Auch wenn es um Messdatenerfassung geht, muß man nicht unbedingt auf Tools zurückgreifen, mit denen ein Projekt oder Programm "gezeichnet" wird. Das ist zwar toll für den Einstieg, kann (und wird) in späterer Folge aber aufgrund des riesigen Overheads und der benötigten PC Resourcen viel zu umständlich, wenn man schnell einmal über eine externe Hardware irgendwelche physikalischen Größen aufzeichnen und verarbeiten will.

In diesem kleinen Projekt'chen möchte ich nun zeigen, wie einfach man mit Hilfe eines Arduino Uno Boards zusammen mit Matlab eine Temperaturmessung realisieren kann. Der Sensor soll hier ein ganz einfacher NTC Widerstand sein. Das bedeutet, der ohmsche Widerstand des Bauteils ändert sich mit der Temperatur, in dessen Umgebung sich das Bauteil befindet. Die Änderung passiert hier folgendermaßen: wenn die Temperatur steigt, so wird der ohmsche Widerstand kleiner. (Negativer Temperatur Koeffizient) (Coefficient engl. -> NTC). Einziger kleiner Haken - die Änderung passiert nicht linear wie zum Beispiel beim PT100. Das bedeutet der Verlauf  des Widerstands bei Änderung der Temperatur ist keine Gerade mit irgendeiner Steigung, sondern eine e-Funktion. Das wiederum bedeutet, dass, will man aus den gemessenen Widerstandwerten in eine Temperatur zurückrechnen, die Funktionsgleichung zum NTC gefunden werden muß. Glücklicherweise findet man diese aber fix und fertig in den Herstellerdatenblättern ;) aber dazu später.

Man hat nun einen temperaturabhängigen Widerstand, ein Arduino Uno - Board und einen PC auf dem Matlab läuft. Wie geht´s nun weiter? Nehmen wir als Beispiel an, dass Matlab 2014b installiert ist. Nun gibt es in Matlab unter dem Tab "Home" eine Rubrik, die sich "Add-Ons" nennt. Klick man auf  diese, so klappt ein Menü auf, in dem man den Eintrag "Get Hardware Support Packages" findet. Den klickt man an und es öffnet sich ein Fenster namens "Support Package Installer".
Unter "Install from Internet" und "Next>" kommt man zu einem Auswahlmenü der verfügbaren Packages. Hier sucht man sich "Arduino" aus und setzt im rechten Bereich des Fensters einen Haken - und zwar bei dem Paket "Aquire inputs and send outputs on Arduino Uno...". Danach wieder auf "Next>" klicken und die Installation vollenden.

Ist alles erledigt so kann man den Arduino am USB-Port anstecken. Windows sollte einen Treiber zuordnen. (Unter Systemsteuerung - Gerätemanger - Anschlüsse > sollte ein Arduino Uno (COMx) zu finden sein). Ist das der Fall, dann sollte es klappen :)

Jetzt kann in der Matlab Console folgender Befehl eingegeben werden:
arduino()

Folgende Antwort kommt nun zurück:
arduino with properties:
Port: 'COM5'
Board: 'Uno'
AvailableAnalogPins: [0, 1, 2, 3, 4, 5]
AvailableDigitalPins: [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]
Libraries: {'I2C', 'SPI', 'Servo'}

Der COM-Port unterscheidet sich natürlich und wird meist auf den nächsten freien COM gemappt. Hat das aber geklappt, so ist der erste Teil schon gewonnen. Matlab kommuniziert mit dem Arduinoboard. Es kann aber auch vorkommen, dass Fehlermeldungen auftauchen. Wie bei mir der Fall:

Cannot detect Arduino hardware. Make sure original Arduino hardware is properly plugged in. If
using unofficial(clone) hardware, specify port and board type. For more information, see the
arduino function reference page.

Das war die erste Meldung nach der Installation: Dafür gibts aber auch Abhilfe. Man gibt folgendes ein:
a = arduino('com5','Uno')

Wenn auch dann eine Fehlermeldung kommt, so wie natürlich bei mir, dann kann man mit folgendem commando auf Fehlersuche gehen:
 a = arduino('com5','Uno','TraceOn', true)

Jetzt kam bei mir die Meldung : Updating server code on Arduino Uno (COM5). Please wait.  Und danach gleich ein Errorfenster mit einem avr-gcc.exe Fehler. Danach habe ich lange in diversen Foren gesucht, Tracelogs verglichen und nach den Fehlermeldungen gegoogelt. Hier gab es Tips von: die make.exe in den Tiefen des SupportPackages Ordner ist nicht kompatibel mit 64bit Systemen, mit Windows8.1 und Windows10 gibt es Zugriffsrechteprobleme und und und. Leider war aber nie ein Lösungsvorschlag dabei der bei mir funktionierte. Also habe ich auf einem zweiten Rechner eine jungfräuliche Installation von Matlab und dem Arduino Matlab Package durchgeführt. Und siehe da - es funktionierte. Aber wie jetzt nach dem Fehler suchen, oder ihn beheben. Also habe ich auf dem funktionierenden Rechner einen Tracelog durchgeführt, indem ich beim Aufrufen der Arduinofunction einen Port angegeben habe, auf dem ein anderes NICHT Arudino Gerät angeschlossen ist. Und siehe da, der Errortracelog war seeehr lange und ausführlich. Man konnte ansehen was die Funktion alles aufruft. Und irgendwo ganz unten im log las ich was von avrdude... Da kam mir die Idee. Auf meinem PC sind einige Entwicklungsumgebungen installiert. Unter anderem auch AVR-Studio und der WinAVR20100110 Compiler. Und genau der war das Problem.
 Den WinAVR gelöscht und schon klappte es.

Also steht dem weiteren Aufbau zur Realisierung des Projekt'chen nichts mehr im Weg. Aber darüber schreibe ich beim nächsten mal in Teil 2...

Drehpendeluhr mit Sperrschwingerantrieb


Ein ein Euro-Schnäppchen aus eBay steht dieses mal auf dem Tisch. Da es ja laut Kalender noch Winter ist, eine perfekt passende Freizeitaufgabe für diese Jahreszeit. Auf dieses Teil habe ich nur wegen der Glashaube mitgeboten, da ich  die eigentlich als Ersatz für eine andere Uhr benötige. Aber als ich dann bei einem Euro den Zuschlag erhielt und das Ding geliefert wurde, stellte sich heraus, dass es gar nicht so schlecht aussieht und vor allem zum Großteil aus Messing besteht. Einzige Ausnahme ist das Uhrwerk selber.
Es ist das Uhrwerk einer Haller - Drehpendeluhr mit Batterieantrieb. Allerdings noch kein Quarzwerk, bei dem das Drehpendel nur zur Zierde mitläuft, sondern ein sogenannter Sperrschwingerantrieb. Hier stellt das Pendel zusammen mit einer Spulenkonstruktion und einem Kondensator , die zeitbestimmende Konstante dar. Ein Sperrschwinger ist eine elektrische Oszillatorschaltung, die mit Hilfe einer gekoppelten Doppelspule und einem elektronischen Schalter (Transistor, oder früher Elektronenröhre) die elektrische Energie in einen Schwingungsvorgang umwandelt. Dabei dient ein Kondensator in Serie zu einer Wicklung als Zeitkonstantengeber. Die Spule als Steuerspule für den Transistor, und die Koppelspule als Arbeitsspule für einen drehbar gelagerten Permanentmagneten.

Das funktioniert folgendermassen: Beim Einschalten wird der Kondensator geladen. Da er in Serie zur Spule liegt, fließt durch ihn und die Spule der Ladestrom. Dieser steuert zum einen den Transistor aus, der wiederum die Koppelspule mit Energie versorgt. Diese Energie hat ein Magnetfeld zur Folge, das wiederum den Permanentmagneten abstösst. Dieser dreht sich nun von der Spule weg.
Nach diesem ersten Impuls ist nun aber auch der Kondensator aufgeladen und es fliesst kein Strom mehr. Der Transistor sperrt und die Koppelspule hat nichts zu tun.
Da sich aber der drehbare Magnet, der auf unserer Drehpendelachse befestigt ist, noch dreht, kommt er nun irgendwann wieder an der Spule vorbei. Dort induziert er einen negativen Impuls, der der Ladung des Kondensators entgegenwirkt. Der ist also wieder entladen. Jetzt will er sich natürlich gleich wieder aufladen und lässt einen Strom durch ihn selbst und die Spule fliessen. Das wiederum steuert den Transistor aus, der wiederum lässt Strom durch die Koppelspule fliessen... die wiederum baut ein Magnetfeld auf ... das Magnetfeld drückt den Permanentmagneten der Pendelachse wieder weg ... usw., usw.
Jetzt muss man nur noch die sich drehende mechanische Energie der Pendelachse zum Antreiben einer Ohrenhemmung verwenden. Und voila, man hat eine Uhr.

Die Uhr kam beinahe in einem Stück bei mir an. Einzig im Uhrwerk war kein Rädchen mehr an seinem Platz - hier hatte der Vorbesitzer wohl erfolglos versucht einen Fehler zu beheben. Also habe ich zuerst einmal die paar Plastikzahnrädchen wieder an ihren Platz gesteckt und alles sauber zusammengebaut. Das auf einem Permamentmagneten gelagerte Pendel drehte sich auch nahezu widerstandfrei. Also eine Batterie hinein und ... nichts. Keine Bewegung, absolut keine Reaktion. Also wieder alles demontiert und die Platine mit den Koppelspulen unter die Lupe genommen. Und siehe da - eine Unterbrechung der grünen Spule - hier war der Draht gerissen.

Glücklicherweise ist das an einer sehr gut zugänglichen Stelle, sodass eine Reparatur einfach war. Nachdem nun beide Spulen wieder in Ordnung waren, ging's an den erneuten Zusammenbau. Gleich nach dem Einlegen der Batterie war sofort zu bemerken, wie sich nun der Permanentmagnet des Schwingers wieder von der Spule abstösst.



In dem folgenden Filmchen ist das Arbeitsprinzip der Mechanik dargestellt:




 Das hier sind alle Teile der Mechanik, aus der die Uhr aufgebaut ist. Also ein sehr einfaches Werk
 Das hier ist die Mechanik mit der Hemmung (alles in Plastik) ohne die Antriebseinheit:





Stylophone - Synthesizer

Ein interessantes Gerät ist das sogenannte "Stylophone". Es ist ein einfaches elektronisches Musikinstrument das ursprünglich von der Firma Dubreq hergestellt wurde. Es handelt sich dabei um ein Miniaturkeyboard, dessen "Tasten" mit einem "Stift oder Stylus" berührt werden. Der Stift hat eine elektrisch leitfähige Spitze und ist mit einem Draht zum Gerät verbunden. Die Tasten sind eigentlich keine Tasten, sondern nur elektrisch leitfähige Flächen einer Platine. Berührt man mit dem Stift jetzt eine der Tastenflächen, so wird ein Stromkreis geschlossen, der einen elektronischen Tongenerator aktiviert. Jede der Tastenflächen stellt für den Tongenerator einen anderen elektrischen Widerstand dar, der damit auch die Tonfrequenz des Generators verändert.
Es ist also ein einfacher Synthesizer. Das Klangbild kann durch Zuschalten eines Multivibrators und verschiedenen Filtern verändert werden. Auch die Oktaven lassen sich umschalten. Das erste Stylophone oder Elektrophon wurde im Jahr 1967 entwickelt und in den Siebzigerjahren von einigen Bands eingesetzt. Bei dem hier vorgestellten Gerät handelt es sich um eine Nachbau-Neuauflage, die mit modernerer Elektronik ausgestattet ist.

Die kleine Platine beherbergt die Schaltung für den Tongenerator und einen Audioverstärker für die Tonausgabe über den Lautsprecher. Auf der großen Platine sind die Tastenfelder angebracht. Es gibt noch zwei Umschalter für die Klangbilder, zwei 3.5mm Klinkenbuchsen um ein externes Audiosignal einzumischen und das Gesamtsignal auszugeben, sowie ein Potentiometer zum Stimmen.










Hier ist die Platine mit einer einfachen Multivibratorschaltung (Oszillator) und dem NF-Verstärker zu sehen. Das Stylophone erzeugt einen monophonen, also einen Kanal, Audioausgang.



Gespielt wird das Stylophone mit dem Stylus, dem Stift, der den elektrischen Kontakt zu den Tastenflächen herstellt.



Im folgenden Video"16 Classic Hits On Stylophone" wird gezeigt, was man mit dem Stylophone machen kann, wenn man es kann. (c)YouTube user: maromaro1337



Taschenradio SANYO Solid State

Ein Taschenradioempfänger, der auch schon einige Jahre sein dasein fristet, ist das kleine Gerät des Herstellers SANYO.  Das Gerät dürfte aus den den späten sechziger- (1965 ??) bis frühen siebziger Jahren stammen.

Es handelt sich dabei um einen AM/FM Empfänger, mit den kompakten Abmessungen von 7cm Breite, 11,5cm Höhe und einer Tiefe von 3,5cm und nennt sich SANYO SOLID STATE. Ein Lautsprecher mit 5,5cm Durchmesser und eine 3,5mm Mono- Klinkenbuchse geben den Klang wieder.

Das Gerät trägt die Modellbezeichnung 8F-891 und hat einen Frequenzbereich von 87-108MHz im FM-Band und 530-1600kHz im Mittelwellenband. Die Energie bezieht der Empfänger aus einer 9V Blockbatterie.

Seitlich am Gehäusedeckel ist eine ausklappbare Teleskopantenne angebracht. Ebenso ist die Lautstärken- und Sendereinstellung von hier zugänglich. An der Rückseite ist ein Schiebeschalter für die Umschaltung zwischen den Empfangsbändern angebracht.



Das Innenleben besteht aus einer sehr dicht gepackten Platine. Bestückt ist die Platine mit acht Transistoren. Der Lautsprecher hat eine Impedanz von 60Ohm und eine Leistung von 0.3Watt. Trotz der langen Zeit ist dieses kleine Radio heute noch voll funktionstüchtig. Zum Lieferumfang gehörte auch eine Lederimitat-Schutzhülle.

Vorderseite ohne Schutzhülle

Rückseite ohne Schutzhülle

Seitenansicht


Nachlöten von BGA-Chips

Immer wieder kommt es vor, dass bei Rechnern, vorwiegend bei Notebooks und Laptops, nach einiger Betriebszeit Systemabstürze und Graphikfehler entstehen. Diese Graphikfehler äußern sich meistens als farbige Linien am Bildschirm, oder ungewöhnlichen Zeichen und Artefakten, die plötzlich auftreten. In sehr vielen Fällen ist das auf einen Fehler der GPU (Graphic Processing Unit) also den Graphikprozessor zurückzuführen. Da der je nach Bildschirmauflösung und Komplexität seiner Rechenoperationen thermisch sehr heiss wird, kann es zu mehreren Phänomenen kommen:
  • die Kühlung des Rechners ist durch verstaubte und blockierte Luftwege eingeschränkt
  • die Wärmeleitpaste zwischen dem Prozessor und der Heatpipe ist vertrocknet und spröde und kann die Wärme der Die-Cores nicht an die Pipe übergeben
  • der Rechner ist falsch aufgestellt (z.Bsp. auf Polstern oder Decken), sodass Lüftungsöffnungen blockiert sind
All das führt zu einer starken Erwärmung bzw. Überhitzung der GPU. Die ist ja meist intern mit einem Schutz versehen und schaltet sich ab, bevor sie stirbt.  Der Chip besteht aber aus einem Substrat (einem Trägermaterial mit den vielen Anschlüssen BGA (BallGridArray) und dem eigentlichen Chip, dem Die, also dem Halbleiter). Um die unzähligen Anschlüsse von so einer GPU nun auch nach außen führen zu können, muß das Substrat um einiges größer sein als der Die. Und genau da entsteht das Problem. Der Die, also der Kern erwärmt sich und den Bereich des Substrats auf dem er liegt nun erheblich mehr, als den restlichen Bereich des Substrates. Dieses Erwärmen und Abkühlen verursacht auch eine thermische Längenänderung des Substratmaterials. Diese ist aber nicht homogen. Jetzt kann man sich vorstellen was mit den hunderten Balls (also den Zinnbällen mit denen das Substrat elektrisch zum Mainboard verbunden ist) passiert. Die werden durch die ständige thermomechanische Beanspruchung auch gestresst und beginnen irgendwann zu brechen. Dabei genügt es oft schon, wenn ein Ball keine saubere Verbindung mehr zum Mainboard herstellt. Dann führt das zu Ausfällen und Graphikfehlern.
Man findet im Netz oft viele Tips und Tricks, solcher Probleme Herr zu werden. Manche Leute nehmen einen Haarfön und braten mit heisser Luft auf den BGA Chip, in der Hoffnung, ein Neuverbinden der Zinnverbindungen auszulösen. Manche legen das ganze Mainboard in den Pizzaofen und backen es.  Wenn man es etwas professioneller angehen will, so kann man, wie in diesem Fall, mit einer Rework-Lötanlage den BGA nachlöten.
Die besten Varianten sind allerdings, den Chip zu reballen, also den Chip auszulöten und jegliches Zinn von Mainboard und Chip zu entfernen, danach den BGA-Chip mit neuen Zinnballs versehen und dann wieder auf das Mainboard zu löten. Die allerbeste Variante ist es, die GPU komplett zu erneuern. Jedoch sind diese beiden Möglichkeiten eine Preisfrage und bei älteren Laptops und Notebook sicher nicht mehr rentabel.
Also stelle ich hier das Nachlöten (resoldern) des BGA Chips mit Hilfe der Rework-Lötstation von ERSA (IR550) vor.
 Zuerst muss der Rechner zerlegt und das Mainboard freigelegt und ausgebaut werden. Hierbei ist es besonders wichtig, vorher alle Energiequellen (Akku) zu trennen und zu entfernen!

 Hier ist das Kühlsystem schon demontiert. Man sieht die trockene und spröde Wärmeleitpaste an den DIEs der CPUs und Bridge IC´s.

 Ein klassisches Beispiel für einen schlechten Airflow :D

 Ist das Mainboard nun ausgebaut, wird der betroffene Baustein entlang seiner Kante mit Flussmittelgel bestrichen. Das wird später beim Erhitzen dünnflüssig und durch die Kapillarwirkung unter den Baustein gesogen. Dort sorgt es dann wieder für einen verbindungsfreudigeren Lötprozess.

 Jetzt kann das Mainboard in der Lötanlage platziert und ausgerichtet werden.

 Der Lötvorgang wird vollständig vom Rechner gesteuert. Hier ist es wichtig, ein Temperatur und Zeitprofil zu erstellen, das den Erwärmungs- und Abkühlvorgang entsprechend der Baustein-Lötspezifikation erfüllt.

Ist der Lötprozess vollendet, kann man nach dem Reinigen sämtlicher, mit der Kühlung zusammenhängenden Teile, mit dem Zusammenbau beginnen. Ebenso muss die alte Wärmeleitpaste vorsichtig entfernt und durch neue ersetzt werden.



Das Video zeigt den hier beschriebenen Lötprozess.