Deluge Firmware
1.3.0
Build date: 2026.08.29
Toggle main menu visibility
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
22
class
MIDICable
;
23
#include "definitions_cxx.hpp"
24
25
namespace
Debug {
26
27
void
sysexReceived(MIDICable& cable, uint8_t* data, int32_t len);
28
void
sysexDebugPrint(MIDICable& cable,
const
char
* msg,
bool
nl);
29
#ifdef ENABLE_SYSEX_LOAD
30
void
loadPacketReceived(uint8_t* data, int32_t len);
31
void
loadCheckAndRun(uint8_t* data, int32_t len);
32
#endif
33
34
}
// namespace Debug
35
36
namespace
SysEx {
37
38
const
uint8_t SYSEX_START = 0xF0;
39
const
uint8_t DELUGE_SYSEX_ID_BYTE0 = 0x00;
40
const
uint8_t DELUGE_SYSEX_ID_BYTE1 = 0x21;
41
const
uint8_t DELUGE_SYSEX_ID_BYTE2 = 0x7B;
42
const
uint8_t DELUGE_SYSEX_ID_BYTE3 = 0x01;
43
44
const
uint8_t SYSEX_UNIVERSAL_NONRT = 0x7E;
45
const
uint8_t SYSEX_UNIVERSAL_RT = 0x7F;
46
const
uint8_t SYSEX_UNIVERSAL_IDENTITY = 0x06;
47
48
const
uint8_t SYSEX_END = 0xF7;
49
50
enum
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
MIDICable
A MIDI cable connection. Stores all state specific to a given cable and its contained ports and chann...
Definition
midi_device.h:96