Releases: shanteacontrols/OpenDeck
Releases · shanteacontrols/OpenDeck
v3.1.1
Improvements
- Restored compatibility with OpenDeck boards loaded with mass storage bootloader
- HID bootloader updating script is now compatible with all supported boards (Linux and macOS only for now)
- Arduino/Teensy flashing script now flashes merged firmware/bootloader
Fixes
- Fixed potentially undefined behavior when checking encoder message type
- Fixed CRC checking in bootloader for MCUs with large flash size
- Fixed incorrect ADC channel addressing on Arduino Mega
WebUI
- Offline version attached
Other
- Added binaries with merged firmware/bootloader for Arduino/Teensy boards
v3.1.0
DISCLAIMER: This relase is not compatible with official OpenDeck boards (non-Arduino/Teensy ones) which use LUFA Mass Storage bootloader unless they're flashed with HID bootloader or if bootloader isn't used.*
WARNING: This update will overwrite any existing configuration stored on OpenDeck board.
New features
- Presets are now supported on all Arduino and Teensy boards. OpenDeck board is not supported due to low memory.
Improvements
- Improved debouncing of encoders
Fixes
- Fixed database indexing in certain scenarios
WebUI
- Offline version attached
v3.0.0
New features
- Arduino Mega now supports DIN MIDI
- Arduino Mega and Uno now support HID bootloader
- Arduino Mega, Pro Micro, Leonardo and Teensy++ 2.0 now support daisy-chain configuration
- Added continuous CC mode for encoders
Fixes
- Fixed broken processing of analog inputs configured as buttons
WebUI
- Offline version attached
Other
- Binaries for Arduino and Teensy boards are now part of release
- Fixed flashing scripts on macOS
- Major code refactoring - cleanups, reorganization, misc improvements
v2.1.1
New features
- LED control additions:
- Implemented individual LED blinking control
- Implemented LED blinking via MIDI clock
- Added several new LED control types:
- MIDI in - Note (State+Blinking)
- MIDI in - CC (State+Blinking)
- Local - Note (State+Blinking)
- Local - CC (State+Blinking)
See LED control wiki page for more details.
- Added support for two additional digital inputs on Arduino Leonardo board
Fixes
- Fixed broken analog readout on Arduino boards
- Fixed incorrect handling of RGB LEDs
- Fixed incorrect blinking in certain scenarios
WebUI
- Offline version attached
Other
- Added schematic for Bergamot MIDI controller
- Initial work on supporting touchscreen displays
v2.1.0
WARNING: This update will overwrite any existing configuration stored on OpenDeck board.
New features
- Added "None" as button message type - used to block MIDI message sending from specified button
- LEDs can now be controlled via several different ways: MIDI In - Note+CC, MIDI In - CC+Note, MIDI In - Program change, Local - Note, Local - CC, Local - Program change. See LED control Wiki for details.
Improvements
- Encoder readout improvements
- Misc minor optimizations
Fixes
- Fixed incorrect encoder addressing on Arduino boards
- Fixed incorrect handling of RGB LEDs via MIDI In
WebUI
- Offline version attached
Other
- Added schematic for Tannin MIDI controller
v2.0.3
New features
- New SysEx command: Silent mode. Can be used instead of handshake command. When enabled, protocol only sends response to
GET
andBACKUP
commands (errors aren't reported,ACK
response isn't returned and custom requests are processed but no response is returned). Useful for creating backup scripts so thatACK
messages don't need to be cut from output.
Improvements
- Major performance improvements on Arduino Uno and Mega boards.
- Database read/write performance improvements - caching is used in certain scenarios to avoid constant EEPROM access.
- Improved button/encoder readout - all inputs are read every 500us instead of 1ms on every board, data is constantly written in circular buffer so that data isn't lost while processing.
- Auto-configuration and major performance improvements on daisy-chained OpenDeck boards: It's now possible to link official OpenDeck boards using MIDI cable where only one ("master") board sends and receives data via USB. No configuration necessary (boards are configured automatically at startup). IMPORTANT: all linked boards must be powered on at the same time.
- Web UI now throws
ERROR_NOT_SUPPORTED
error for certain settings on Arduino boards instead of being silent about it. - Added script used to flash OpenDeck firmware to Arduino boards as an alternative to flashing using Makefile
WebUI
- Offline version attached
Other
- Added firmware support for Tannin MIDI controller (gerbers and schematic coming in next release)
- Code cleanups, refactoring of various parts
- Removed dependency on patched avrdude from Arduino IDE - uploading now works with upstream avrdude
- Source code documentation updates (work in progress)
- Removed "Double DIN MIDI speed" setting
v2.0.2
New features
- Ability to assign Pitch Bend message type to analog components
- Ability to assign incrementing or decrementing Program change message for buttons (every successive button press will increase or decrease program value for specified channel)
- Ability to change programs using encoders (incrementing and decrementing values depending on encoder direction)
Improvements
- ERROR_READ is now returned during SysEx configuration to inform the user of incorrect reading if it happens instead of returning invalid value
Fixes
- Fixed retrieval of RGB LED IDs on Arduino boards
WebUI
- Offline version attached
v2.0.1
WARNING: This update will overwrite any existing configuration stored on OpenDeck board.
New features
- Ability to assign any MIDI channel to any component individually
- Ability to link multiple OpenDeck boards via DIN MIDI connectors and merge all MIDI traffic on single board
- Ability to define pulses per step for encoders
Improvements
- 4x faster analog readout
- 5x faster button readout
- Added backup script in doc directory for backing up entire OpenDeck configuration
- Improved handling of RGB LEDs
- Overall memory footprint reduction, misc performance optimizations, internal code refactoring, file number reduction
Fixes
- Fixes in underlying database system for NRPN values
- Fixed potential reboot loop after firmware update
- Fixed incorrect encoder configuration (setting of new values)
WebUI
- Offline version attached
Other
- Removed checking of hardware revision number in hardware version (only MAJOR.MINOR used now) - WebUI will report .x as last value, SysEx command will return 0 as last number
- Added scripts for simpler firmware update on Linux, Mac OS X and Windows
- Entire web configuration tool source code has been added to OpenDeck repository
v1.6.0
WARNING: This update will overwrite any existing configuration stored on OpenDeck board.
New features
- I2C OLED/LCD displays are now officially supported on Arduino Mega and Teensy++ 2.0 boards (SSD1306 controller for now only, more in next release)
- Added support for Teensy++ 2.0 board
- Added Arduino Uno support
- Added support for older Arduino Mega/Uno variants which use ATmega8u2 instead of ATmega16u2
Improvements
- On velocity for buttons can't be assigned to 0 anymore
- Misc under-the-hood improvements
- Better support for Arduino Pro Micro
Fixes
- Fixed incorrect button and encoder mappings on official OpenDeck board (regression from v1.3.0)
v1.5.0
WARNING: This update will overwrite any existing configuration stored on OpenDeck board.
New features
- Added support for 7-bit and 14-bit NRPN messages
- Added switch to enable or disable DIN MIDI
- Added new SysEx command to retrieve firmware and hardware info in single command
Improvements
- HID bootloader now checks app CRC
- Improvements of analog readings