Skip to content

Releases: xiaokai-lyk/PCA9685-debugging-panel

v0.2.0

13 Jun 10:40

Choose a tag to compare

PCA9685 Debugging Panel v0.2.0 🎉

A significant update bringing internationalization, action recording & replay,
and improved developer experience to the remote servo debugging panel.


✨ New Features

🌐 Internationalization (i18n)

  • Added bilingual support: English and Simplified Chinese (zh-CN).
  • Language switch available in the settings modal; preference persisted across sessions.
  • All UI text — status bar, channel cards, actions, modals — updates instantly on language change.

🎬 Action Recording & Replay

  • Record a snapshot of all 16 channel positions (angle/pulse + calibration) as a named action.
  • Actions are persisted to config.json and survive across restarts.
  • One-click replay: restores all channels to their recorded positions using 3-tier smart
    calibration resolution (current → snapshot → raw duty fallback).
  • Rename and delete actions from the actions grid.
  • Default name "Action N" assigned automatically when recording.

🛠️ Debug Mode (--debug)

  • Enable with python main.py --debug or pca9685-panel --debug.
  • Per-request timing middleware shows request duration in the server logs.
  • Full Python tracebacks in HTTP 500 error responses instead of generic messages.

🗑️ Clear Cache

  • "Clear Cache" button in the settings modal allows users to delete all saved configs
    and actions with one click, resetting to factory defaults.

💅 Improvements

  • JS-fail overlay: A bilingual warning overlay is now shown if JavaScript fails to load
    or crashes, so users without JS know the app won't work.
  • Accessibility: aria-label attributes added to all form inputs.
  • Enhanced action buttons: Improved layout and styling in the actions grid for
    better visual clarity.

🐛 Fixes & Maintenance

  • Fixed duplicate object key in config.json causing potential config corruption.
  • Cleaned up unused code in the frontend.
  • Updated .gitignore for developer notes and local tooling files.

Full Changelog: v0.1.0...v0.2.0

v0.1.0

03 Jun 14:51

Choose a tag to compare

v0.1.0 — Initial Release 🎉

First public release of the PCA9685 Debugging Panel — a web-based servo control dashboard for robotics.

What's included

  • 16-channel servo grid with per-channel angle, duty cycle, and live pulse-width display
  • Per-channel calibration — map custom angle-to-pulse ranges for any servo
  • Real-time device status with heartbeat monitoring via SSE
  • Adjustable PWM frequency (40–400 Hz)
  • Workspace export/import — save full configuration as JSON, restore on any machine
  • Mock mode (--mock flag) for UI development without hardware
  • Dark theme responsive layout, works on desktop and mobile
  • Configuration persistence across restarts via config.json

Install

pip install pca9685-debugging-panel
pca9685-panel --host 0.0.0.0 --port 8080

Then open http://<robot-ip>:8080 in your browser.

Try without hardware

pca9685-panel --mock

Full Changelog: https://github.com/xiaokai-lyk/PCA9685-debugging-panel/commits/v0.1.0