KymoProbe · PlatformIO firmware

From your board to live curves in minutes.

KymoProbe is ready-made firmware for ESP32, Arduino and STM32. Flash it, connect KymoStudio and watch the test signals scroll – then replace them with your own sensors, control variables or states. Under the hood runs KymoCore.

  1. 1

    Clone

    With submodules – KymoCore lives in lib/KymoCore.

    git clone --recurse-submodules https://github.com/CodeName-666/kymoprobe.git
  2. 2

    Flash

    Build and upload the ESP32 example with PlatformIO.

    pio run -e nodemcu-32s -t upload
  3. 3

    Connect

    Close the serial monitor and open the port in KymoStudio at 115200 baud, 8N1. Sine and sawtooth arrive at 50 Hz each.

Examples

One example per board and link.

All examples are built and checked; CI builds the most important ones on every push.

ESP32 main project

NodeMCU-32S – minimal configuration over UART; demo modes for MQTT, TCP and maximum throughput.

Arduino analog

Uno, Nano, Mega – one analog value, as simple as possible.

Arduino multi-sensor

Uno, Nano, Mega – Y, XY and XYZ at different rates.

ESP32 serial

ESP32, ESP32-S3, ESP32-C3 – serial transmission with timestamps.

ESP32 Wi-Fi and MQTT

ESP32, ESP32-S3 – wireless measurements through an MQTT broker.

STM32 UART

Nucleo F401RE, F411RE, Blue Pill – UART with the STM32 HAL.

STM32 USB CDC

Blue Pill F103C8 – virtual COM port over USB.

Native

Generate frames on the PC, without hardware.

ESP32 trace demo

Runtime trace events over the same UART as the measurements – for the trace, function flow and hotspot views.

Your measurements

Change one file

Channels, sampling intervals and the measured values live in src/kymo_config.cpp:

static uint8_t sample(void *, uint8_t id, KymoSample *out)
{
    out->value = id == 0 ? readTemperature() : readPressure();  // your sensors
    return 1;
}

static const KymoChannel channels[] = {
    {20, 0, 0},   // channel 0 every 20 ms
    {100, 1, 0}   // channel 1 every 100 ms
};

Separate nodemcu-32s-development and nodemcu-32s-production environments switch telemetry on or compile it out with KYMO_ENABLED=0 – without source edits.

KymoProbe is dual-licensed under GPLv3 or a commercial license. Guide: plot ESP32 data live →