Forum: Mikrocontroller und Digitale Elektronik Defekte XMEGA32D4


von Rainer S. (rsonline)


Lesenswert?

Habe eine Schaltung mit XMEGA16D4 und XMEGA32D4 bestückt.
40 Platinen, ca. je eine Hälfte 16er und 32er.

Von den 32ern fallen sehr viele aus. Der Resetpin scheint hier extrem 
empfindlich zu sein. Sobald das Board in die Nähe eines Lüfters kommt 
sind die Störungen da.

Hat jemand ähnliche Erfahrungen gemacht?
Ein 32er ist noch übrig. Woran kann man das Herstellungsdatum erkennen?

von DraconiX (Gast)


Lesenswert?

Dann ist mit hoher Sicherheit nicht der XMega defekt, sondern einfach 
nur schlecht abgepuffert / gesichert. Kannst ja gerne mal ein 
Schaltplan- und PCB anhängen.

von Thomas F. (Gast)


Lesenswert?

Rainer S. schrieb:
> Der Resetpin scheint hier extrem
> empfindlich zu sein.

Das klingt eher so, dass der Reset-Pin falsch (oder gar nicht) 
beschaltet ist.

Du kannst aber einfach über ein Fusebit das externe Reset abschalten.

Bit: 4 – RSTDISBL: External Reset Disable
This fuse can be programmed to disable the external reset
pin functionality. When this is done, pulling the reset pin low
will not cause an external reset. A reset is required before this bit 
will be read correctly after it is changed.

von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Hallo Rainer,

Rainer S. schrieb:

> Von den 32ern fallen sehr viele aus. Der Resetpin scheint hier extrem
> empfindlich zu sein.
>
> Hat jemand ähnliche Erfahrungen gemacht?

Mir ist auch aufgefallen dass der Resetpin des 32D4 sehr sensibel ist. 
Seitdem bestücke ich dort einen 3k3 Pullup, ibs. wenn der 
Programmierstecker nicht in direkter Nähe des Controllers angeordnet 
ist.

> Ein 32er ist noch übrig. Woran kann man das Herstellungsdatum erkennen?

Das Datum ist kein gutes Kriterium. Besser ist die Mask Revision ID, 
siehe Beitrag "Re: Xmega D3 unterschiede zwischen "-AU" und "-U""

Die ID findet sich im Register REVID, siehe Abschnitt 4.16.4 "REVID – 
Revision ID" des Manuals. Der Datecode steht auf dem Gehäuse.


Grüßle
Volker

: Bearbeitet durch User
von Rainer S. (rsonline)


Lesenswert?

DraconiX schrieb:
> Dann ist mit hoher Sicherheit nicht der XMega defekt, sondern einfach
> nur schlecht abgepuffert / gesichert. Kannst ja gerne mal ein
> Schaltplan- und PCB anhängen.

Schaltplan existiert nicht.
Am Controller sind 4 x 100nF Keramikkondensatoren in unmittelbarer Nähe 
zum jeweiligen VCC Pin. Die 3,3V sind (wie vorgeschrieben) durch eine 
Drossel und einen 10µF Tantalkondensator gepuffert. PCB kommt evtl. 
noch.

Thomas F. schrieb:
> Das klingt eher so, dass der Reset-Pin falsch (oder gar nicht)
> beschaltet ist.

Bei den 16D4 funktioniert ja alles einwandfrei...

> Du kannst aber einfach über ein Fusebit das externe Reset abschalten.
>
> Bit: 4 – RSTDISBL: External Reset Disable
> This fuse can be programmed to disable the external reset
> pin functionality. When this is done, pulling the reset pin low
> will not cause an external reset. A reset is required before this bit
> will be read correctly after it is changed.

Geht denn dann das Programmieren per PDI noch?

Volker B. schrieb:
> Mir ist auch aufgefallen dass der Resetpin des 32D4 sehr sensibel ist.
> Seitdem bestücke ich dort einen 3k3 Pullup, ibs. wenn der
> Programmierstecker nicht in direkter Nähe des Controllers angeordnet
> ist.

Werd' ich dann auch mal versuchen.

Volker B. schrieb:
> Die ID findet sich im Register REVID, siehe Abschnitt 4.16.4 "REVID –
> Revision ID" des Manuals. Der Datecode steht auf dem Gehäuse.

