Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
sysex.h
1/*
2 * Copyright © 2015-2023 Synthstrom Audible Limited
3 *
4 * This file is part of The Synthstrom Audible Deluge Firmware.
5 *
6 * The Synthstrom Audible Deluge Firmware is free software: you can redistribute it and/or modify it under the
7 * terms of the GNU General Public License as published by the Free Software Foundation,
8 * either version 3 of the License, or (at your option) any later version.
9 *
10 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
11 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12 * See the GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License along with this program.
15 * If not, see <https://www.gnu.org/licenses/>.
16 */
17
18#pragma once
19
20#include <cstdint>
21
22class MIDICable;
23#include "definitions_cxx.hpp"
24
25namespace Debug {
26
27void sysexReceived(MIDICable& cable, uint8_t* data, int32_t len);
28void sysexDebugPrint(MIDICable& cable, const char* msg, bool nl);
29#ifdef ENABLE_SYSEX_LOAD
30void loadPacketReceived(uint8_t* data, int32_t len);
31void loadCheckAndRun(uint8_t* data, int32_t len);
32#endif
33
34} // namespace Debug
35
36namespace SysEx {
37
38const uint8_t SYSEX_START = 0xF0;
39const uint8_t DELUGE_SYSEX_ID_BYTE0 = 0x00;
40const uint8_t DELUGE_SYSEX_ID_BYTE1 = 0x21;
41const uint8_t DELUGE_SYSEX_ID_BYTE2 = 0x7B;
42const uint8_t DELUGE_SYSEX_ID_BYTE3 = 0x01;
43
44const uint8_t SYSEX_UNIVERSAL_NONRT = 0x7E;
45const uint8_t SYSEX_UNIVERSAL_RT = 0x7F;
46const uint8_t SYSEX_UNIVERSAL_IDENTITY = 0x06;
47
48const uint8_t SYSEX_END = 0xF7;
49
50enum SysexCommands : uint8_t {
51 Ping, // reply with pong
52 Popup, // display info in popup
53 HID, // HID access
54 Debug, // Debugging
55 Json, // Json Request
56 JsonReply, // Json Response
57 Pong = 0x7F // Pong reply
58};
59
60} // namespace SysEx
A MIDI cable connection. Stores all state specific to a given cable and its contained ports and chann...
Definition midi_device.h:94