Skip to content

Latest commit

 

History

History
62 lines (49 loc) · 2.83 KB

README.md

File metadata and controls

62 lines (49 loc) · 2.83 KB

Introduction

LaserProjector V2 is a battery-powered, ESP32-based laser XY scanner using stepper motors to deflect the beam. It has auto-homing functionality, and can be controlled wirelessly (Wi-Fi & Bluetooth).

Features

  • Hybrid Wi-Fi operation mode (STA & AP)
  • Webserver GUI with custom WebSocket protocol
  • Concurrent multi-user control
  • Automatic/Manual/External scanning mode
  • Parallel auto-homing
  • Battery-powered

Links

Design

How to build your own release

Prerequisites

  • Visual Studio Code with PlatformIO extension
  • 3.3V USB to Serial (e.g. FT232RL)

Building

  1. Open firmware/src folder in VSCode
  2. In firmware/src/src/main.cpp you can sustomize SSID and PASSWORD for Wi-Fi STA mode:
const char* ssid = "<your_ssid>";
const char* password = "<your_pass>";
  1. In firmware/src/platformio.ini set the correct upload_port, or remove to auto-detect.

  2. Build and upload the filesystem

    • PlatformIO > esp32serial > Platform > Build Filesystem Image
    • PlatformIO > esp32serial > Platform > Upload Filesystem Image
  3. Build and upload the firmware

    • PlatformIO > esp32serial > General > Upload

Pre-built binaries

The binary is fully contained (bootloader, firmware, and filesystem), so it can be flashed to address 0x0.

The easiest way is to use this web tool: https://stanleyprojects.com/projects/laserprojector_v2/install

After the firmware is loaded, any subsequent updates can be done OTA in browser by visiting http://<esp32-ip-address>/update

Version Firmware
0.1 LaserProjectorV2_firmware_v0.1.bin

Credits