Datecode = 1431, so wie es aussieht ältere Revision.

von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Rainer S. schrieb:

> Datecode = 1431, so wie es aussieht ältere Revision.

Wie ich in dem oben verlinkten Artikel geschrieben habe, liegen mir auch 
32d4 mit diesem Datecode und der Rev.Id. B vor.  Die Rev.Id. findet sich 
übrigens auch auf der Unterseite des Gehäuses.

Rev. B weist noch recht viele Fehler auf, guck' mal ins Datenblatt.

Besonders lustig:

    TWIE is not available

Das hat mich einige Stunden gekostet...

Grüßle
Volker

: Bearbeitet durch User
von Rainer S. (rsonline)


Lesenswert?

Volker B. schrieb:
> Rev. B weist noch recht viele Fehler auf, guck' mal ins Datenblatt.

Ja, hab schon mitbekommen.

Farnell sagt nach Absprache mit derem Produktmanager und Microchip wären 
bei diesem Produkt keine Schäden bekannt.

Auch lustig.

Hab' gerade zurückgeschrieben.

Habe 42 Boards, davon 24 mit 32D4 und 18 mit 16D4.
Gerade nochmal getestet. Schaltung und Software sind identisch. Die 32er 
habe ich nur gekauft, weil TME keine 16er mehr hatte zu dem Zeitpunkt.

Ausnahmslos alle 32er fallen aus, sobald das Board in die Nähe einer 
Leuchtstoffröhre kommt. Zunächst laufen sie normal.

Ausnahmslos alle 16er laufen durch. Auch in die Nähe der Röhren.

Jetzt weiß ich auch warum die 32er so (relativ) günstig waren...

: Bearbeitet durch User
von DraconiX (Gast)


Lesenswert?

Wie "es existiert kein Schaltplan"? Wie hast du dann deine Boards 
gefertigt?!

Und wenn ich lese: Störung bei Lüfter (DC Motor), Leuchtstofflampen... 
Da ist eindeutig ein Fehler in deiner Außenbeschaltung. Denn wenn es da 
zu Störungen kommt ist einfach der MC falsch geschützt gegen 
Funkeinstrahlungen. Sei es durch fehlenden Stütz oder durch einen falsch 
angeschlossenen Reset-Pin.

Das es bei einigen Revs. Unterschiede gibt, ist klar, aber entweder 
kauft man diese Revs. dann nicht oder macht sich Gedanken über eine 
bessere Frequenz-Entstorung. Aber dann zu sagen das der XMega Defekt 
sei... ist sich in die eigene Tasche gelogen.

von Thomas F. (Gast)


Lesenswert?

Rainer S. schrieb:
>> Bit: 4 – RSTDISBL: External Reset Disable
>> This fuse can be programmed to disable the external reset
>> pin functionality. When this is done, pulling the reset pin low
>> will not cause an external reset. A reset is required before this bit
>> will be read correctly after it is changed.
>
> Geht denn dann das Programmieren per PDI noch?

Sollte noch gehen. Soweit ich mich erinnere, kann man die Xmegas durch 
fusing nicht bricken, man kann immer ein 'chip erase' machen und wieder 
von vorne anfangen.

von Rainer S. (rsonline)


Angehängte Dateien:

Lesenswert?

DraconiX schrieb:
> Wie "es existiert kein Schaltplan"? Wie hast du dann deine Boards
> gefertigt?!

Ohne Schaltplan :-D

> Und wenn ich lese: Störung bei Lüfter (DC Motor), Leuchtstofflampen...
> Da ist eindeutig ein Fehler in deiner Außenbeschaltung. Denn wenn es da
> zu Störungen kommt ist einfach der MC falsch geschützt gegen
> Funkeinstrahlungen. Sei es durch fehlenden Stütz oder durch einen falsch
> angeschlossenen Reset-Pin.

Wie bereits ausführlich geschrieben laufen alle anderen Boards, außer 
die Boards mit XMEGA32D4. Es sind ca. 100 Boards bereits produktiv im 
Einsatz. Zum Großteil mit ATMEGA644, die vor den XMEGAS zum Einsatz 
kamen. Die laufen alle einwandfrei. Da ist nix mit Fehler in der 
Außenbeschaltung.

