Messdaten-Logging
Sensorwerte, Regelgrößen, ADC-Kanäle: mit Zeitstempel aufnehmen, ansehen, wieder abspielen und als CSV exportieren.
EMBEDDED DATA LOGGING · TRACING
Messwerte von ESP32, STM32, Arduino oder aus Python-Skripten aufzeichnen, live ansehen, später wieder abspielen und als CSV exportieren. KymoStudio empfängt und speichert auf dem PC; KymoCore ergänzt die Firmware um Gerätezeit, Binär-Frames und Laufzeit-Traces.
„Embedded Logging“ steht für drei verschiedene Aufgaben. Kymotrace übernimmt zwei davon – und sagt klar, welche nicht.
Sensorwerte, Regelgrößen, ADC-Kanäle: mit Zeitstempel aufnehmen, ansehen, wieder abspielen und als CSV exportieren.
Funktionen, FreeRTOS-Tasks und Interrupts auf der Zeitachse: Laufzeiten, Hotspots und Jitter, exportierbar als CSV oder Chrome-Trace.
Meldungen wie ERROR: sensor timeout mit INFO/WARN/ERROR und Filtern. Dafür gibt es eigene Logging-Bibliotheken; Kymotrace verarbeitet Zahlen, keine Textmeldungen.
temp:23.5,hum:40. Oder Binär-Frames mit KymoCore – aus der Firmware oder aus Python.Alle drei landen in derselben Arbeitsfläche, derselben Aufnahme und demselben CSV-Export.
Bestehende Firmware bleibt, wie sie ist. Beschriftete Werte, Teleplot oder CSV-Spalten.
temp:23.5,hum:40
Gerätezeit, Binär-Frames mit CRC, Laufzeit-Traces und Live-Parameter auf dem Mikrocontroller.
lib_deps = codename666/KymoCore
Raspberry Pi, Prüfstand, Simulation: Werte aus Skripten senden, im selben Format wie die Firmware.
pip install kymocore
OHNE BIBLIOTHEK
Bestehende Firmware muss nicht umgebaut werden. Jede Bezeichnung wird zu einem Signal mit eigenem Namen. Eine Zeile wird ganz oder gar nicht übernommen – Spalten verrutschen nie.
void loop()
{
// Bezeichnung wird zum Signalnamen
Serial.print("temp:");
Serial.print(readTemperature());
Serial.print(",hum:");
Serial.println(readHumidity());
delay(100);
}
Textzeilen tragen keine Gerätezeit. Für exakte Zeitstempel, hohe Datenraten, CRC-geschützte Frames oder Laufzeit-Traces bindest du die MIT-lizenzierte Bibliothek KymoCore ein – heap-frei, C++11 mit C-API.
lib_deps = codename666/KymoCore @ 7.2.1
CRC-Fehler, ungültige Frames, unlesbare Bytes und Pufferüberlauf werden je Quelle gezählt und in der Aufnahme vermerkt. Lücken in der Gerätezeit zeigt KymoStudio als Schätzung an – Frames tragen keine Sequenznummer, deshalb kein Beweis.
Stand KymoStudio 2.8.0 und KymoCore 7.2.1.
| Funktion | Status | Details |
|---|---|---|
| Aufnahme & Wiedergabe | ja | Eigenes Aufnahmeformat, Wiedergabe nur lesend |
| Export | ja | CSV (live oder aus Aufnahme); Traces auch als Chrome-Trace-JSON |
| Zeitbasis | ja | Gerätezeit (ms/µs), aus Abtastrate oder Empfangszeit – sichtbar gekennzeichnet |
| Quellen | ja | Firmware per Textzeilen oder KymoCore; PC-Skripte per KymoCore für Python |
| Verbindungen | ja | Seriell, TCP, UDP, MQTT, CAN |
| Datenverlust | teilweise | Zähler je Quelle; Lücken nur geschätzt |
| Tasks, ISRs, Funktionen | ja | Instrumentierung mit KymoCore; FreeRTOS-Adapter |
| Marker | ja | In KymoStudio mit Notiz; aus der Firmware als Zahlenwert |
| Textmeldungen, Log-Levels | nein | Nicht vorgesehen |