By using this website, you agree to our use of cookies. We use them to improve site functionality and provide a smoother user experience.
Accept
Elemyo | Updated on 26 August 2026

Getting Started with
MYOblue GUI

MYOblue GUI is powerful and easy to use, free, open-source, cross-platform Python-based graphical interface for EMG analysis using MYOblue sensors. MYOblue GUI provides real-time visualization, analysis, recording and processing of EMG and ECG signals.

Supported operating systems: Windows, Linux, macOS.
The program is distributed free of charge under a MIT license.
Latest version: MYOblue GUI v1.2.2

1. Installing
Follow the detailed Installation Guide to install the GUI before proceeding.
2. Preparing Your Sensors
Get your sensors ready for an EMG recording session:
  1. Connect the USB receiver - Plug the USB dongle into any available port on your computer. Make sure the LED indicator on the USB receiver lights up. Important: Ensure the port supports data transfer, not just power charging.
  2. Turn on the sensors - Make sure the LED indicator on the sensor lights up with a steady glow.
  3. Attach the sensors - Place the sensors on the target muscle, aligned along the muscle fibers.
3. Launching MYOblue GUI
Run the MYOblue_GUI.py by double-clicking it, or launching it through Python IDLE.
4. Control Panel Overview
Connection & Recording:
  • COM port (Dropdown menu):
    Displays the active connection port. This menu is locked while the signal is streaming. If you have other devices connected to your computer, you may see more than one COM port listed. Before starting the live connection, you need to select the actual port — you can easily check which one it is by seeing which port appears in the list when you connect the USB dongle.
  • Start/Stop live:
    Manually connects or disconnects the software from your sensors. If the USB dongle is already connected when MYOblue GUI launches, the GUI will automatically start streaming from the first available COM port. If the dongle is connected after the GUI has already launched, you'll need to start the live connection manually by pressing this button. If the dongle gets disconnected while streaming, you must reconnect it by pressing this button to stop, then pressing it again to start.
  • Start/stop recording:
    Records signals and automatically saves two files in the "rec" folder (the same directory as MYOblue_GUI.py): a .bin file, used only for playback inside the GUI, and a .txt file containing the numerical data — which you can import into MATLAB, Excel, or any other program you prefer.
Interface Controls
  • Refresh Screen (R):
    Clears all current data from the graphs and restarts drawing from the left edge.
  • Pause (Space):
    Freezes the graphs for closer examination. Connection stays active.
Playback:
  • Select playback file:
    Press the file selection button to see all recordings saved in the "rec" folder (the same directory as MYOblue_GUI.py), then choose the one you want to play.
  • Start/stop playback:
    Plays or stops playback of the selected recording.
  • Playback scrollbar
    Drag to scroll or fast-forward through the recorded data.
Signal Display Modes:
  • Raw EMG:
    Shows the direct, unprocessed electrical signal recorded from muscles during activation. When the Bandstop or Bandpass filter is applied, this mode shows the filtered result signal.
  • Rectification:
    Displays the raw EMG signal in rectified form. To calculate rectification, the raw EMG signal's baseline is constrained to zero, and the result is taken by absolute value (module) to convert negative points to positive. When the Bandstop or Bandpass filter is applied, this mode shows the filtered result signal. The rectified signal is automatically used for the envelope calculation.
  • Envelope:
    Overlays a smoothed envelope line. The envelope is calculated using the Triple Exponential Moving Average (TEMA) method. The adjacent field sets the smoothing factor (e.g., 0.95) — lower values give a smoother curve. When the Bandstop or Bandpass filter is applied, this mode shows the filtered result signal. The envelope signal is automatically used for the RMS calculation.
  • RMS (Root Mean Square):
    Plots the RMS signal over time, reflecting overall muscle contraction power. Calculated as the root mean square of the signal envelope. The adjacent field sets the calculation time step window. When the Bandstop or Bandpass filter is applied, this mode shows the filtered result signal.
Filters:
  • Bandstop Filter (50 Hz / 60 Hz):
    Suppresses electrical interference from the power grid. Not required for most applications — the MYOblue sensors are fully wireless and have a high CMRR (common-mode rejection ratio), giving them strong immunity to power grid noise even when attached to skin through body hair. Noise may become apparent if you touch power grid cables or devices powered by the electrical grid, but even then its amplitude is much smaller than the EMG signal. This filter is only needed when investigating low-amplitude EMG signals whose amplitude approaches the noise amplitude. Choose 50 Hz or 60 Hz based on the power grid frequency used in your country. The MYOblue GUI uses a 4th-order Butterworth bandpass filter.
  • Bandpass Filter:
    Suppresses frequencies outside the desired range. It features two adjustable settings: a low-frequency cutoff (e.g., 10 Hz) and a high-frequency cutoff (e.g., 480 Hz). Since the MYOblue v1.2 already has a native bandwidth of 10–500 Hz, you only need this filter if you want to isolate a specific frequency band or filter out low-frequency movement artifacts. The MYOblue GUI uses a 4th-order Butterworth bandpass filter.
4. Main Graph Area Overview
The central part of the screen is dedicated to the visual tracking of your muscles. Each connected sensor gets its own independent graph widget stacked vertically on the canvas. Changing the SENSORS NUMBER on the top bar automatically adds or removes these widgets.
  • X-Axis (Horizontal):
    Displays the timeline of your experiment or workout session, formatted as minutes:seconds (MM:SS)
  • Y-Axis (Vertical):
    Displays the amplitude of the electromyography (EMG) signal, measured in microvolts (uV).
  • Zooming:
    Scroll your mouse wheel up or down over any widget to zoom in or out on its specific signal peaks.
  • Auto-Scale Feature:
    If a sensor's signal is too small or cuts off the screen, hover over that specific graph widget and click the arrow icon that appears in its bottom-left corner. The software will instantly auto-adjust the vertical scale for that channel.
  • Moving the Canvas:
    Click and hold your left mouse button inside a specific widget to drag its graph. While streaming, you can move it vertically. While on Pause, you can move it both vertically and horizontally to check past data history.
  • Resizing Widgets:
    Hover your mouse cursor over the horizontal border between any two stacked widgets. Click and drag up or down to adjust their individual heights on the screen.
5. Sensor Status & Muscle Triggers
  • Battery:
    Shows the active sensor's voltage (V). Reads 0.00 V if disconnected, and turns red when running low.
  • Trigger value:
    Sets the muscle contraction sensitivity threshold. When your contraction signal crosses this level, a "contraction event" is logged.
  • Number of contr.:
    An automated counter that tracks how many times your muscle contraction has exceeded the set Trigger value.
  • Histogram Bars:
    Visually displays real-time muscle tension for each channel. The higher the bar, the harder the muscle is contracting.
  • Frequency (Hz) Graph:
    Displays the Fast Fourier Transform (FFT) analysis. This shows the frequency composition of your muscle activity, which researchers use to track muscle fatigue. You can switch between sensors using the Sensor dropdown.
  • System Console:
    The black log box at the very bottom prints status updates.
6. Hotkeys Reference
  • Spacebar:
    Pause / Resume graph visualization.
  • R:
    Refresh the screen and restart graph drawing.
  • 1-9:
    Timestamp. Set a mark at the exact moment a target event occurs.
copyright: Elemyo