Du gehst blind davon aus, dass die Hersteller der Prozessoren keine 
Fehler machen.

> Das es bei einigen Revs. Unterschiede gibt, ist klar, aber entweder
> kauft man diese Revs. dann nicht oder macht sich Gedanken über eine
> bessere Frequenz-Entstorung. Aber dann zu sagen das der XMega Defekt
> sei... ist sich in die eigene Tasche gelogen.

Dass da anscheinend so alte Teile bei Farnell rumliegen konnte ich nicht 
wissen. Es ist wohl auch nicht so einfach den Distributor zu fragen wie 
lange er die Teile schon auf Lager gehabt hat.

: Bearbeitet durch User
von Anal Ysator (Gast)


Lesenswert?

Rainer S. schrieb:
> Die laufen alle einwandfrei. Da ist nix mit Fehler in der
> Außenbeschaltung.

Es kann ja auch einfach sein dass die "einwandfrei laufenden"
Exemplare des Prozessors fehlertoleranter sind gegenüber deinen
eigenen Design-Fehlern.

Selbstkritisch bei sich selbst nachzuforschen kann auch recht
nützlich sein.

von Anal Ysator (Gast)


Lesenswert?

Rainer S. schrieb:
> Du gehst blind davon aus, dass die Hersteller der Prozessoren keine
> Fehler machen.

Du gehst blind davon aus dass du weniger Fehler machst als die
Hersteller. Eine grobe Fehleinschätzung  ...... ohne mehr über
dich zu wissen.

von errata (Gast)


Lesenswert?

>Du gehst blind davon aus dass du weniger Fehler machst als die
>Hersteller.

Die ersten XMEGAs waren halt tierisch verbugt, ich hab da auch 
irgendwann angefangen erstmal beim Hersteller zu kucken, errata ist dein 
freund.

von Axel R. (Gast)


Lesenswert?

Rainer S. schrieb:
> DraconiX schrieb:
>> Wie "es existiert kein Schaltplan"? Wie hast du dann deine Boards
>> gefertigt?!
>
> Ohne Schaltplan :-D
>
Da wäre ich nicht sonderlich stolz drauf. Das fällt Dir nun auf die Füße 
:|

von Rainer S. (rsonline)


Lesenswert?

Anal Ysator schrieb:
> Selbstkritisch bei sich selbst nachzuforschen kann auch recht
> nützlich sein.

Glaube mir, ich bin auch selbstkritisch. Wenn dadurch das Problem lösbar 
wäre, sofort.

Axel R. schrieb:
> Da wäre ich nicht sonderlich stolz drauf. Das fällt Dir nun auf die Füße
> :|

Nein, das ist eine einfache Schaltung. 2 serielle Schnittstellen und 2 
LED's, die da in der Konfiguration laufen. Wozu da einen Schaltplan? 
Habe Eagle ohne Schaltplan gekauft. Brauch' ich nicht. Auch wenn es sich 
arrogant anhört.

errata schrieb:
> Die ersten XMEGAs waren halt tierisch verbugt, ich hab da auch
> irgendwann angefangen erstmal beim Hersteller zu kucken, errata ist dein
> freund.

Habe da spontan nichts gesehen. Werde die 32er wohl tauschen. Ich denke, 
dass wohl schon eine neuere Revision der 32er das Problem löst. Auch 
wenn es jetzt selbstunkritisch herüberkommen sollte. Oder halt die 16er.

Auf lange Sicht steige ich auf STM32 um.

von Dirk B. (freaxx)


Lesenswert?

dann schreib doch endlich mal wie du den reset pin beschaltet hast,
damit das Rätselraten hier aufhört

von Rainer S. (rsonline)


Lesenswert?

Ganz normal 12K Pullup. Habe 4,7K probiert. Der 32er fällt da ebenfalls 
aus.

von Marc H. (marchorby)


Lesenswert?

Wäre es irgendwie möglich ein_ Foto von _einer Platine zu bekommen?
Wenn weder Boardfile noch Schematik existiert, bleibt nur der Weg von 
Hand die Schaltung als Schematik zu zeichnen und hier hoch zu laden!

