Xytronic LF-1600 Reverse-Engineering

OP #3931659
Lesenswert?

Ich habe meine Xytronic LF-1600 Lötstation demontiert und die Schaltung 
analysiert.
Heraus kam dieser Schaltplan:
http://bues.ch/gitweb?p=xytronic-lf.git;a=blob;f=schematics-lf1600/lf1600.pdf;hb=HEAD
(Der Link zeigt immer auf die jeweils aktuellste Version im GIT)
Das ganze Repository gibts hier:
1
git://git.bues.ch/xytronic-lf.git

Interessante Punkte:
- Die Schaltung ist AtMega88-basiert und der Originalcontroller ist 
nicht gelockt. D.h. das Originalprogramm steht zum Reverse-Engineering 
zur Verfügung.
- Der Controller ist gesockelt.
- Die Schaltung kann relativ einfach für ISP umgebaut werden.
- Die Signalaufbereitung des Temperatursensors sieht "interessant" aus. 
Insbesondere die Diodenschaltung.
- Wie es aussieht hat die Schaltung Unterstützung für einen Knopf am 
Kolben. Dieser ist jedoch am Stecker des Kolbens nicht verkabelt. Was 
der Eingang in der Software macht (wenn überhaupt irgendetwas), habe ich 
noch nicht überprüft.

Es ist nicht auszuschließen, dass ich Fehler bei der Übertragung gemacht 
habe. Bei D5/D6 sehe ich jedoch keinen Übertragungsfehler.

Kommentare wie "Ersa/Weller/<Hersteller> ist halt besser" bitte nicht 
hier abladen. Das wissen wir alle. ;)
OP #4287076
Lesenswert?

Michael B. schrieb:
> - Wie es aussieht hat die Schaltung Unterstützung für einen Knopf am
> Kolben. Dieser ist jedoch am Stecker des Kolbens nicht verkabelt. Was
> der Eingang in der Software macht (wenn überhaupt irgendetwas), habe ich
> noch nicht überprüft.

Die Originalfirmware macht nichts mit diesem Eingang.
Die alternative Firmware schaltet allerdings den Temperaturregler auf 
aggressivere Parameter um. (Diese sind auch frei konfigurierbar). Es 
kann somit auf Knopfdruck ein anderes Regelverhalten erzeugt werden.
#4551869
Lesenswert?

Hallo Michael,

Danke für Dein Projekt!
Nun muss ich nur noch schauen, wie ich den ISP-Anschluß nachrüste...

An die anderen Umrüster:
wer hat einen ISP-Anschluß nachgerüstet, und hat evtl. ein Foto?

Ist es aus grundsätzlich vorstellbar, auch ein Poti oder einen 
Drehencoder nachrüsten, um die Zieltemperatur schneller einzustellen?
oder übersteigt das die Möglichkeiten des Prozessors?

Danke!
Thomas
OP #4551875
Lesenswert?

Thomas S. schrieb:

> Nun muss ich nur noch schauen, wie ich den ISP-Anschluß nachrüste...

Das ISP-Header (6-Pin) habe ich einfach mit Litze drangelötet. Nicht 
schön, aber funktional.

> Ist es aus grundsätzlich vorstellbar, auch ein Poti oder einen
> Drehencoder nachrüsten, um die Zieltemperatur schneller einzustellen?

Vorstellbar wäre das sicher.
Eines meiner primären Ziele ist es aber die Hardware nicht zu viel zu 
verändern.

> oder übersteigt das die Möglichkeiten des Prozessors?

Ich habe mittlerweile einen Mega328 eingesetzt. Der ist pinkompatibel zu 
dem originalen Mega88, hat aber mehr Ressourcen. Dank des Sockels ist 
das auch ohne weiteres Rückbaubar.
Die Software läuft weiterhin auch auf dem Mega88. Dort aber ohne 
Debugzeugs.
OP #4551987
Lesenswert?

Thomas S. schrieb:
> so sieht es bei meinem Exemplar aus:

