Skip to content

luckydizzier/DDS-Controller

Repository files navigation

DDS Web + Local Controller – Arduino Due

DDS-Controller is a modular system for driving an AD9850 Direct Digital Synthesizer. It runs on an Arduino Due with an LCD Keypad Shield for local control and communicates with an ESP8266-01 module for Wi-Fi access.

The project is fully documented in docs/ and follows the architecture described in architecture_overview.md.

Features

  • Local menu navigation on the LCD shield
  • Remote commands over Wi-Fi (ASCII or REST)
  • Configuration stored in 24LC256 EEPROM
  • Cross-platform CLI and experimental GUI tools

Pin assignments and OTA usage are documented in docs/configuration/pins.md and docs/configuration/ota.md. All peripherals, except the LCD shield, must use Arduino pins 20 and above.

Directory Overview

  • firmware/ – Arduino Due and ESP8266 source code
  • pc/ – CLI (ddsctl.py) and Go GUI
  • protocol/ – ASCII, REST and JSON formats
  • dev_tools/ – small helper programs
  • tests/ – unit tests for firmware, CLI and GUI
  • logs/ – audit logs created by agents
  • docs/ – design documents and user guides

Quick Start

Firmware

  1. Open firmware/due/main.ino in the Arduino IDE and flash it to the Due.
  2. Build and flash firmware/esp/main.ino to the ESP8266.

CLI example

$ python pc/cli/ddsctl.py setfreq 1000000
OK

GUI example

$ cd pc/gui
$ go run .

Diagram

A system diagram will be added here.

License

This project is licensed under the MIT license.

About

y olyan Arduino Due-alapú, skálázható rendszer felépítése, amely az AD9850 DDS modul frekvenciáját lokálisan (gombokkal + LCD-n), valamint távolról (ESP8266 WiFi interfészen keresztül) is vezérelhetővé teszi. A rendszer objektumorientált, menüalapú, EEPROM-ba menti a beállításokat, és USB-n keresztül is elérhető.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors