Skip to content

Build WhisperTrack

Github Repository

Getting Started

Prerequisites

  • Docker

Build

  1. Clone the repository:

    git clone https://github.com/Delresearch/WhisperTrack-Software.git
    cd WhisperTrack-Software
    git submodule update --init --recursive
    
  2. Build the Docker image:

    cd docker
    docker build -t whispertrack .
    
  3. Build the application:

    cd ../
    docker run -it --rm -v $(pwd):/builds whispertrack
    

After the build completes, you will find the built application in the build_stm/stm32 directory. You can then flash it to your STM32 device using your preferred method.

whisper-terminal

Development

To help with development, we provide a Dockerfile and a .devcontainer that set up a development environment with all the necessary dependencies. This allows you to work on the project without needing to install all dependencies on your local machine.

Prerequisites

Development Environment Setup

  1. Clone the repository:

    git clone https://github.com/Delresearch/WhisperTrack-Software.git
    cd WhisperTrack-Software
    git submodule update --init --recursive
    
  2. Open the project in VSCode.

  3. You will be prompted to reopen the project in a container. Click "Reopen in Container".
    • If you are not prompted, you can manually open the command palette (Ctrl+Shift+P on Windows or Command+Shift+P on MacOS) and select "Dev Containers: Rebuild and Reopen in Container".

whisper-devcontainer

Debugging

To debug the application, you need to run a gdb server using a Segger j-link device and software. Download the J-Link software and install it on your host machine. Then, run the following command to start the gdb server:

JLinkGDBServer -if swd -port 50000 -swoport 50001 -telnetport 50002 -device STM32L496VG
You should see at the end of the output:
Waiting for GDB connection...
Once the GDB server is started, you can use the VSCode debugger "Cortex Debug (Remote J-Link Dev Container)" to connect to the gdb server.
Note

If your device is not flashing, you may need to . You can do this using the JLinkSTM32 utility in the cli then selecting 18 from the list or use the JFlashLite gui application and select Erase Chip.

More information

For more information on how to use the WhisperTrack software, please refer to the WhisperTrack website.

License

This project is licensed under the MIT License - see the LICENSE file for details.