Aus Fehlern (nichts) lernen

Oh Mann, bin ich doof.

Am Samstag kamen meine Leiterkarten deutlich früher als erwartet. Darunter ein Board, auf dem ich einen SMD-Quarz verbaut habe.
Am Tag könnte ich sie nicht zusammenbauen, weil ein Umzug angesagt war, also wurde es in die Nachtstunden verlegt. Das Bestücken klappte dank ordentlich Flussmittel und passender Lötspitze (nichts geht über eine Hohlkehle!) gut und schnell.

Nachdem ich mich erst wieder erinnern musste, wie man den AVR-Programmer richtig einstellt damit er richtig funktioniert, ging auch der Zugriff auf den Mikrocontroller – bis ich die Fuses auf externe Taktversorgung durch Quarz einstellte. Sch…e! Warum mag der nicht mehr? Der Quarz wurde mit Heißluft aufgebraten und vielleicht hat er es nicht überlebt – mit einem fliegend aufgelisteten bedahteten hat es schließlich geklappt:

touchpad_quarz

 

Wie auch immer – einen Quarz habe ich auf die Weise noch nie kaputt bekommen.

Der Griff zum Datenblatt bestätigt es: die Padzuordnung war falsch. Bei den MQ- und MJ-Quarzen gibt es vier Pads und nur zwei gegenüberliegende sind funktional, die anderen beiden sind einfach nur da. Und natürlich war in meiner selbst erstellte Bauteilbibliothek genau dieser Fehler.

Ärgerlich, wenn das passiert. Richtig dumm, wenn es einem zweimal passiert – und genau das war der Fall. Wie das entstanden ist, kann ich h nicht mehr genau sagen. Es müsste schnell gehen, nicht gut genug kontrolliert und das Datenblatt falsch gelesen. Dort ist nämlich sowohl die Ansicht von oben und unten abgebildet. Später im Layout ist der Fehler auch nicht mehr aufgefallen – der DRC meckert kann den dummen User eben nicht erkennen.

Nachdem der Rest des Aufbaus bis jetzt sehr gut funktioniert (bis auf den Quarz funktionieren alle bisher getesteten Features), deshalb wird es keine zweite Runde Leiterkarten geben.

Demnächst gibt es dann auch mehr von dem Projekt mit dieser Leiterkarte.

Sie sind da!

…und funktionieren sogar!

Ich spreche von den Leiterkarten, die ich mir vor einem guten Monat bei DirtyPCBs.com bestellt habe.

Eingeschickt habe ich die Daten am 15. September, am Tag drauf gingen sie ans board house, das sie am 21. September verlassen haben. Gestern, am 27. Oktober waren sie dann hier. Gefühlt war es natürlich eine Ewigkeit, aber ich hatte wohl noch Glück, wie Ian Lesnet auf Dangerous Prototypes (er steckt hinter dem Service) schreibt.

11 Leiterkarten für 20 Euro. Unvorstellbar günstig und die Qualität ist, wie ich finde, ziemlich gut.

Die Leiterkarten kommen in einem kleinen Karton, gut verpackt, mit plausibler Zolldeklaration und noch ein paar Stickern:

IMG_6053_sm

 

IMG_6054_sm  IMG_6055_sm

Weil’s einfach jeder macht (und es auch gut aussieht), habe ich für die Produktion roten Lötstopplack gewählt.

Drills und Lötstopplack haben einen ganz leichten Versatz aber nicht so, dass es wirkliche Probleme geben würde. Das Zinn-Plating ist auch nicht 100 % sauber, aber who f***ng cares?

dirty

Mehr Fotos von der Lieferung habe ich noch auf der Kamera, die gerade an einem der Orte liegt, die für meine momentan nicht besonders große Aktivität auf der Homepage verantwortlich sind.

Wie auf dem Scan der Leiterkarte zu sehen ist, habe ich mehrere Layouts auf das Panel gepackt, die Mousebites (Sollbruchstellen) sind wie die Befestigungslöcher platiert. was beim Auseinanderbrechen nicht weiter stört. Auch sieht man die leichten Eindruckstellen vom E-Test.

Als erstes Aufgebaut habe ich die Platinchen für die Modellbahn-Lichtsteuerung. Zunächst wollte die Firmware noch nicht so wirklich, mittlerweile habe ich sie halbwegs zum Funktionieren überzeugt:

20141028_220229_sm

Ok, viel sieht man hier nicht. Links soll später Strom und RS485 reinkommen, rechts an den Buchsenleisten kommen jeweils 8 LEDs ran, die mit 10 bit PWM angesteuert werden.

Das Layout so gemacht, dass alles möglichst modular ist. Wenn man die längere Leiterkarte oben genauer anschaut, sieht man, dass es eigentlich drei sind, die zusammengesetzt wurden. Die Platine ist im Prinzip auch nur ein bisschen längeres Schieberegister, die Intelligenz läuft komplett auf dem linken Board und lässt sich bei Bedarf austauschen.

Jetzt braucht’s für den „Client“ nur noch eine vollständige Firmware. Auf der Gegenseite muss dann noch sehr viel in Richtung Server entwickelt werden. Ich hoffe, ich komme damit jetzt schneller voran.

Die anderen Platinen sind kleine Breakout-Boards, für die ich wahrscheinlich mal zwischendurch eine Wiki-Seite anlegen werde.

Da wären:

  • Ein kleiner Buck-Schaltwandler mit dem neulich erwähnten MCP16301
  • Breakout-Board für ein Accelerometer + Kompass
  • Breakout-Board für einen IR-Sensor (TI TMP006)
  • Breakout-Board für einen Ambient Light Sensor (irgendwas von Avago)
  • Breakout-Board für einen SHT21 + MPL3115A2
  • und last but not least: ein Board für meinen Pi, mit Stromzähler-, Wärmepumpen und Solaranlagen-Interface, was evtl. ein Nachfolger für die Energieerfassung wird.

Ich werde sicher nicht alle Platinen aus den 11 Panel brauchen (speziell letztere) – wer ernsthaftes (!) Interesse hat, kann sich bei mir melden und eine haben.