Die Sache mit den Tickets dieses Jahr

Wie jedes Jahr wollte ich zusammen mit einigen weiteren Leuten dieses Jahr wieder zum Chaos Communication Congress.
Tobi A. und ich hatten, da wir letztes Jahr dort geholfen hab ein Zugang zum Vorverkauf und hatten somit unser Ticket sicher.
Leider waren die anderen nicht so glücklich und mussten ihre Tickets im normalen öffentlichen Verkauf beziehen.

Das Problem ist nur, dass das Event die letzten Jahre immer im gleichen Gebäude ist, aber die Anzahl an Menschen die gerne kommen möchten jedes Jahr stark steigt.

Folglich waren die Tickets sehr begehrt und an allen drei Tagen, an denen ein Kontigent verkauft wurde, innerhalb weniger Sekunden ausverkauft.
So haben wir es leider nicht geschafft auch nur ein einziges Ticket zu bekommen.

Und so kommt es, dass dieses Jahr nur 2 Personen aus dem C-Hack hier sind.

Haselmaus Funkvernetzung

Die Haselmaussensoren werden bisher per serieller Schnittstelle vor Ort ausgelesen. Das hat diverse Nachteile, man muss raus in den kalten nassen Wald, ein Laptop mitschleppen und das mit einem Adapter an die Haselmaus-Nistkästen anstöpseln. Dabei wird auch das Umfeld gestört, gut Möglich das die Haselmaus darauf hin das Nest nicht mehr besucht.

Die Lösung ist drahtlose Vernetzung. Dank Ralfs Vorarbeit ist die Arbeit daran nun ein gutes Stück vorangekommen. Die bestehende Haselmauselektronik wird um ein kleines Funkmodul auf Basis des Nordic nRF24L01 ergänzt.

modul_nrf24l01
Modul nRF24L01

Die bisherige Haselmauselektronik soll weiterverwendet werden, diese hat jedoch keinen Anschluss für das Funkmodul. Zu diesem Zweck wird eine kleine Adapterplatine erstellt, sie wird zwischen die bestehende Leiterplatte und den Mikrocontroller gesteckt. Der bisherige Mikrokontroller ATMEGA88p ist zu klein für die Funksoftware, darum wird er gleich mit ausgetauscht, nun läuft die Firmware in einem ATMEGA328p. Es ist der selbe Controller der auch im Arduino UNO steckt. Der Zwischendapter besteht aus einer kleinen Leiterplatte, die einen Sockel für das Funkmodul und den Mikrocontroller trägt. Diese wird als ganzes wiederum in den Sockel des Controllers gesteckt. Das kleine Platinchen ist in KiCad entworfen und dann mehrmals so angeordnet, dass sie eine Europlatine (eine standardisierte Größe 160x100mm) auffüllt.

bildschirmfoto_kicad
Layoutentwurf KiCAD

Danach wird die Kupferlage auf Klarsichtsfolie gedruckt. Die Leiterplatte ist Kupferbeschichtet und mit Fotolack beschichtet. Mit UV-Licht wird sie etwa 2 Minuten bestrahlt. Danach wird der Fotolack entwickelt, dabei löst sich der Fotolack an den Stellen, an denen UV-Licht aufgetroffen ist, das blanke Kupfer tritt hervor. An den Stellen an denen später Leiterbahnen bleiben sollen, hat der schwarze Film die Belichtung verhindert. Das Layout wird immer spiegelverkehrt ausgedruckt, dadurch liegt der schwarze Toner direkt auf dem Fotolack und die Kanten werden schön scharf abgebildet.

 

layoutfilm
Layout auf Klarsichtfolie

Die belichtete und entwickelte Leiterplatte wird danach mit einer Ätzlösung behandelt. Dabei wird das freiliegende Kupfer abgelöst, übrig bleiben die vom Fotolack abgedeckten Leiterbahnen. An den Stellen an denen das Kupfer abgelöst wurde, ist nur noch das Basismaterial (gelbes, glasfaserverstärktes Kunstharzgewebe) übriggeblieben. Verbleibt die Leiterplatte zu lange im Ätzbad, frisst es die Leiterbahnen von der Seite an und am Ende sind alle Bahnen weggeätzt. Die Leiterplatte wird nun gründlich gespült. Der Fotolack wird nun nicht mehr benötigt und kann entfernt werden. Mit einem Lötlack wird das blanke Kupfer gegen Oxidation geschützt, dadurch lässt sie sich später besser löten.

adapter_geaetzt
Geätzte Leiterplatte mit 10 Adapterplatinen

Für die durchsteckbaren Bauteile werden anschließend die Löcher gebohrt. Danach werden die einzelnen Adapterplatinen auseinandergesägt und die Schnittkanten mit einer Feile entgratet.

adapter_gebohrt_und_gesaegt
Platine gebohrt und vereinzelt

Die Bauteile werden nun eingelötet. Zusätzlich zu IC-Sockel und Steckverbinder sind zwei SMD-Kondensatoren aufgelötet, diese sorgen für eine saubere Spannungsversorgung, das Funkmodul ist empfindlich gegen schwankende Versorgungsspannung.

adapter_bestueckt
Adapter bestückt mit durchsteckbaren Bauteilen und zwei SMD-Kondensatoren

Nach dem Zusammenbau findet eine kurze Funktionsprüfung statt, ob alle Verbindungen da sind und keine Kurzschlüsse vorhanden sind. Nun geht es an das schreiben der Firmware.

haselmaus_mit_adapter

Haselmauselektronik mit Adapterplatine und Funkmodul zusammengebaut

Conways Spiel des Lebens

Conways Spiel des Lebens ist eine Simulation von einfachen Zellkulturen, die sich vermehren und absterben. Diese kann man schön auf einem zweidimensionalen Display darstellen.

Die Idee besteht daraus, aus einem Berg Bauteile (siehe Foto) ein lauffähiges Spielfeld zu erzeugen. Die Eleganz liegt darin, dass mit einem kleinen Spielfeld begonnen wird, das man nach und nach in der Breite und Höhe vergrößern kann.

Convay’s Game of Life (Wikipedia CC-BY-SA-3.0)
Conway’s Game of Life (Wikipedia CC-BY-SA-3.0)
8051_eprom
Daraus soll ein Spielfeld entstehen

Der Microcontroller ist ein 80C51 von Philips (historischer Name, heute NXP), das Programm wird in ein externes EPROM gebrannt. Verfügbar haben wir: ca. 200 Controller, ebenso viele EPROMS und ca. 1000 grüne Leuchtdioden.

Ein System mit ähnlicher Funktion ist hier beschrieben: https://learn.adafruit.com/game-of-life?view=all allerdings verwenden die einen langweiligen Atmel als Controller.

Wer mag sich an die Aufgabe wagen, mit einer Controllergeneration, so alt wie dein Opa, ein Game-of-Life zu bauen?

Automatisches Hinzufügen zu Menü aktiviert

Hallo zusammen,

hab gerade mal aktiviert, dass jeder erstellte Seite zum Hauptmenü hinzugefügt wird.
Wenn die Seite eine SubPage einer anderen ist, dann kommt sie in das Submenü.

Dass heißt bitte bei allen neuen Seiten Rechts unter Attribute das Feld Eltern korrekt ausfüllen. Dann ist kein manuelles hinzufügen zum Menü nötig.

Wenn eure Seite nicht im Menü auftauchen soll (wie. z.b Besuch bei Noisebridge) dann einfach manuell wieder aus dem Menü löschen.

Beachten: Eine neue Seite ohne Parent wird jetzt automatisch oben in die Menüleiste eingefügt!

Arduino/Raspi Projekt: Remote-Game

Hier mal grob meine Idee:
Wir bauen eine Platte, die in zwei Achsen gekippt werden kann. Diese bewegen wir mit zwei Modellbauservos, die von einem Arduino o.ä. gesteuert werden.
Damit wird eine Kugel bewegt. Ziel ist es diese in ein Loch in der Platte zu manövrieren.
Man könnte das Ganze so bauen, dass die Kugel, nachdem sie durch das Loche gefallen ist, an eine bestimmte Stelle unterhalb der Platte rollt, wo sie von einem weiteren Servo wieder auf die Platte befördert wird.
Das Ganze steuern wir dann über ein Web-Interface. Das Spielfeld wird mit einer Webcam beobachtet und den beiden Spielern angezeigt. Jeder Spieler steuert nur eine der beiden Achsen.
Keine Ahnung, ob das geht wegen der Latencies – aber man kann es ja mal mit einer weichen, langsam rollenden Kugel probieren.

Advanced
Wir ersetzen die beiden Spieler durch einen Computer. Der wertet das Kamerabild per openCV aus und steuert so die Servos. Schöne Regelungsaufgabe…