Programming adapter for esp-12

If you want to flash a new firmware a esp8266 model esp-12e you need quite a lot of connections:esp12e-pinout

  • Vcc to Pin 3, 8 and 17
  • GND to Pin 15, 16 and 18
  • TX to Pin 22, RX to Pin 21

20170225_141022_001If you do not have a “in circuit” programming possibility, it is quite hard to connect every pin just for programming.

That’s why I looked for something like an adapter to put the esp in just for programming like a eprom programming device, but didn’t find one. So I decided to build my own.

So I take a 1 row female header and stripped the plastic case apart so only the golden spring parts are left.

20170225_141123Placing them onto a breadboard is also not that easy because the esp uses a 2mm raster not the standard 2.54mm. But with a few additional drills everything fits in the end. For soldering it is best to keep a (maybe broken) esp already plugged in so every pin ist automatically in the right position.

So with this little adapter one can plug an esp-12 in, flash new firmware and pull it out again.

Enjoy.

Veröffentlicht unter Electronics | Hinterlasse einen Kommentar

Eclipse CDT zur PIC / PIC32 Entwicklung nutzen

Will man auf den Micro-Controllern der PIC Familie von Mircochip Software, so tut man sich auf der Suche nach einer professionellen IDE schwer. Vor allem wenn es nichts kosten soll und man den Komfort von Eclipse gewohnt ist.

Es gibt die MPIDE und MPLAB X, letzteres auf Basis von Netbeans und daher wahrscheinlich recht mächtig (ich hatte noch keine Gelegentheit es zu testen).

Was die Suche zusätzlich erschwert ist die Vielfalt der angebotenen Boards und Prozessortypen. Was in der AVR-Welt noch halbwegs überschaubar ist, ist bei Microchip doch recht unübersichtlich bzw vielfältig.

Gut gefallen hat mir da UECIDE. Sie bietet mit ihrem Plugin-Manager genau das Mittel schnell und einfach für unterschiedliche Boards und unterschiedliche “Cores” (Laufzeit-Umgebungen) eine Umgebung zusammen zu stellen. Die notwendigen Source und Toolchains werden einfach herunter geladen und im Homeverzeichnis “installiert”. Selbst die “Uploader” zum Flashen der Boards sind direkt dabei.

Natürlich kann man diese IDE trotzdem niemals mit der Mächtigkeit einer Eclipse vergleichen und auch das Tooling (SVN, GIT, Debugging, Code Analyse usw.) ist bei weitem nicht so gut.

Wenn man allerdings eine reine CDT-Eclipse (Kepler) installiert und die Toolchains und Board-Definitionen von UECIDE mitbenutzt, dann hat man sehr schnell eine lauffähige Eclipse-Umgebung mit allem Komfort.

Weiterlesen

Veröffentlicht unter Allgemein | 1 Kommentar

Audible Hörbücher in MP3 wandeln mit Tags und Kapiteln

Seit Audible zu Amazon gehört, bin ich mal wieder Audible-Kunde. In der Tat gibt es hier das eine oder andere Schnäppchen zu machen.

Immer noch ärgerlich: das Audible eigene Dateiformat, was sich nur mit den Audible Software-Playern abspielen läßt. Einziger Vorteil: die Kapitelnavigation.

Nun gibt es Möglichkeiten die Audible-Formate nach mp3 zu konvertieren. Am einfachsten geht das mit dem “alten” 4er Format (Datei-Endung .aa). Für dieses gibt es noch einen DirectShow-Filter (AudibleMediaPlayerFilter.exe) über den sich mit Programmen wie Goldwave oder anderen direkt ein grosses MP3-File erzeugen läßt.

Wie ich erst gestern gefunden habe, gibt es Programme die aus .aa oder .aax auch noch die Kapitel Informationen extrahieren, da diese auch vergleichsweise einfach (weil unverschlüsselt) auszulesen ist.

Damit kann man dann ein .cue Sheet für MP3DirectCut erstellen e voila schon hat man kapitelweise geschnittene MP3s aus dem langen Hörbuch gemacht.

Ein einfacher Converter, der Zeilen im Format HH:MM:SS einliest und ein fertiges CUE-File schreibt, sieht in Java so aus:

    public void convert(String[] args) {
        try {
            PrintStream cue = new PrintStream(new File(args[0]+".cue"));
            BufferedReader r = new BufferedReader(new InputStreamReader( new FileInputStream(args[0]),"Cp1252"));
            String line;
            String name = new File(args[0]).getName();
            String title = args[1];
            String artist = args[2];

            name = name.substring(0,name.lastIndexOf("."));
            cue.format("PERFORMER \"%3$s\"\r\n" +
            		"TITLE \"%2$s\"\r\n" +
            		"FILE \"%1$s.mp3\" MP3\r\n",name,title,artist);
            int i = args.length>3?Integer.parseInt(args[3]):1;
            while( ( line = r.readLine() ) != null ) {
                String p[] = line.split(":");
                int m = Integer.parseInt(p[0])*60 + Integer.parseInt(p[1]);
                int s = Integer.parseInt(p[2]);
                cue.format("  TRACK %1$02d AUDIO\r\n" +
                		"    TITLE \"(Track %1$02d)\"\r\n" +
                		"    INDEX 01 %2$02d:%3$02d:00\r\n" +
                		"",i,m,s);
                i++;
            }
            r.close();
            cue.close();
        } catch( Exception e) {
            e.printStackTrace();
        }
    }

Dieses CUE-File läßt sich in MP3DirectCut als Projekt laden und mit “Split save …” werden die einzelnen MP3-Files erzeugt, gleich mit richtigem Namen und ID3 Tags.

Um das einfach nutzen zu können findet ihr hier AaxChapterConvert.jar die kompilierte JAR Datei. Allerdings muss Java auf dem Computer installiert sein. Der Aufruf sieht so aus:

java -jar AaxChapterConvert.jar <filename> <title> <artist> <track-offset>
Veröffentlicht unter Allgemein | 5 Kommentare

Untertitel und Kapitel für MKV erzeugen mit DVDate

Wenn man – wie ich – noch viele alte miniDV Kasetten hat und vor der Herausforderung steht diese Archivieren zu müssen, hat man ein Problem: was ist nur alles drauf auf den ganzen Kassetten?

Meine Lösung: Komplett per Firewire auf den Rechner, dann mit x.264 komprimieren und nun als MKV speichern. Der Inhalt erschließt sich so aber immer noch nicht.

Da viel mir ein, dass miniDV ja einen DateCode schreibt, zu jeder Aufnahme also weiss, wann sie gemacht wurde. Etwas Googeln liefert das Tool DVDate, was diese Daten ans Licht bringt.

Damit lassen sich Szenen auffinden und man hat auch wieder die Information, wann etwas aufgenommen wurde.

Die Idee: erzeuge eine OGM Kapitel Datei und eine SRT Untertitel Datei und packe das Ganze mit mkvmerge in eine einzige MKV Datei.

Ein kleiner Converter in Java erzeugt die beiden Files. Einfach die Scenen als Text exportieren und den Converter mit “java -jar ChapConvert.jar bla_scn.txt” auf rufen und schon werden die Files erzeugt.

Zuvor sollte man allerdings den Scene-Editor von DVDate nutzen und die Scenen benennen. Mindestens eine Zeitstempel mit “%D” ist Pflicht. Wer sich die Mühe macht echte Namen zu vergeben, findet die Namen als Kapitelname und auch in den Untertiteln wieder.

Hier gibt das ChapConvert.jar

Veröffentlicht unter Allgemein | Verschlagwortet mit , , , , , | Hinterlasse einen Kommentar

Spring Dependency Graph mit yEd / Graphml

Wenn man ein fremdes Projekt, was mit Spring gemacht ist, zum ersten Mal anschaut, ist es nicht leicht sich einen Überblick zu verschaffen. Insbesondere die Abhängigkeiten der SpringBeans untereinander sind nicht leicht zu überschauen.

Verschiedene IDE Integrationen versprechen Abhilfe. Die Spring Tool Suite (STS) kann beispielsweise einen Abhängigkeitgraphen anzeigen, allerdings erlebt man eine Enttäuschung wenn man dies mit einem auch nur halbwegs ernsthaften Projekt versucht. Weiterlesen

Veröffentlicht unter Allgemein | Verschlagwortet mit | 3 Kommentare

Debuggen bei der JDBC Programmierung

Schon zum zweiten Mal in den letzten drei Monaten hat mich ein Projektauftrag wieder tief hinunter an die Datenbank-Persisitenz geführt, wo noch richtige SQL-Statements im Code zu finden sind ;-)

Für eigene Projekte und insbesondere auch für das Einarbeiten in fremde Projekte ist es da sehr nützlich, wenn man genau sieht, was auf der Datenbank so alles passiert.

Hier hilft das Tool log4jdbc-remix sehr gut weiter, weil es sowohl alle Anfragen als auch die Ergebnisse mitschreiben kann. Es lassen sich auch eigene LogFormatter integrieren und selbst der Umgang mit mehreren Datenbanken ist in der neusten Release 0.2.8 kein Problem.

Da ich selbst auch schon über ein paar kleinere Probleme gestolpert bin, kann ich ausserdem den guten Entwickler-Support unterstreichen: Jedesmal hat Tim, der Owner des Projekts, sehr schnell reagiert und das Problem beseitigt oder einen Patch übernommen.

Veröffentlicht unter Java | Verschlagwortet mit | 1 Kommentar

Energiesparlampen / LED Leuchtmittel

Neulich wollte ich etwas für mein Ökogewissen tun und einige der stromfressende Halogenlampen (12V GU5.3) durch LED-Leuchtmittel ersetzen. Zufällig fand ich welche von NBS angeboten mit nominellen 210 Lumen bei 3 W und der Farbe warmweiss. Das zu einem Preis von unter 10 Euro was mir ein guter Preis zu sein schien.

Mit dem Kauf der Lampen ging allerdings der Spass erst los … Weiterlesen

Veröffentlicht unter Allgemein | Hinterlasse einen Kommentar

Cassandra CQL mit JDBC-Driver

Hatte endlich mal Gelegenheit mich mit einer NoSQL Datenbank zu beschäftigen: Cassandra von Apache. Allerdings fühlte ich mich aus Anwender – in meinem Fall also Anwendungsprogrammierer – in die Steinzeit der Datenbankprogrammierung zurückversetzt: es gibt nur proprietäre Schnittstellen und die sind auch nicht abgekündigt (Thrift). Selbst Apache empfiehlt auf ein abstrakteres API wie zum Bespiel Hector zu setzen.

Leider fühlt sich auch Hector in keiner Weise so an wie man es von konventioneller Datenbank-Programmierung gewohnt ist. Das Java-API ist nach meinem Geschmack “gewöhnungsbedürftig” um es einmal diplomatisch auszudrücken.

Dabei gibt mit Spring-JDBC (oder neuerdings mit Spring-Data) längst gute Beispiele wie man es gut machen kann. Jetzt kann man natürlich einwenden, dass diese “alten” Ansätze für SQL-Datenbanken gemacht sind und sich daher nicht für NoSQL Lösungen eignen, aber wenn man zweimal hinsieht, dann merkt man schnell, dass das gar nicht stimmt.

Weiterlesen

Veröffentlicht unter Java | Hinterlasse einen Kommentar

Serendipty auf WordPress migriert

Nach einiger Mühe ist das Blog nun endlich auf WordPress umgestellt.

Das Update von Serendipity auf die neuste Version war eh überfällig, also warum nicht gleich umsteigen auf WordPress. Sieht einfach hübscher aus und kann mehr.

Leider ging der Import der Daten nicht so einfach wie gedacht.

Zwar gibt es hier von Snowulf einen Importer und noch ein Update zur 1.5 hier. Aber zum einen muss man das Readme genau lesen und sich trauen, das SQL direkt anzuwenden auch wenn die WP Version nicht mehr stimmt, zum anderen sind dann immer noch nicht alle Inhalte mirgiert.

Der erste Importversuch wurde gleich mittendrin abgebrochen, weil der Nutzernamen im Import schon vergeben war und das Import-Script das nicht abfängt. Leider waren die Kategorien aber schon importiert.

Dann wurde die mehrsprachigen Artikel nicht übernommen. Okay das waren hier nur 4 und da konnte man das Englische manuell rüberziehen.

Aber es geht auch die Hierarchie der Kommentare verloren. Und die Formatierung von Quellcode geht in WP auch ganz anders (zum Glück aber besser, nur umstellen muss man trotzdem).

Noch eine gute Quelle ist hier zu finden. Dort wird auch beschrieben was man tun muss damit die alten Permlinks wieder funktionieren. Allein die Post-IDs konstant zu halten reicht natürlich nicht, weil die Links von s9y ganz anders aussehen und sich mit den Standard-Einstellungen von WP auch nicht nachbilden lassen.

Leider nutzt der Autor zum Umschreiben der URL eine Konfiguration lighttpd, was bei Apache2 natürlich nicht passt. Mit etwas PHP bekommt man das aber auch in der Griff. Nur die Feed-URL sind hier jetzt noch nicht gerade gezogen, aber ich befürchte soviele Abbonnenten hab ich gar nicht ;-)

Naja jetzt ist’s geschafft und vielleicht lebt dadurch das Blog wieder etwas auf.

Veröffentlicht unter Allgemein | Hinterlasse einen Kommentar

Der Gott des Gemetzels

Nachdem das Blog nun endlich auf WordPress umgezogen ist, hab ich auch wieder etwas mehr Schreiblust und möchte daher einen Film empfehlen:

der neue Polanski Film “Der Gott des Gemetzels”. Herrlich anzuschauen, absolute Empfehlung ein “Kammerspiel” im Kino mit tollen Charakteren, einer langsamen Entwicklung hin zum kompletten “Gemetzel” wirklich sehenswert. Von Constantin Film.

Veröffentlicht unter Movies | Hinterlasse einen Kommentar