Ah sehr schön. Da sieht man ja, wie die Dioden parallel zu C15 sind. Das 
hätte ich auch erwartet. Zumindest ergibt das schonmal mehr Sinn als in 
meinem Modell. Dann wird das wohl hier ein Layout-Bug sein.
Vielleicht fixe ich das mal bei Gelegenheit und gucke was passiert.


Du kannst ja mal versuchen einen Programmer anzuschließen und das 
Programm auszulesen. Bei mir war es nicht gelockt.
OP #4660105
Lesenswert?

Jonas G. schrieb:
> Ich habs geschafft, die Firmware zu Flaschen, allerdings komme ich mit
> der Bedienung nicht so recht klar.
> Kannst du das bitte mal erklären?

Die Bedienung ist im Grunde gleich wie die Originalfirmware.
Im Grundzustand wird die aktuelle Temperatur angezeigt.
Mit den Pfeiltasten kann man jetzt die Temperatur erhöhen oder 
verringern und gelangt nach Timeout wieder in den Grundzustand.
Mit der Set-Taste gelangt man in Debugmenü und/oder Einstellungen des 
PID-Reglers für die Temperatur (je nachdem was eincompiliert ist).
Diese Passwortfunktion gibt es (noch) nicht. Ich brauche die aber auch 
nicht.

Besitzt du ein neues Modell der LF-1600 mit SMD-Bestückung?
Kann jemand mal schauen, wie der LED-Mux bei dieser Variante ausgeführt 
ist? Das scheint jetzt über MOSFETs geschaltet zu werden. So sieht es 
jedenfalls in dem Foto von weiter oben im Thread aus. Interessant wäre 
jetzt zu erfahren, ob sich die logische Ansteuerung des Anoden-Mux-Pins 
durch den Transistor invertiert hat. Das würde eine Anpassung der 
Firmware bedeuten.
#4660164
Lesenswert?

Hallo,

gut jetzt komm ich auch damit klar. Was für mich ein wichtiges Feature 
wäre ist die Direktauswahl von 3 eingespeicherten Temperaturen.

Ich kann das von der ATTEN 980D so:
-Kurzes Drücken einer Taste wählt die gespeicherte Temperatur aus.
-Durch langes Drücken von +/- kann die Temperatur normal geändert 
werden. In diesem Mode kann die Temperatur dann auch durch einzelne 
Tastendrücke verändert werden. Nach einem Timeout kommt man wieder in 
den Ausgangszustand.
-Dann gibt es noch einen 4. Taster mit dem man die gespeicherten 
Temperaturen ändert. Das ist für mich aber nicht unbedingt notwendig, 
man kann sie ja im Quellcode fest einprogrammieren.

Ja ich hab die neue Version.
Dort sind die Bauteile Q1-4 in den Anoden Leitungen drin.
Marking ist 1AM scheint also dieser Transistor zu sein:
http://www.onsemi.com/pub_link/Collateral/MMBT3904LT1-D.PDF
1
Pin 1 - Basis     - ATmega
2
Pin 2 - Emitter   - Anode
3
Pin 3 - Kollektor - +5V
Also das was auf dem Display angezeigt wird sieht richtig aus.

Allerdings ist bei mir die Anzeigte Temperatur deutlich höher als die 
gemessene. Aber es wird nicht angezeigt, dass geheizt wird. Ich vermute, 
dass der Regler hier etwas über schwingt.

Gruß Jonas

PS: ist das github repo aktuell?
OP #4660176
Lesenswert?

Jonas G. schrieb:
> -Kurzes Drücken einer Taste wählt die gespeicherte Temperatur aus.

Ja das ist eine sehr gute Idee. Was werde ich mir mal anschauen.

>Dort sind die Bauteile Q1-4 in den Anoden Leitungen drin.
>Marking ist 1AM scheint also dieser Transistor zu sein:
>http://www.onsemi.com/pub_link/Collateral/MMBT3904LT1-D.PDF

Ah ein NPN. Dann bleibt die Logik gleich. Offensichtlich, denn es 
funktioniert bei dir ja. :)

>Allerdings ist bei mir die Anzeigte Temperatur deutlich höher als die gemessene.

Mit "gemessen" meinst du am Kolben unabhängig gemessen mit z.B. 
Multimeter?

> Ich vermute, dass der Regler hier etwas über schwingt.

Ich würde eher vermuten, dass der Messverstärker in deinem Modell etwas 
anders eingestellt ist.
Das könnte man entweder in Hardware am Poti angleichen, oder in der 
Software am Skalierungsgradienten in measure_temp.c. Letzteres wäre 
natürlich zu bevorzugen, wenn das ein systematischer Unterschied auf den 
neuen Boards ist.
Der Messverstärker hat dort einen anderen Rückkoppelwiderstand, also 
kann das durchaus sein, dass der Messverstärker anders eingestellt ist.
Du kannst ja mal die Spannung am Ausgang des OPV bei sagen wir 300 Grad 
(real) messen.

Edit:
>PS: ist das github repo aktuell?

ja
OP #4660209
Lesenswert?

Jonas G. schrieb:
> Nein ich meine die auf dem Display angezeigte Temperatur.
> Diese ist höher als die eingestellte.

Ah ok. Ja am Anfang beim Hochheizen von 0 überschwingt das etwas. Das 
liegt an der relativ trägen Messstrecke. Das ist bei mir aber nur um die 
5% und hat sich auch rasch gefangen. Die reale Temperatur an der Spitze 
überschwingt bei mir kaum.

Ich würde aber trotzdem die reale Temperatur im eingeregelten Zustand 
einmal messen, um die Einstellung des Messverstärkers zu verifizieren. 
Den habe ich ja nur aufgrund meines Modells eingestellt "so, dass es 
passt".
#4660316
Lesenswert?

Also bei mir passt da was überhaupt nicht.
Die Temperatur steigt immer weiter an, je länger die Station läuft.
Eingestellt sind 300*C es werden aber nach einer Stunde etwa 415*C 
angezeigt. Hier scheint sich das ganze jetzt auch eingependelt zu haben.
Sobald man dann die Lötspitze runter kühlt geht es auch auf die 
Eingestellte Temperatur. Mal schauen ob es jetzt wieder steigt.

Ich hab leider keine Möglichkeit die reelle Temperatur zu messen. Aber 
geschätzt ist es schon etwas hoch.

Gruß Jonas

PS: Die Temperatur ist jetzt schon wieder auf 400*C gestiegen. Ich schau 
mir mal die Widerstandswerte an.
OP #4660331
Lesenswert?

Du könntest die Debug-Schnittstelle aktivieren und so die Regelkurven 
auslesen und als CSV speichern. Dazu gibts das dumpcurves.py-Script. 
Dann kann man sich das im Tabellenkalkulationsprogramm als Diagramm 
ansehen.
Wenn Debug einkompiliert, ist gelangt man entweder über das Menü, oder 
per festgehaltenem SET-Knopf beim Einschalten in den Debug-Modus. Es 
werden dann permanent die Daten rausgeschrieben.
Das Display schaltet sich im Debug-Modus ab, weil die gleichen Pins 
verwendet werden.
OP #4660377
Lesenswert?

Jonas G. schrieb:
> R12und R28 sind bei mir nicht gebrückt

Ja das ist in Ordnung. Das macht auch kaum einen Unterschied. Das ist 
nur eine kleine Veränderung von mir.

> R14 hat die 20k, so wie ich das sehe könnte das was ausmachen

Das Entscheidende ist, welchen Gesamtwiderstand R14 und VR1 zusammen 
haben.
Der VR1 wird wohl eher nicht komplett am Anschlag stehen. Somit hat die 
neue SMD-Schaltung eher eine größere Messverstärkung. Was in Software 
entsprechend mit einem flacheren Gradienten kompensiert werden müsste.

Wenn du diese Parameter rausfindest, baue ich die natürlich in die 
Software ein. ;)

Grundsätzlich ist eine größere Verstärkung am OPV zu begrüßen, weil dann 
die Auflösung des gemessenen Signals wesentlich besser wird.

1+(R14+VR1)/R15 ist der Verstärkungsfaktor.

Die ganzen gemessenen und geregelten Werte kann man aber auch im 
Debug-Plot ablesen und sieht dort recht gut welcher Regler oder welcher 
Rückführwert nicht stimmt.

> L1-4 sind bei mir nicht vorhanden

Die sind in meiner Version auch nur als 0R-Widerstände bestückt.


Insgesamt ist es aber schön zu sehen, dass in der SMD-Variante die 
gröbsten Probleme fast alle gelöst wurden. Nur die Messung des Stromes 
scheint gleichgeblieben zu sein. Das ist eher unschön, weil die 
Stommessung ziemlich unbrauchbar ist.
Du könntest das aber nochmal verifizieren, falls ich da was auf dem Foto 
übersehen habe. Eine veränderte Stromrückkopplung hätte ja auch auf das 
Ergebnis evtl. eine Auswirkung. Die Auswirkung sollte aber eher gering 
sein.
OP #4661254
Lesenswert?

Jonas G. schrieb:
> VR1 steht bei mir auf 3kOhm.
> Die Verstärkung beträgt also
>
1
1+(20000+3000)/470 ≈ 50

OK, das ist also eine wesentlich höhere Verstärkung als bei dem alten 
Modell. Da sind es so irgendwas zwischen 30-35.

Ohne Softwareänderung sollte die Software zwar scheinbar auf der 
eingestellten Temperatur ausregeln, aber die reale Temperatur am Kolben 
wird sehr viel geringer sein.

Das Beste wäre jetzt, wenn du den Kolben auf mindestens zwei extern mit 
Multimeter oder ähnlichem gemessene Temperaturen fahren könntest und 
dazu die ADC-Rohwerte per Debug-Schnittstelle aufnimmst. Damit könnten 
wir den Messverstärker korrekt einstellen.
Wenn du keine Möglichkeit der halbwegs genauen Temperaturmessung hast, 
könnten wir das noch rechnerisch lösen, über das Verhältnis der 
Verstärkungen. Aber das wird sicher ziemlich ungenau.
OP #4669009
Lesenswert?

Ich habe nun Version 1.2 der Open Source firmware veröffentlicht.
In dieser Version sind hauptsächlich zwei neue Features hinzugekommen:

- "Presets", mit denen schnell zwischen einem Satz von frei 
einstellbaren Temperaturen hin und hergewechselt werden kann.
- "Idle switch/button". Ein Knopf, der die Temperatur auf eine 
(einstellbare) niedrige Temperatur herunterfährt, wenn der Kolben z.B. 
in der Basisstation steckt und nicht benutzt wird.

https://bues.ch/h/xytronic
https://bues.ch/xytronic-lf/xytronic-lf-1.2.tar.xz
#4780888
Lesenswert?

Interessantes Projekt!
Kann nur momentan nicht testen da mein Lötkolben nicht mehr 
funktioniert, bekomme ab 120°C nur "H-E" angezeigt (Heizelementfehler).

Jetzt habe ich mir bei ELV einen Ersatzlötkolben bestellt (108ESD), nur 
passt dieser nicht auf meine LF-1600. Der Kolben hat 5 Buchsen, meine 
Station aber 6 Pins! Auch der von Reichelt ist für 5 Pins ausgelegt.

Habe ich da eine exotische Version erwischt oder wie viele Pins haben 
eure Stationen?
#4780901
Lesenswert?

Ok, dann könnte ich den Stecker tauschen. Ich habe auch nirgends einen 
108ESD mit 6 Pins gefunden.

Aber seltsam ist das schon.
Habe meine auch von Reichelt, vor ca. 2 Jahren gekauft. Der bestellte 
Ersatz 108ESD hat diesen Stecker 
http://www.xytronic-usa.com/images/XY-108ESD-HR.jpg
Wohingegen die Station für diesen ausgelegt ist 
http://www.xytronic-usa.com/images/XY-107ESD-HR.jpg
Gast #4895133
Lesenswert?

Hi.

Habe heute eine gebrauchte LF 1600 erworben... leider ist das gute Stück 
mehr oder weniger kaum zum löten geeignet.

Der Kolben ist ziemlich unbrauchbar. Bzw Heizstab scheint noch in Takt 
zu sein aber alles andere eher weniger. Sogar die Lötspitze ist verbogen 
und anscheinend vom Vorbesitzer mit einer Zange maletriert... Des 
Weiteren ist die Hülse regelrecht verbrannt an einer ecke... 
wortwörtlich... da fehlt ein stück! ... (warum auch immer...)... und sie 
scheint auch nicht wirklich zu sitzen...

Da ihr euch ja hier intensiver mit dem kleinen beschäftigt habt könnt 
ihr mir vielleicht helfen? Gibt es adequate China-Kopien bei denen ich 
mein Kolben Innenleben einfach in die Kopie reinbaten kann? Den 
kompletten Kolben Original neu zu beziehen kommt wegen dem unverschämten 
Preis von 50 € nicht in Frage...

Danke.
OP #4895793
Lesenswert?

Mani schrieb:
> Gibt es adequate China-Kopien bei denen ich
> mein Kolben Innenleben einfach in die Kopie reinbaten kann?

Eine Chinakopie der Chinaware? :)

Das vordere Teil gibts einzeln: 
https://www.reichelt.de/XYTRONIC-Ersatzspitzen-u-Zubehoer/ERSATZ-XY-26A/3/index.html?ACTION=3&GROUPID=4125&ARTICLE=87981&OFFSET=16&;
Die Spitzen natürlich auch.
Bekommt man damit den Kolben nicht wieder brauchbar?

Der S. schrieb:
> Hat jemand die Belegung des 5poligen Steckers zur Hand?

Leider habe ich die Belegung nicht. Aber das sollte ja einfach 
herauszufinden sein, indem du einfach den Leitungen folgst und guckst wo 
sie auf der Leiterplatte ankommen. In meinem Schaltplan findest du dann 
die entsprechende Bezeichnung der Klemme.
Gast #4895969
Lesenswert?

alle drei Teile hinüber. Verbogen, Verbrannt anscheinend sehr sorgsam 
damit umgegangen :D siehe Bild.

Dachte der Xytronic wird in Malaysia hergestellt und nicht China.

http://www.ebay.de/itm/24V-50W-Soldering-Station-Iron-Handle-for-HAKKO-907-ESD-907-936-937-928-926-5PIN-/331879105278?hash=item4d458942fe:g:y-0AAOSwqu9VNmM4 
gefühlsmäßig würd ich sagen das könnte hinhauen...
Angehängte Dateien:
#5145176
Lesenswert?

Michael B. schrieb:
> Mit der Version 1.4 gibt es nun Unterstützung für moderne
> LF-1600-Geräte mit SMD-Board.
> Außerdem gibt es nun einen Menüpunkt, mit dem ein Temperaturoffset
> eingestellt werden kann. Damit kann die angezeigte/geregelte Temperatur
> der realen Temperatur an der Spitze angepasst werden.
>
> https://bues.ch/h/xytronic
> https://bues.ch/xytronic-lf/xytronic-lf-1.4.tar.xz

Danke für die konstante und professionelle Weiterentwicklung!
OP #5146242
Lesenswert?

Thomas S. schrieb:
> Danke für die konstante und professionelle Weiterentwicklung!

Ich gebe mir Mühe. :)
Wenn du Verbesserungsvorschläge hast, immer her damit.


Das neue SMD-Board habe ich mir auch mal näher angeschaut. Insgesamt 
sieht es ganz OK aus. Besser als das alte Layout.
Aber die Leiterbahnen rund um den Shunt sind wohl etwas klein 
dimensioniert. Alle anderen Leiterbahnen des Heizelements sind 
wesentlich breiter. Außerdem gibt es ein winziges Via, durch das der 
Heizstrom muss. Völlig unnötig ist dieses Via noch dazu. (+ ein weiteres 
Via, durch das zugleich der Anschluss des Tasters geht. Aber auch das 
ist unnötig).
Da hat sich jemand keine Mühe beim Layouten gegeben.

Wird wohl funktionieren, weil die Bahnen verhältnismäßig kurz sind.
Ich habe sie trotzdem mit Kupferdraht gebrückt.

Was sonst noch auffällt ist die weiterhin viel zu große Kapazität am 
Ausgang des Reglers. Aber es schwingt wohl nicht, deshalb lasse ich die 
mal drin.
Angehängte Dateien:
#5148190
Lesenswert?

Michael B. schrieb:
> Das neue SMD-Board habe ich mir auch mal näher angeschaut. Insgesamt
> sieht es ganz OK aus. Besser als das alte Layout.
> Aber die Leiterbahnen rund um den Shunt sind wohl etwas klein
> dimensioniert. Alle anderen Leiterbahnen des Heizelements sind
> wesentlich breiter. Außerdem gibt es ein winziges Via, durch das der
> Heizstrom muss. Völlig unnötig ist dieses Via noch dazu. (+ ein weiteres
> Via, durch das zugleich der Anschluss des Tasters geht. Aber auch das
> ist unnötig).

Danke!
So genau hatte ich mir die Platine noch gar nicht angeschaut (ist noch 
eingebaut).
Gast #6495203
Lesenswert?

Hallo,
Ich habe ein kleines Problem mit diesem Lötgerät und ich habe bis jetzt 
die Lösung noch nicht gefunden. Die Temperaturanzeige zeigt 0°C an, der 
Thermistor funktioniert einwandfrei und ich sehe keine Beschädigte 
Komponente. Am Eingang PC1 des Atmega88 messe ich 5.8V selbst wenn ich 
den Lötkolben heize (und sich der Widerstand des Thermistors erhöht). 
Die Lötstation hat vor einer Weile noch Funktioniert mit nur einzelnen 
Fehlanzeigen wo ich aber nur das Gerät einmal aus und wieder Anschalten 
musste um das Problem zu lösen. Hat irgendwer eine Idee wo das Problem 
liegt?
Danke!
OP #6495366
Lesenswert?

Theo Bockholt schrieb:
> Die Temperaturanzeige zeigt 0°C an, der
> Thermistor funktioniert einwandfrei und ich sehe keine Beschädigte
> Komponente. Am Eingang PC1 des Atmega88 messe ich 5.8V selbst wenn ich
> den Lötkolben heize (und sich der Widerstand des Thermistors erhöht).
> Die Lötstation hat vor einer Weile noch Funktioniert mit nur einzelnen
> Fehlanzeigen wo ich aber nur das Gerät einmal aus und wieder Anschalten
> musste um das Problem zu lösen. Hat irgendwer eine Idee wo das Problem
> liegt?

Ich denke es wird eine Beschädigung im Analogteil vorliegen.
Hier findest du auf der letzten Seite den Schaltplan zum Analogteil:
https://bues.ch/cgit/xytronic-lf.git/plain/schematics-lf1600/lf1600.pdf

Dort kannst du mit einem Multimeter oder Oszilloskop dem Signalfluss 
nachgehen und schauen, wo dieser unterbrochen oder unplausibel wird.

Was ich schon hatte ist, dass eins der Potis hochohmig wurde. Es reichte 
aus minimal am Poti zu drehen, um das zu beheben.
Beitrag #7932490 wurde vom Autor gelöscht.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren