The Proto-8 hardware, shown in a test fixture
The Proto-8 system has two aspects: hardware that is compatible with the Teensy Audio Board and associated Teensyduino libraries, and a software add-on package for the TeensyDuino libraries that adds specific functions.
Hardware:
- 2x SGTL5000 audio codecs for 4 in, 4 out.
- 8 unassigned 1/2 inch TRS connectors
- 64 knob inputs (analog multiplexed)
- 64 switch inputs (4x16 diode multiplexed)
- 64 LED outputs (shift registers to remove flicker)
A KiCad render of the circuit board
Software:
- Hardware abstraction layer for running the knobs, switches, and leds
- New Teensy Audio blocks:
- Oscillators with bit-per-octave (BPO) style control signals, mono and multi-voice
- DC blocks with glide, suitable for BPO output
- Bendvelope, a non-linear envelope
- Arbitrary wave generator of mixed sine, square, and pulse shapes
- AudioGUI modifications:
- Blocks added in new shade
- Requirement for output object removed
- Core audio files modified to allow live re- connection of patch cords.
New audio system blocks
- Obtain Arduino from arduino.cc and install. I recommend the zip file extracted to a non-system-integrated install.
- Install Teensyduino and all libraries to the Arduino installation.
- Download the Audio GUI and place in a directory of your computer. Test that you can view "index.html" in a browser and that the system functions like the online version.
- Replace the modified files from this repo into the local audio gui's folder (described in Proto-8/Platform/GUI_mods/readme.md). Refresh the index.html file in your browser and the new modules should appear in a pinker color.
- Replace AudioStream.cpp and AudioStream.h in Arduino\hardware\teensy\avr\cores\teensy3 with those from Proto-8/Platform/core_mods/, where Arduino is the path of the specific arduino installation.
- Install the following libraries to your arduino libraries directory:
- pre-uCModules 2.0 beta, requires Arduino 1.6.12 and Teensyduino 1.31
- post uCModules 2.0 beta, requires Arduino 1.8.1 and Teensyduino 1.35