====== Verbessern des Tools Sigrok ====== Challenge: "Erstelle ein responsives GUI für für einen Open Source Logic Analyzer" Bei der Hardware-Entwicklung ist es sinnvoll die digitalen Schnittstellen ausmessen zu können. dies ist mit einem [[https://wiki.mexle.org/doku.php?id=logic_analyzers|Logic Analyzer]] möglich. Diese Hardware nutzt dabei den PC oder mobilgeräde zur Darstellung der Signale. Dazu wird ein Darstellungs-Software wie Sigrok genutzt. Das Tool [[https://sigrok.org/wiki/Main_Page|Sigrok]] ist auch auf Android verfügbar. Leider ist es nur schwer auf einem Mobiltelefon bedienbar.{{ :Sigrok_Android.jpg?300|}} * kein klassisches Android UI (Fenster verdecken teilweise die Ansicht) * Größen von Knöpfen, Icons, Pulldowns und Slider unangepasst (teilw. nur 2-3mm) * Verschiedene Bedienelemente sind außerhalb des sichtbaren Bildschirms Sinnvolle Vorkenntnisse: native Android Programmierung, GibHub Tipps für die Entwicklungsumgebung: * [[https://academy.realm.io/posts/kowalczyk-mobilization-combining-swift-kotlin-c-cpp/|Swift mit C]] * [[https://developer.android.com/studio/projects/add-native-code|Add C and C++ code to your project]] ---- ===== Installieren der Arbeitsumgebung ===== Das Aufsetzen der Entwicklungsumgebung ist unter folgendem Link beschrieben: * https://sigrok.org/gitweb/?p=sigrok-util.git;a=blob;f=cross-compile/android/README * https://sigrok.org/wiki/Android pkg-config, doxygen, libboost sowie alle Pakete die im Readme (erster Link) beschrieben sind, müssen installiert werden. Bei der bisherigen Versuch die Umgebung aufzusetzen, kam folgende Fehlermeldung: -- Found LIBUSB: /home/pakoch/sr_android/lib/libusb-1.0.so CMake Error at /usr/share/cmake-3.12/Modules/FindBoost.cmake:414 (string): string sub-command REGEX, mode REPLACE needs at least 6 arguments total to command. Call Stack (most recent call first): /usr/share/cmake-3.12/Modules/FindBoost.cmake:490 (_Boost_COMPILER_DUMPVERSION) /usr/share/cmake-3.12/Modules/FindBoost.cmake:1430 (_Boost_GUESS_COMPILER_PREFIX) CMakeLists.txt:30 (find_package) -- Boost version: 1.58.0 -- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) -- Not generating API documentation fatal: Keine Namen gefunden, kann nichts beschreiben. -- Detected git snapshot version: unknown -- Not building libftdi1++ -- Not building python bindings -- ftdi_eeprom build is disabled -- libConfuse not found, won't build ftdi_eeprom -- Not building example programs. -- NOT building unit test -- Configuring incomplete, errors occurred! Die Rückmeldung des Autors war: Hier ist etwas unklar wo genau der Fehler herkommt und bei welchem Softwarepaket (vermutlich libfti?). Anyway, hier ist unser offizielles Build-Log zum Vergleich, das Android APK wird regelmäßig mittels Skript aus sigrok-util automatisch gebaut: https://sigrok.org/jenkins/job/sigrok-cross-android/platform=cross-arm-linux-androideabi/167/consoleFull Bitte für Detailfragen im #sigrok IRC Channel (FreeNode) fragen, da sind mehrere Leute die evtl. helfen können. PulseView-Änderungen bitte auch mit Soeren Apel (abraxa im IRC) abklären, wenn möglich.