regolo

Public

@ndr-lmnc

Download board files

Files for version 1. Pick what you came for.

Share regolo

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading 3D model… large boards can take a moment.

README

REGOLO

REGOLO is a 10-channel USB control surface designed for software-based audio volume control.

Its purpose is to provide direct physical control over system and application audio, such as:

  • master system output
  • main microphone
  • secondary microphone
  • browser audio
  • music playback
  • voice chat
  • DAW / creative software
  • virtual buses or per-application outputs

REGOLO is not intended to be an analog audio mixer. It is a hardware controller for software-side audio mixing.


Project goal

REGOLO is designed to make everyday audio routing faster and more intuitive by providing dedicated physical controls for tasks like:

  • raising or lowering an application's volume without switching windows
  • muting a specific channel instantly
  • getting clear visual feedback about channel state
  • assigning each channel to a different audio source or destination

A typical use case is a desktop, streaming, or studio setup where multiple audio sources coexist: system output, microphones, browser audio, media players, communication apps, and creative tools.


How it works

The intended architecture is simple:

  1. The hardware exposes 10 independent physical channels.
  2. Each channel provides the microcontroller with:
    • an analog potentiometer position
    • a digital mute switch state
    • a status LED control line
  3. The firmware reads the inputs and sends events to the computer over USB.
  4. Host software maps those events to system or per-application volume and mute controls.

This means the actual audio logic lives on the host computer, while REGOLO acts as a dedicated physical interface.


Main features

  • 10 independent channels
  • Continuous physical control for each channel via potentiometer
  • Dedicated mute per channel
  • Status LED for visual feedback
  • USB-C connectivity
  • CH32V203 microcontroller with integrated full-speed USB
  • Hardware designed in KiCad
  • Planned firmware development with WCH Fun

Current hardware architecture

Based on the current repository state, the hardware is organized as follows.

Channels

Each channel is replicated as the same building block and exposes:

  • A_OUT: analog output from the volume control
  • mute: mute switch state
  • status: LED control line

In the PCB project, each channel includes:

  • one potentiometer (RS301111A01G local footprint)
  • one DPDT switch (XKB5858-Z-TP)
  • one status LED with supporting passive components

MCU

The device is built around a WCH CH32V203, used to:

  • sample the 10 analog signals (ADC_[1..10])
  • read the 10 switches (SW_[1..10])
  • drive the 10 LEDs (LED_[1..10])
  • communicate with the host over USB

The schematic also includes programming and debug-related signals such as:

  • SWDIO
  • SWCLK
  • RST
  • BOOT0
  • BOOT1

USB and power

The current USB section includes:

  • USB-C USB 2.0 connector
  • USBLC6-2P6 ESD protection on the data lines
  • polyfuse on USB power input
  • AZ1117CH2-3.3 regulator for the 3.3V rail

Current status

The repository currently focuses on the hardware design of the device.

Present

  • PCB project in pcb/mobo/
  • modular schematics for:
    • channel
    • MCU
    • USB
  • local KiCad symbols and footprints in pcb/components/

Not yet included

  • device firmware (firmware/ is currently empty)
  • host-side software to map hardware controls to actual system/application volumes

Project structure

regolo/
├── firmware/          # Device firmware (to be developed)
├── pcb/
│   ├── components/    # Local KiCad symbols and footprints
│   └── mobo/          # Main board project
│       ├── mobo.kicad_pro
│       ├── mobo.kicad_sch
│       ├── mobo.kicad_pcb
│       ├── channel.kicad_sch
│       ├── mcu.kicad_sch
│       └── usb.kicad_sch
├── LICENSE
└── README.md

Opening the hardware project

To inspect or modify the PCB design:

  1. install KiCad 10 or a compatible version
  2. open:
pcb/mobo/mobo.kicad_pro

The project uses local libraries stored in:

pcb/components/

Firmware

The firmware is planned around WCH Fun.

WCH Fun is a lightweight framework well suited for WCH microcontrollers and fits the goals of the project:

  • direct low-level control
  • small and simple firmware architecture
  • straightforward USB and peripheral handling
  • good fit for a dedicated embedded control device

The firmware side is expected to handle:

  • sampling the 10 potentiometers
  • reading the 10 mute switches
  • updating the LEDs
  • exposing the controller state to the host over USB

Expected use cases

Example 10-channel assignments:

  1. system master output
  2. main microphone
  3. secondary microphone
  4. browser
  5. music
  6. Discord / voice chat
  7. game audio
  8. DAW
  9. monitoring / recording bus
  10. virtual output / streaming bus

The channel mapping is expected to be software-configurable.


Important note

As the current design suggests, REGOLO is a control surface, not a board that directly processes analog audio signals. Volume control is performed in software, with the operating system or a host application responsible for managing the actual audio levels.


License

REGOLO uses a split licensing model that matches the different nature of its hardware and software sources.

Hardware design

The hardware design files are licensed under the CERN Open Hardware Licence Version 2 - Strongly Reciprocal (CERN-OHL-S-2.0).

This applies to the open hardware sources in the repository, including for example:

  • schematics
  • PCB layout files
  • KiCad symbols
  • KiCad footprints

The full hardware license text is available in LICENSE.

Firmware

The firmware in firmware/ is licensed under the MIT License.

The firmware license text is available in firmware/LICENSE.

This gives the embedded software side a simple and widely used open source license, while keeping the hardware design under a proper open hardware license.

Unless otherwise noted:

  • hardware design files are provided under CERN-OHL-S-2.0
  • firmware source code is provided under MIT

If host-side software is added to the repository in the future, it may follow the same MIT license or be licensed separately where appropriate.

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.