von Rainer S. (rsonline)


Angehängte Dateien:

Lesenswert?

Bitteschön

von DraconiX (Gast)


Lesenswert?

Du solltest dich dringend informieren wie man die Abblock Kondensatoren 
richtig legt, so wie du sie verschaltet hast, ist dies so gut wie 
sinnlos für Betrieb im HV-versüften Bereich. Weil Abblocken tust du 
damit nichts. Gute Übersicht und Infos zum Thema:

http://www.lothar-miller.de/s9y/categories/14-Entkopplung


Auch die Anbindung deines Quarzes ist... wie sag ich es am besten... 
Kurios, ja Kurios trifft es gut. Hab dann aufgehört weiter zu schauen. 
;-)

von Rainer S. (rsonline)


Lesenswert?

DraconiX schrieb:
> Du solltest dich dringend informieren wie man die Abblock Kondensatoren
> richtig legt, so wie du sie verschaltet hast, ist dies so gut wie
> sinnlos für Betrieb im HV-versüften Bereich.

Denke nicht dass die Sinnlos sind.

DraconiX schrieb:
> Auch die Anbindung deines Quarzes ist... wie sag ich es am besten...
> Kurios, ja Kurios trifft es gut. Hab dann aufgehört weiter zu schauen.
> ;-)

Herr Ober, da ist ein Haar in der Suppe.

von DraconiX (Gast)


Lesenswert?

Nun gut, ich bin raus. So viel Beratungsresistenz  will keine Hilfe, 
sondern einfach die Fehler auf andere abschieben. Nun gut, dann hol die 
nächste Charge an XMega32 und schimpfe ebenfalls über sie weil die hält 
eine Sch*** sind.

Sich aber halt einfach mal an die eigene Nase fassen und einfach mal 
fünf Minuten nachdenken, das geht nicht - weil es gibt halt Menschen die 
sich einfach keine Fehler eingestehen können. Deine C sind halt einfach 
falsch angebunden... Und das Argument "ging immer schon", " bei anderen 
geht's auch" kann man einfach nicht gelten lassen - denn falsch ist halt 
nunmal falsch. Du gehts mit der Versorgung auf den Pin und dann zum C... 
Was soll der C da machen? Wozu denkst du ist der C dort eigentlich da? 
Versorgung dann C dann MC... So wird nen Schuh draus wenn man in einem 
HV Umfeld tätig sein will und nicht anders.

von Mike J. (linuxmint_user)


Lesenswert?

Das mit dem Quarz ist eigentlich okay, die Leitungen sind so wenigstens 
schön kurz.

Dass sie Vias so klein und die Leitungen ohne Not so dünn sind stört 
mich etwas.

Beim 2x5 Header links oben würde ich die dicke Leitung über Bottom, oben 
um den Header verlegen und zum Pin führen, nicht durch die Pins.


Du könntest auch 100nF an den Reset-Pin löten, aber da das ja auch PDI 
ist würde man es so natürlich nicht mehr programmieren können.
Wäre dann aber wohl möglich besser vor Störungen geschützt.

Man könnte ja eine Lötbrücke von Reset zum 100nF Kondensator einfügen, 
die müsste man nach dem programmieren dann eben mit einer Zinn-Kugel 
überbrücken.

: Bearbeitet durch User
von Rainer S. (rsonline)


Lesenswert?

DraconiX schrieb:
> weil es gibt halt Menschen die
> sich einfach keine Fehler eingestehen können

Es ist genau anders herum. Wenn der Fehler bei mir liegt, dann bin ich 
der erste, der das auch einsieht. Denn dann ist das Problem gelöst.

Ich kann Dir gerne ein Board zuschicken.

Dass alle 32er nicht laufen und alle 16er laufen willst Du einfach nicht 
zur Kenntnis nehmen. Außerdem ist das kein HV Umfeld. So dermaßen falsch 
sind die Kondensatoren nicht angebunden. Da ist eine großflächige 
Massefläche vorhanden.

Mike J. schrieb:
> Dass sie Vias so klein und die Leitungen ohne Not so dünn sind stört
> mich etwas.

Wenn die Vias 'ausgerollt' werden gibt das schon eine größere Fläche, 
aber ok, könnte ich machen.

> Beim 2x5 Header links oben würde ich die dicke Leitung über Bottom, oben
> um den Header verlegen und zum Pin führen, nicht durch die Pins.

Die Header werden alle in dieser Konfiguration nicht benutzt, aber auch 
ein guter Tipp, danke.

> Du könntest auch 100nF an den Reset-Pin löten, aber da das ja auch PDI
> ist würde man es so natürlich nicht mehr programmieren können.
> Wäre dann aber wohl möglich besser vor Störungen geschützt.

Kann ich probieren.

> Man könnte ja eine Lötbrücke von Reset zum 100nF Kondensator einfügen,
> die müsste man nach dem programmieren dann eben mit einer Zinn-Kugel
> überbrücken.

Oder einen Jumper.

von Alex W. (Gast)


Lesenswert?

Hast du den Fehler jetzt gefunden?

von Rainer S. (rsonline)


Lesenswert?

Ich gehe davon aus, dass es die 32er Prozzesoren defekt sind, bzw. die 
Charge, die Farnell geliefert hat.

Habe gerade das gleiche Board mit einem XMEGA128D4 bestückt.

Läuft einwandfrei. Auch in der Nähe einer Leuchtstoffröhre und einem 
Heizlüfter.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Mike J. schrieb:
> Das mit dem Quarz ist eigentlich okay, die Leitungen sind so wenigstens
> schön kurz.
Nur die Masseleitung fährt einmal um den Globus, um zum 
"nächstliegenden" GND-Pin zu kommen. Warum wohl ist direkt neben den 
Oszillstor-Pins ein Massepin? Richtig: weil er für die Funktion des 
Oszillators nötig ist.
Mehr dazu dort (die roten nicht ganz unwichtigen Strompfade):
http://www.lothar-miller.de/s9y/categories/33-Quarz


Rainer S. schrieb:
> Ich gehe davon aus, dass es die 32er Prozzesoren defekt sind, bzw. die
> Charge, die Farnell geliefert hat.
Hast du eine ganze Rolle gekauft? Wenn nein, dann dürfte das schon einem 
aufgefallen sein...

> Läuft einwandfrei.
> Auch in der Nähe einer Leuchtstoffröhre und einem Heizlüfter.
Das ist jetzt auch keine richtige Referenzstörquelle. Bau mal einen 
Funkensender aus einem Relais und schließ eine Leitung davon an deine 
Masse an. Das muss das Design aushalten. ann ist es stabil.

> Habe gerade das gleiche Board mit einem XMEGA128D4 bestückt.
> Läuft einwandfrei.
Das ist die lange Schreibweise für "Glück". Ich vermute sehr, dass der 
zufällig "einwandfrei" läuft. Das Layout ist auf jeden Fall überaus 
lausig. Die gedankenlos dahingeflutete Masse macht die hauchdünnen 
Versorgungsleitungen auf jeden Fall nicht besser.
Auf dieser vollkommen leeren Platine hätten die Versorgungsleitungen 
locker 2mm vertragen.

: Bearbeitet durch Moderator
von Mike J. (linuxmint_user)


Lesenswert?

Lothar M. schrieb:
> Nur die Masseleitung fährt einmal um den Globus, um zum
> "nächstliegenden" GND-Pin zu kommen.

Naja, so weit ist das bis zum nächsten Massepin des Controllers nicht.

Ich hätte einfach beide Seiten mit Massefläche geflutet, überall ein 
paar Durchkontaktierungen/Vias gesetzt, kostet ja nichts.

An der nicht ganz perfekten Masseverbindung zum Quarz liegt es 
wahrscheinlich nicht, da habe ich im Gegensatz zu dieser Schaltung schon 
regelrechte Unfälle gesehen die trotzdem ohne Probleme liefen.


Rainer S. schrieb:
> Datecode = 1431, so wie es aussieht ältere Revision.

Bei eBay wurden mal mehrere hundert ältere Xmega angeboten, hab da 
natürlich auf die Errata geschaut und diese Version hatte überall irgend 
welche Bugs drin die man teilweise zwar umschiffen konnte, aber 
teilweise eben auch nicht und die haben einem das Leben nur unnötig 
schwer gemacht.

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.