Sonntag, 30. Juni 2019

Kurzschluss Junkies [0x0e]: Selbstmordkabel

Feedback

Soundqualität ist ein leidiges Thema. Aber wir verbessern uns stetig, hoffentlich.
Es gibt im Moment viel zu tun, aber wir hoffen am zwei mal im Monat Rhythmus festhalten zu können.

Basti hat mit seinem Schmartwatch Projekt beim Hackaday Price in der Kategorie Flex Designs gewonnen.

Common-Sense-Tipps

Beim Bestellen von Bauteilen für Prototypen schlägt Basti vor, einfach den Bezeichner als kundenspezifische Nummer angeben. Also "R1, R3, R6" für den 10k und "R2, R14, R5" für den 100k usw.

Chris schlägt vor bei Ableitstrommessungen und kabelgebundenen Störern den worst-case Fall zu testen und zu entstören, sodass auch für zukünftige Änderungen der Grenzwerte in einer neuen Norm die Schaltung vorbereitet ist. Dazu hat er ein Selbstmordkabel gebastelt.

In der EMV-Messung vor ein paar Tagen hat Basti ein Video von den WS2812 Single Wire LEDs getwittert.

Als zweiten Tipp erzählt er von seiner Erfahrung mit Vertretern von Distributoren und Halbleiterherstellern. Hier ist eine offene Diskussion über die einzelnen Themen oft hilfreicher als eine hinten rum und 'unehrliche'. Die meisten FAE's und Vertriebler wollen euch helfen und keinen Scheiß andrehen.

Schmartwatch

Basti kommt mit dem Platzieren der BGA Bauteile auf der flex Leiterplatte nicht voran. Die Oberfläche ist zu uneben um den DC/DC Konverter und das Funkmodul sicher mit der Hand zu platzieren. Deshalb hat er sich einen Fineplacer organisiert.
Wenn das nicht hilft, muss er über eine Rigid-Flex-Leiterplatte nachdenken.

Pick and Place

Die STM286 Software nimmt Gestalt an. Stepperansteuerung ist zu 90% fertig portiert, als nächstes kommen die GPIO für Endschalter an die Reihe.

Mini Knöpfchen

Basti hat ein Projekt angelegt, aber der Code mit der kompletten StdLib und touch-lib ist zu groß für den STM8. Jetzt muss verschlankt werden.

Chip der Woche

Der EFM32HG. Ein low power 32-bit µController von Silicon Labs.
Den gibt es bei uns als Evaluation Board zu gewinnen.

Schickt uns Vorschläge, welche physikalischen Schalter ihr mit kapazitiven Tasten ersetzen würdet an: feedback@kurzschlussjunkies.de
Der Gewinner wird von uns nach den Kriterien Praktikabilität und Orginalität bewertet.

Freitag, 14. Juni 2019

Kurzschluss Junkies [0x0d]: Schwarze Knöpfchen

Feedback:

Basti erzählt, wie er vor ein paar Jahren alle Bilder im Blog gelöscht hat. Leider auch die der Kaffeemaschine. Der Text ist aber noch hier zu finden: WLANKaffee
Das Thema: "Wann Bachelor, Master oder Ausbildung machen" wird besprochen. Beide sind einer Meinung, es gibt mehrere richtige Wege.
Der Kurzschluss Blog hat einen neuen Author: Rapha. Er schreibt aktuell gerade an einer Serie zu seinem Git Command Line Tool

Common Sense Tips:

Basti gibt den Tipp, alle Software und Quellcodes zur Inbetriebnahme einer Leiterplatte zusammen zu packen und abzulegen. Optimal geht das in einer virtuellen Maschine. Die kann man nämlich auch noch in 5 Jahren starten, kleine Änderungen vornehmen und eine angepasste Testsoftware für die eigene Schaltung flashen. Das Gleiche gilt für Leiterplatten. Auch hier spricht nichts dagegen alles was zum Erstellen verwendet wurde, also Software, Bibliothek, Datenblätter, usw. in ein Archiv zu legen und mit den Gerberdaten zu archivieren. So können in der Zukunft Änderungen an den Daten vorgenommen werden ohne die Daten in die aktuellsten Versionen und Tools umziehen zu müssen.
Chris gibt den Tipp, sich immer wieder an Neues heranzutrauen, auch wenn es mit einem Risiko verbunden ist, die Technik entwickelt sich ständig weiter.

Schmartwatch:

Es gibt nicht viel Neues, die letzte Runde im Lötofen sah vielversprechend aus, muss aber noch ein wenig nachgearbeitet werden.

Pick and Place:

Das Board wurde von Basti zum STM286 umgetauft. Es regt sich was: UART funktioniert und GRBL lässt sich ansprechen. Jegliche anderen Funktionen funktionieren noch nicht. Es beginnt die Portierung zur CubeMX HAL

Mini Knöpfchen:

Die von Chris das letzte Mal vorgestellten Boards sind angekommen und er hat auch schon ein paar Bauteile bestückt. Dann geht die Platte an Basti, der macht dann dafür eine Software.

Chip der Woche:

Chris stellt diese Woche die MBR180S vor, eine Schottkydiode mit 80V Sperrspannung. Sie hat bei 1A nur 800mV Spannungsabfall, der sich bei 50mA auf 400mV verringert. Es gibt die Diode im SOD123 Gehäuse, das ist klein, aber gut handlebar und sie ist billig. Mit 3 Cent in größeren Stückzahlen ist man dabei.
Basti erzählt von einem Besuch von Murata, und wie die Situation mit den MLC-Kondensatoren in Zukunft aussehen wird.

Donnerstag, 13. Juni 2019

NAGCL [I]

In dem Eingangsartikel zu meinem Software-Projekt NAGCL (das habe ich jetzt als Interimsnamen auserkoren) bin ich kurz auf die angedachten Features des Programms eingegangen, sowie auf die Historie und Motivation dazu.
In diesem Artikel möchte ich ein kurzes Update zum aktuellen Stand des Projekts geben, sowie ein paar Implementierungsdetails vorstellen.

Für die wichtigsten Elemente des Programms bestehen mittlerweile erweiterbare Gerüste. Das trifft vor allem auf die Benutzung im Shell-Modus und auf die Übergabe von Parametern beim Programmaufruf zu.
Ebenfalls kann bereits eine Textdatei mit Pfaden zu git-Repositories eingelesen werden. Diese Pfade werden auf Existenz, Zugriffsrechte und ob diese auf ein gültiges git-Repository zeigen geprüft.

Um alle Einträge der Textdatei verwalten zu können, werden diese in einer einfach verlinkten Liste (Linked List) abgelegt. Diese Liste wird bei jedem Programmaufruf bzw. -start neu angelegt.
Im Shell-Modus bzw. als Parameter beim Programmaufruf können Elemente der Liste hinzugefügt oder entfernt werden. Ob die Liste verändert wurde, wird beim Beenden des Programms dem Nutzer gemeldet. Als letzter Schritt wird die Textdatei - sofern eine Änderung der Liste vorgenommen wurde - aktualisiert, d.h. Pfade von Repositories werden hinzugefügt oder entfernt. Die Implementierung einer einfach verlinkten Liste war notwendig um einen dynamischen Datentyp zur Verwaltung der Repositories zur Laufzeit zu erhalten. Die Implementierung ist allerdings bei Weitem nicht so elegant wie die von Linus Torvalds' Liste in der Kernel-Implementierung. Eine derart generische Implementierung einer Liste wird an dieser Stelle von mir aber auch nicht benötigt.

Aktuell arbeite ich daran, den Log (entspricht dem Befehl git log) eines git-Repositories auszugeben sowie den ersten Versuchen einer GUI-Implementierung. Die Implementierung der git-Funktion erfolgt mit der API libgit2, die Implementierung der GUI-Funktionen mittels der Bibliothek ncurses.

Die größte Veränderung für mich selbst war die Umstellung von Makefile zu cmake als Build-Setup.
Der Hauptgrund für den Wechsel des Build-Setups war, mich mit cmake auseinander zu setzen und einzuarbeiten. Aktuell kann das Projekt mit allen benötigten Bibliotheken gebaut und verlinkt werden, wenngleich das Setup im Moment unübersichtlich ist und noch nicht dem gewünschten Stand entspricht.
Im endgültigen Stand sollen alle benötigten Bibliotheken heruntergeladen und mitkompiliert werden. Zudem soll die Erstellung der Dokumentation mittels Doxygen unterstützt werden, sowie Testcases zur Überprüfung der korrekten Ausführen der Software bei der Installation.
Als Editor benutzte ich vim zusammen mit cscope und dem Plugin Conque-GDB zum graphischen Debuggen des Programms.

Zuletzt möchte ich erwähnen, dass ich noch offen bin für Namensvorschläge und wie immer gilt:
Schreibt, kommentiert, diskutiert und abonniert den Podcast!