Freitag, 23. Oktober 2015

Du kannst mitspielen...

 Endlich gibt es die Gehäuse für die diversen Bastelprojekte meiner Seite (Anleitungen) einfach über einen Shop zu kaufen: bei Du kannst mitspielen gibt es neben den CNC-gefrästen Gehäusen aber auch Bausätze, Möbel und andere interessante Dinge zu entdecken.

Freitag, 14. August 2015

Mission: Impossible

 Ich werde mich zukünftig "Ethan Hunt" nennen.

 Aber der Reihe nach: Ich arbeite für den Entwurf von Platinen gerne mit KiCad. Es ist zwar etwas gewöhnungsbedürftig, aber man kann sehr gute Ergebnisse damit erzielen.

 Ein Teil von KiCad ist aber leider sehr schwach: für die Erzeugung der Platinen-Kontur stehen einem Linien und Teilkreise zur verfügung. Ende. Nicht mehr. Meistens reicht das ja auch. Aber manchmal hat man eben doch den Bedarf, eine Freiform-Platinen-Kontur zu entwerfen.

 Es gibt viele Tipps & Tricks im Netz, wie man das erreichen kann: so z.B. Konverter für SVG-Dateien, DXF-Dateien etc. Aber diese Tools versuchen, die Vektor-Grafik in Züge aus Linien und Teilkreise umzuwandeln. Bei einer echten Freiform mit mäßigem (sprich: keinem) Erfolg.

 Aber es gibt einen Hoffnungs-Schimmer: Der Gerber-Viewer von KiCad kann eine Platinen-Kontur wieder als Platinen-Datei für Pcbnew (dem Layout-Programm von KiCad) speichern.

 Aber wie bekommt man eine Gerber-Datei von seiner Freiform-Platine? Das ist ein Henne-Ei-Problem, denn genau diese Datei möchte man ja eigentlich mit KiCad erzeugen.

 Und jetzt kommt der Trick: vor KiCad habe ich mit Fritzing gearbeitet (was mir aber irgendwann zu "klein" war). Fritzing kann aber sehr gut SVG-Dateien als Freiformvorlage für die Platine importieren. Und Fritzing macht gute Gerber-Files!

 Also: Wer eine Freiformplatine in KiCad braucht: SVG-Datei nach den Fritzing-Vorgaben erstellen (z.B. mit Inkscape), in Fritzing als Form für die Platine laden, in Fritzing Gerber-Files erzeugen, im KiCad-Gerber-Viewer die Gerber-Files laden, mit Pcbnew eine altes BRD-File anlegen, dann mit dem KiCad-Gerber-Viewer die Kontur im BRD-File speichern.

 Tataa: schon hat man eine Freiform-Platine in KiCad. Mission: Completed. 

Montag, 27. Juli 2015

Er fliegt!

 Gestern haben wir den ersten Flugversuch unternommen.

 Und es ist total verblüffend: er fliegt! Man hat natürlich so seine Probleme, lernt aber auch eine Menge dazu. So ist z. B. am Anfang der Flugzeit-Limitator nicht der Akku, sondern die Menge der Ersatz-Propeller, die man dabei hat.
 Unser Verschleiß: 8 Propeller-Paare und ein Alu-Röhrchen von dem Landegestell. Also alles in allem ein erster Flug ohne größere Verluste.

 Sobald der nächste Schwung Ersatz-Propeller da ist geht es weiter...

Sonntag, 19. Juli 2015

Mal was Neues...

 So langsam wird es Zeit, sich mit neuen, aufregenden Welten zu beschäftigen. Letzthin bin ich über "FPV-Rennen" gestolpert. Das scheint ein Thema zu sein, mit dem man sich eine Weile beschäftigen kann.

 "FPV-Rennen" ist die Kurzbezeichnung für "Rennen aus Sicht des Teilnehmers" (First Person View Races). Das könnte ein normaler Marathon sein...

 ... meint aber in diesem Fall: Rennen mit Quadcoptern, die mit einer kleinen Kamera dem Fernsteuernden in Echtzeit ein Bild zeigen (welches dieser typischerweise mit einer Video-Brille sehen kann).

 Also eine Thematik mit viel Bastelei, Elektronik, Mechanik, Fliegen, High-Tech (Quad-Copter funktionieren nur aufgrund kleiner Computer- und Sensor-Technik), gefährlichen Lithium-Polymer-Akkus, also...

 ... alles, was den Feinwerktechniker begeistert.

 So bin ich jetzt, nach sehr vielen Hürden (irgendwie geht die gesamte Modellbauwelt davon aus, daß man schon 25 Jahre dabei ist) so weit, daß ein kleiner NightHawk 250 startbereit ist:


 Leider ist das Ladegerät für die Akkus noch nicht gekommen, so harre ich hippelig der Dinge, die da kommen mögen.

