mixuino

Public

@thepangel

Download board files

Files for version 1. Pick what you came for.

Share mixuino

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

Mixuino

An Arduino Mixer for windows built with Python


  • Table of contents
    • Description
    • Built with
    • Usage
      • UI
      • Config file
    • Getting started
      • Software
        • Required libraries
        • Python
      • Hardware
        • Required hardware
        • Circuit diagram
    • Roadmap!
    • Contributing?
    • Contact
    • Acknowledgement/Credit

Mixuino is a windows audio mixer build with on a Arduino nano and controlled by a python program. It uses 4 slide potentiometers feeding analog input into an Arduino nano that sends the values through serial to a python scripts that handles volume management in the windows machine. You can also add an optional push button to mute/un-mute the speakers.

I also have made a PCB for ease of instalation + a 3D printable enclosure for the latter so you can build your own Mixer.

This is my first Arduino projects and first "big" program so please bear with me :)


Built with:


Usage

UI

Each checkbox corresponds to a running process and/or a process stored in the config file, ones stored (therefore selected) are checked, moving that slider will change the volume of selected processes (1st slider is for master volume)

Hide to systray hides the window, the window can be revealed again from the systray icon option Show

There is also a checkbox than when checked changes the hideDefault value if you want the window to be hidden at startup

The options available refreshes and changes (if new programs are opened or others closed) when the mouse hovers any of the scrollable frames

To close the application you can just close this window or close it with the Exit option in the systray icon

Config file

To run the program you require processes.yaml file with the structure :

hideDefault: false
slider1: []	
slider2: []
slider3: []

The values are the processes each slide changes and can be changed manually or through the UI


Getting started

Software

Required libraries:

Python
  • Using pip
comtypes==1.2.0 # To communicate with the ports

Pillow==10.1.0 # For opening the image for the systray icon

pycaw==20230407 # For audio handling

pyserial==3.5 # To read the serial data sent from the arduino

pystray==0.19.5 # To create and manage the systray icon

PyYAML==6.0.1 # To edit the Yaml config file

customtkinter==5.2.1 # To build the UI
pip install comtypes

pip install Pillow

pip install pycaw

pip install pyserial

pip install pystray

pip install PyYAML

pip install customtkinter
Nothing needed for the Arduino

Hardware

Required hardware

  • Arduino nano (you could use any Arduino tho)
  • 4 (or more if you want to expand) slide potentiometers
  • Optional push button for muting
Circuit diagram


Roadmap!

  • Slider 3D Models for 3D printing! (7/7/2024)
  • GUI to select which slides control which process (30/12/2023)
  • Mixuino PCB (7/7/2024)

Contributing?

  • Feel free to open up any issues or ask for features in the issues tab!
  • If you want to contribute directly make sure to fork the repo and submit a pull request for me to review.

Contact

Feel free to contact me @ThePangel_ on Twitter/X or DM me on discord @thepangel


Acknowledgement/Credit

  • Logo: Inés D'Olha

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.