This project contains the firmware for a tally system based on an Arduino esp8266 and the vMix TCP API. Pictures of the tally can be found in the Pictures folder.
For this project two pieces of hardware are needed.
The first is a WeMos® D1 Mini V2 and the second is a Wemos® Matrix LED Shield V1.0.0.
Additionally a 3D printed case can be used to protect the hardware. A design for this can be found in the Case folder of this repository.
- Make sure you use the connector that comes with the WEMOS.
- Solder the short site on the WEMOS.
- Position the LED Display on the connector you just soldered on the WEMOS with just over 1 – 1,5-millimeter space between the boards.
- Depending on the USB cable you use you may need to widen up the hole for the connector in the case with a file.
- Click the assembly in the case.
Download the Arduino IDE from the Arduino website and install it.
After the installation is complete go to File > Preferences and add http://arduino.esp8266.com/stable/package_esp8266com_index.json to the additional Board Manager URL. Go to Tools > Board > Board Manager, search for esp8266 and install the latest version. After the installation go to Tools > Board and select Wemos D1 R2 as your default board.
All libraries included in the Libaries folder are required for this project. Please copy them to your own Arduino libraries folder (default path: user/documents/Arduino/libraries).
Connect the Arduino to the computer with a USB cable.
The static files in the Arduino-vMix-Tally/data folder must be uploaded using the Tools > ESP8266 Sketch Data Upload in the Arduino IDE.
Upload the Arduino-vMix-Tally/Arduino-vMix-Tally.ino from this repository to the Arduino by pressing the Upload button. After the upload the tally will restart in Connecting mode (see the Muliple states section).
There are three states in which a tally can find itself.
Symbol | Meaning | Led intensity | Example |
---|---|---|---|
C | Connecting | 100% |
In this state the tally is trying to connect to WiFi and vMix based on the settings.
Symbol | Meaning | Led intensity | Example |
---|---|---|---|
S | Settings | 100% |
In this state the tally was unable to connect to WiFi and it turned itself to access point mode. It can be accessed by connecting to the WiFi network with the SSID vMix_Tally_# (# is the tally number) and password vMix_Tally_#_access (# is the tally number). Once connected the settings can be changed by going to the webpage on IP address 192.168.4.1.
Symbol | Meaning | Led intensity | Example |
---|---|---|---|
P | Preview | 28.5% | |
L | Live/program | 100% | |
. | Off | 28.5% |
In this state the tally is connected to WiFi and vMix. It detects new tally states and shows them using the led matrix.
Network and tally settings can be edited on the built-in webpage. To access the webpage connect to the same WiFi network and navigate to the IP address or the devicename(vmix_tally_#.home, # is the tally number) in a browser.
On this webpage the WiFi SSID, WiFi password, vMix hostname and tally number can be changed. It also shows some basic information of the device.
- Make sure to use a power cable that does not support data when using a USB port on a camera. This can cause connecting issues in the camera.
- The Arduino is completely dependent on a good WiFi signal.
- The tally must be connected to the same network as the vMix instance.
- The LED matrix can only display in red. The difference in color in the pictures above is due to a difference in LED intensity.
Please note all images are for illustration purpose. Actual results may vary.
Feel free open issues on this repository for bugs or feature requests.
If you want to create your own version of this repository then a reference is appreciated.
Special thanks to André for the 3D casing and the solder instructions.