Montag, 27. April 2015

Mood-Light

 So langsam, aber sicher, sind der Shop, das Blog und meine Webseite auf ein neues, frisches Layout gebracht und kleine Nachwehen beseitigt.

 Daher hatt ich jetzt Zeit, endlich mal wieder eine neue Anleitung zu schreiben: Wie baue ich mir ein stylisches Mood-Light?

 Viel Spaß beim Nachbau!

Freitag, 20. März 2015

Neues Shop-Layout

 Lange habe ich hier im Blog nichts berichtet, jetzt ist es aber endlich so weit: mein Online-Shop hat ein neues, frisches Layout bekommen.

 In dem alten Shop-Layout war alles so klein-fitzelig, daß man die einzelnen Texte kaum noch lesen konnte.

 Jetzt also: alles in einem großzügigen Layout, das auch auf mobilen Geräten gut nutzbar ist.

 Viel Spaß beim stöbern!


Montag, 2. Februar 2015

WS2812B in Weiß

 Es gibt spannende neue Entwicklungen auf dem WS2812B-Markt. Denn so einfach es einem diese LEDs mit integriertem Controller auch machen, sie konnten bislang als Gemisch von Rot, Grün und Blau kein homogenes Weiß darstellen.

 Aber man höre und staune! Und schaue auf die unteren LEDs. WS2812B-LEDs in reinem Weiß! Sprich, jede der drei "Unter-LEDs" ist jeweils weiß und kann getrennt angesteuert werden.

 Sobald ich zu einem Testaufbau komme werde ich berichten. Aber das dauert, denn für einen Vergleich der Homogenität muß man ja mehr als eine LED am Laufen haben...

Dritte Evolutionsstufe

 Die dritte Evolutionsstufe des "Bare Bones Real Time Clock Arduino Ding" in teilweiser SMD-Ausführung, kurz BBRTCAD-TSMD (was für ein schöner Name) ist da (im Bild unten).

 Daran sieht man, daß Hardware-Entwicklung doch mühsam sein kann. Denn viele Änderungen sind nicht in der Schaltung, sondern in der Anordnung der Bauteile.

 Jetzt sollten aber alle zufrieden sein. Bastler, Gehäusefräser, Micro-USB-Verfechter...

 Im Moment laufen Angebotsanfragen bezüglich einer Teilbestückung, da die DS3231M und die Micro-USB-Buchse nur für fortgeschrittene SMD-Löter geeignet snd.

Sonntag, 11. Januar 2015

Der LDR und die LUX

 Alle meine Wortuhrkreationen haben ja einen LDR, um die Helligkeit der Anzeige an die Umgebungshelligkeit anzupassen.

 Ich habe dazu immer den erst besten LDR bei Reichelt gekauft. Letzthin habe ich mit WS2812B-Stripes und der Wortuhr-Firmware gespielt und festgestellt, daß der LDR irgendwie nicht so richtig will (wie ich es möchte, zumindest).

 Und bin dann auf die Idee gekommen, daß es vielleicht nicht der richtige LDR ist. Es gibt davon nämlich viele, für verschiedene Lichtstärken. Und damit kam die Frage auf: ja welche Lichtverhältnisse habe ich denn?

 Lange Rede, kurzer Sinn: ich liebe Meßgeräte, also habe ich kurzerhand ein LUX-Meter erstanden, und damit im Zimmer, in dem die Uhren typischerweise hängen, gemessen.


 Bisherige Messungen geben vielleicht schon einmal einen Anhaltspunkt:

  • Direktes Sonnenlicht durch 3-fach-Verglasung: 50.000 LUX.
  • Sonniger Vormittag, indirekt hell beleuchtete Wand: 1.200 LUX.
  • Sonniger Vormittag, indirekt dunkler beleuchtete Wand: 500 LUX.
  • Sonniger Wintermittag, kein direktes Sonnenlicht im Zimmer: 385 LUX.
  • Trüber Wintermittag: 110 LUX.
  • Später Nachmittag im Winter, düsteres Licht, reicht zum gemütlichen Essen, nicht zum Arbeiten: 2 (!) LUX.
 Vielleicht hilf das ja dem ein- oder anderen bei der Entscheidung für den 'idealen' LDR weiter.

Freitag, 9. Januar 2015

Die DS1307 und ihre Tücken

 Man glaubt ja immer, mit dem Arduino und den ganzen verfügbaren Beispielen ist das Leben einfach. Ist es meistens auch. Aber eben nicht immer.

 Schauen wir gemütlich die Sekundenanzeige einer Uhr an, die von einer DS1307 und einem Arduino gesteuert wird:



 Eigentlich langweilig, aber da! Bei 1:03 und bei 2:28! Da werden plötzlich 85 Sekunden angezeigt. Umgangssprachlich: WTF?

 Der überall zu findende Code für das Auslesen der DS1307 lautet:

Wire.requestFrom(_address, 7);

_seconds = bcdToDec(Wire.read() & 0x7f);
_minutes = bcdToDec(Wire.read());
_hours = bcdToDec(Wire.read() & 0x3f);
_dayOfWeek = bcdToDec(Wire.read());
_date = bcdToDec(Wire.read());
_month = bcdToDec(Wire.read());
_year = bcdToDec(Wire.read());

 Also: fordere von der DS1307 sieben Bytes an und verarbeite sie dann. Aber das ist eben nicht ganz richtig. Denn wer sagt denn, daß wir auch sieben Bytes bekommen haben?

 Ich habe daraufhin den Code modifiziert, so daß er 99 Sekunden zurück gibt, wenn keine sieben Bytes zurück kommen. Denn das ist der überall mißachtete Rückgabewert der Funktion "Wire.requestFrom()".

 Und siehe da:



 Bei 1:39 werden 99 Sekunden angezeigt! Es werden eben manchmal 7 Bytes angefordert, aber keine 7 Bytes zurück gegeben.

 Die Lösung lautete damit für mich: fordere 7 Bytes an, und wenn Du 7 bekommen hast, verarbeite sie. Aber eben nur dann. Bei mir:

do {
  // Reset the register pointer
  Wire.beginTransmission(_address);
  Wire.write((uint8_t)0x00);
  result = Wire.endTransmission(false); 
  
  count = Wire.requestFrom(_address, 7);
  
  if(count == 7) {
    // Success
    _seconds = bcdToDec(Wire.read() & 0x7f);
    _minutes = bcdToDec(Wire.read());
    _hours = bcdToDec(Wire.read() & 0x3f);
    _dayOfWeek = bcdToDec(Wire.read());
    _date = bcdToDec(Wire.read());
    _month = bcdToDec(Wire.read());
    _year = bcdToDec(Wire.read());
  }
  else {
    // Fail
    for (int i=0; i<count; i++) {
      Wire.read();
    }
    retries++;
  }

  result = Wire.endTransmission(true);
while ((count != 7) && (retries < 8));

Nach 8 Versuchen wird das Ganze abgebrochen. Jetzt zählen die Sekunden sauber und wie sie sollen...


Mittwoch, 7. Januar 2015

Raumgestaltung mit LED-Uhren

  Seit Kurzem sind wir stolzer Besitzer einer LED-Funk-Wanduhr von OCUVIA.

 Diese Uhren sind sehr stylisch, sie zeigen die Zeit mit farbigen, leuchtenden Punkten an.

 Der Sekundenzeiger bewegt sich dabei weich und organisch, was einen fließenden, beruhigenden Effekt gibt.

  Leider hat das anfänglich angestrebte Weihnachts-Rotwein-Rot letztlich doch nicht so gut zu unserem Interieur gepasst.

 Zum Glück kann man in den ersten 30 Tagen das Zifferblatt kostenfrei tauschen.

 Für das neue Zifferblatt nimmt man am Besten das passende Öffnungswerkzeug (Achtung! Die Schrauben haben ein Linksgewinde!). So kann man die Schrauben lösen, ohne das Acrylglas zu verkratzen.

 Jetzt passt das neue Schmuckstück wunderbar zu unserem restlichen Wohnungsinterieur.

 Danke an OCUVIA für diesen Service!

Donnerstag, 1. Januar 2015

Retro-Glasfaser-Lampen...

  ... haben so ihre Tücken. Als Kind war ich in den Einrichtungshäusern sehr beeindruckt von diesen Lampen. Meine Frau auch, darum hat sie sich eine zu Weihnachten gewünscht.

 Mit etwas Glück bekommt man sie auf eBay. Allerdings hat die Leuchtkraft stark nachgelassen, der Reflektor der Halogenlampe war blind und die Acrylglasscheiben matt geworden.

 Ein paar NeoPixel und eine ATMEGA328-MCU später erstrahlt die Lampe wieder in vollem Glanz! Und ist viel stromsparender als vorher.