Dongl QuickStart Guide

  1. 1

    Install SimpleBLE

    Python 3.10 or newer.

    Terminal
    pip install simplepyble==1.2.0
  2. 2

    Run a scan

    Plug in the Dongl and run scan.py. If the first line reads SimpleBLE Dongl N-Series, it's working. If not, see Troubleshooting.

    scan.py
    import simplepyble
    
    simplepyble.config.dongl.use_dongl_backend = True
    
    dongl = next(
        b for b in simplepyble.Backend.get_backends() if b.identifier() == "Dongl"
    )
    adapter = dongl.adapters()[0]
    print("Adapter:", adapter.identifier())
    print("SimpleBLE:", simplepyble.get_simpleble_version())
    
    adapter.scan_for(5000)
    for peripheral in adapter.scan_get_results():
        print(peripheral.identifier() or "(unnamed)",
              peripheral.address(), peripheral.rssi())
    Output
    Adapter: SimpleBLE Dongl N-Series
    SimpleBLE: 1.2.0
    Thermometer C4:2B:91:0E:5A:17 -58
    (unnamed) F0:9E:3C:44:81:0B -71
  3. 3

    Try the examples

    Add the Dongl line to any SimpleBLE example and pick SimpleBLE Dongl N-Series from the adapter list. More in the SimpleBLE docs.

    Add to any example
    import simplepyble
    simplepyble.config.dongl.use_dongl_backend = True

Troubleshooting

Common problems and how to fix them.

The Dongl isn't in the adapter list

Set use_dongl_backend before any other SimpleBLE call. Then check that the system sees the Dongl:

  • Linux: lsusb lists 3918:0001.
  • macOS: ls /dev/cu.usbmodem* shows a device.
  • Windows: a new COM port appears in Device Manager.
Linux: Failed to open serial port … Permission denied

Join the dialout group, then sign out and back in:

Terminal
sudo usermod -aG dialout "$USER"

Some distributions use a different group. Or install this rule under /etc/udev/rules.d/ and reconnect the Dongl:

udev rule
SUBSYSTEM=="tty", ATTRS{idVendor}=="3918", ATTRS{idProduct}=="0001", MODE="0660", GROUP="dialout", TAG+="uaccess"
Windows: the COM port is in use

SimpleBLE needs the Dongl's port to itself. Close serial monitors or IDE consoles that have it open, then run the script again.

macOS asks for Bluetooth access

Allow it. SimpleBLE also starts the Mac's built-in Bluetooth when it lists adapters. If you declined, turn on your terminal under System Settings → Privacy & Security → Bluetooth.

Send feedback

What worked, what didn't, and what you built with it.

By sending this form, you agree to our Terms & Conditions, Privacy and Data Protection Policy.

Or email contact@simpleble.org.

Evaluation sample for non-commercial testing. License terms