Skip to content

Drone Light Show Edition Support Suite for DroneBridge for ESP32

License

Notifications You must be signed in to change notification settings

DroneBridge/DLSECommercialSupportSuite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DLSECommercialSupportSuite

Drone Light Show Edition Support Suite for DroneBridge for ESP32.

This suite provides tools and scripts to manage, configure, and license DroneBridge for ESP32 devices, specifically for the Drone Light Show Edition (DLSE).

Prerequisites

  • Python 3.10 or higher
  • A DroneBridge account and license token (for licensing features)

Installation

  1. Clone the repository:

    git clone --recursive https://github.com/DroneBridge/DLSECommercialSupportSuite.git
    cd DLSECommercialSupportSuite
  2. Install the package and dependencies:

    pip install .

Usage

The suite includes several example scripts demonstrating different functionalities. Before running any script, open it and check for configuration variables (like MY_SECRET_TOKEN, ESP_SERIAL_PORT, or IP addresses) that need to be updated for your environment.

Key Script

  • batch_install_dlse_allinone.py: Batch processing that takes care of it all. Settings, flashing & activation. It can pull license from the ESP32 prior to flashing in case the license server is not available
  • DroneBridgeCommercialSupportSuite.py: The main library file containing helper functions.

Examples on individual functions

  • example_esp32_dlse_allinone_install.py: A comprehensive script that derives the activation key, requests a license, embeds it into settings, generates a partition binary, and flashes the firmware. Update MY_SECRET_TOKEN and ESP_SERIAL_PORT before running.
  • example_esp32_get_license.py: Standalone script to request a license file using an activation key.
  • example_params_update_flash.py: Demonstrates how to update configuration parameters (like IP and Hostname) in the CSV and flash them.
  • example_esp32_ota_update.py: Performs an Over-The-Air (OTA) firmware update for a range of IP addresses.
  • example_esp32_download_log.py & example_esp32_download_log_MAVSDK.py: Examples for downloading logs from the flight controller via the ESP32 bridge.

Example

Example for a fully automated activation and installation of DLSE on a ESP32 connected via serial, including a pre-defined configuration: Run the script first. Then plug in the ESP32 via serial.

python batch_install_dlse_allinone.py --token <YOUR_SECRET_TOKEN> --release_folder "DroneBridge_ESP32DLSE_BETA3" --settings-file my_parameters/dlse_my_params.csv --start-index 55

Full All-In-One Installation Manual for DLSE Drones

This script allows for batch processing of drones for a show. Run it and just plug in your ESP32s one by one. It will flash, activate & configure your DLSE ESP32 all in one go!

  1. Manually setup an initial ESP32 with a working config for your show drone
    1. Use e.g. the online flashing tool to install DLSE to your ESP32
    2. Power-cycle the ESP32 and connect to the access point it created "DroneBridge for ESP32" using the default password "dronebridge"
    3. In your browser navigate to the web interface by going to 192.168.2.1
    4. Configure the ESP32 according to your needs and test it with your show drone
    5. Manually activate it using the activation key from the bottom of the ESP32s webpage and your secret token from drone-bridge.com to generate a license file using the online generator
    6. Upload the license via the ESP32 web interface using "Manage License"
    7. Export the settings using the ESP32 web interface
  2. Setup the DLSE Commercial Support Toolchain
    1. Go to an appropriate folder on your computer and run
      git clone --recursive https://github.com/DroneBridge/DLSECommercialSupportSuite.git
      cd DLSECommercialSupportSuite
      pip install .
    2. Download the latest DLSE release binaries and extract them to the DLSECommercialSupportSuite folder
  3. From now on it is automated, and you can automatically apply the configuration to all your ESP32s.
    BEWARE: In case you are not flashing BETA3 to a ESP32-C5 you need to change the address_binary_map at the bottom of the example_esp32_dlse_allinone_install.py script. Then inside DLSECommercialSupportSuite folder run:
    python batch_install_dlse_allinone.py --token <YOUR_SECRET_TOKEN> --release-folder "DroneBridge_ESP32DLSE_BETA3" --settings-file my_parameters/dlse_my_params.csv --start-index 55
    Where the --release-folder points to the folder with the DLSE binaries you downloaded
    Where the --settings-file points to the file you exported from the ESP32 web interface during initial setup.
    Where the --start-index For dynamically updating the DLSE parameters adding a postfix to ssid_ap (SSID in AccessPoint Mode), wifi_hostname (WiFi Hostname) and ip_sta (static IP address). With start-index 33 e.g. the ssid_ap will become <APSSID_SET_BY_USER>33

The script above will:

  • Automatically request, register with your account and download a license with the license server of DroneBridge
  • Flash the DLSE raw firmware together with your specified settings and license
  • Offline activation mode if a local license file for the ESP32 is found in /received_licenses or if the ESP32 is already activated and gets flashed again (pulls & applies the license prior to writing new release over it)
  • Log all steps to /logs

Running the script multiple times requesting a license with the same activation key (ESP32 ID) will not result in the loss of multiple credits. Re-generation of a license is free of course.

License

MIT License

About

Drone Light Show Edition Support Suite for DroneBridge for ESP32

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages