Skip to content

Repository files navigation

goDing - Using Windows as a HomeDing device

HomeDing is a lightweight network‑communication protocol definition for devices that expose a small, self‑contained web server.

Instead of relying on cloud platforms or heavy protocols, HomeDing uses REST+JSON APIs and a simple action‑based messaging model to let devices communicate with each other over your local WiFi network.

This enables building an eco system of multiple devices that can run independently without the need on any central server.

There are multiple implementations available supporting the communication:

Status and Plan

GoDing is still an experimental HomeDing device implementation.

Current focus is on building the project structure by implementing

  • a web server for static files and REST services
  • a midi receiver (sensor)
  • a volume controller (actor)
  • the action queuing and dispatching implementation.

One application for multiple types services

  • A Web Server to have access to settings and current values and control the through a web interface
  • Midi Receiver to get any midi messages like fader changes, button pushes or playing notes via a midi device.
  • A Serial Receiver for Arduino based devices sending fader changes, button pushes via a serial interface
  • maybe some other too ?

These servers can run in parallel and handle / trigger actions like :

  • Keyboard events
  • Other Midi Events
  • Change and Control System parameters like the output volume

Why a Go based application ?

Go's concurrency model aka Goroutines is one of the language's most compelling features hardly to find in other programming languages and by far less complex than using Threads from the Operation system. Therefore Go was chosen to implement the HomeDing compatible server for Windows PCs.

About

experimental HomeDing device implementation using the GO language

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages