Falls wer Lust hat mal zu schauen:
Wunderschöne README!
Hab nur kurz über den Code geschaut und mir sind zwei Sachen aufgefallen:
Du schreibst „activate the error output on the serial interface in DebugProject.h by defining the line #define DEBUG_SERIAL“, aber DebugProject.h
definiert immer DEBUG_SERIAL
? Sollte man also DebugProject.h
nicht einbinden, wenn man kein Debugging aktiv haben möchte?
Außerdem schreibst du „copy the library into the project directory“ um die Bibliothek zu installieren, hast aber gleichzeitig eine library.properties, die das Einbinden über den Library Manager ermöglicht.
Hallo Klemens, schon von dir zu lesen.
„…aber DebugProject.h definiert immer DEBUG_SERIAL“
Nun ja es ist so, ursprünglich hatte ich DEBUG_SERIAL auskommentiert, da ich mir aber sorgen machte, dass die Arduino Leute nicht verstehen wie die Debug Ausgabe funktioniert, habe ich es standardmäßig wieder einkommentiert. Durch deinen Kommentar wird mir bewusst, das dies jetzt aber nicht mehr konsistent ist. Ich werde das ändern.
„Außerdem schreibst du „copy the library into the project directory“ um die Bibliothek zu installieren, hast aber gleichzeitig eine library.properties, die das Einbinden über den Library Manager ermöglicht.“
Ja, offen zugestanden: Ich habe noch nicht so richtig verinnerlicht, wofür die library.properties gut ist. Da ich mit dem Gedanken spiele, die Bibliothek in die Arduino Lib Domain einzufügen, hatte ich irgendwo gelesen, dass die library.properties Pflicht ist. Ich selbst nutzte die Arduino Lib Verwaltung eher selten und füge die Libs eigenständig in meine Projekt mit ein, da es mich immer interessiert, wie der Code organisiert ist. Und dann ist dann noch mein Hang zum statischen kompilieren. So entstand dieses Kuddelmuddel.
Du meinst, ich lasse die Einleitung zu „Usage“ einfach weg und stelle mit der library.properties und meinem Projekt einfach einen PR in das Arduino Repo ?
Da Ist heute gleich ein issue reingeflattert, trifft in etwa den Punkt mit dem project directory.
Ich habe jetzt alles für die Arduino library-registry fit gemacht und hochgeladen.
Ich hoffe es ist so halbwegs logisch. Aber falls du (oder wer anders) noch Kritik hast, dann gerne her damit.
Ach ja zur Frage der DebugProject.h:
Der Header muss zwangsläufig mit rein, da dort die Rückgabewerte als Symbolische Konstanten definiert sind.
Die Lib ist übrigens aus dem anderen Projekt mit den DTMF Tönen hervor gegangen, da alles etwas gewachsen ist.
Arduino library-registry hat mich dazu gezwungen das Projekt umzubenennen. Es ist jetzt hier gelistet:
Ach ja @Klemens, ich habe dich mal mit als Code Reviewer in den „Thanks to“ erwähnt und verlinkt, ich hoffe das ist ok.