lathoub
d6ac0f6b82
+ receiver ActiveSensing, + error Callback
...
1) Active Sensing:
Once an ActiveSensing message is received, the system checks for timeouts: if no message is received within the specified 300ms (see in _Defs), an error is set and the checks for timeout stop.
2) added a callback for errors. 2 errors are defined: parse error and ActiveSensing timeout
2020-03-22 15:33:42 +01:00
lathoub
e4ad19d40e
cleanup setHandleMessage
...
unfortunately, not using aliases yet (too complex)
2020-03-18 07:06:02 +01:00
lathoub
c09c8e8148
aliasing for callbacks (and default initializers
2020-03-18 06:55:45 +01:00
lathoub
bc4e940701
strong typing Channel in the callbacks
2020-03-17 23:44:24 +01:00
lathoub
2734894485
mPendingMessageExpectedLength as before
...
mMessage.length is reset to 0 before the callback, so bring back mPendingMessageExpectedLength as before, and set mMessage.length (and not reset it)
2020-03-15 16:57:01 +01:00
lathoub
e7588b906d
return a *pointer* (not a ref) to the transport layer
2020-03-15 01:59:12 +01:00
lathoub
4da4538cd3
return reference to Transport layer
2020-03-15 01:46:13 +01:00
lathoub
ee4e7b3942
changed based on Franky47's feedback
...
- send: pass the message as a const ref, to avoid copies
- add mSerial.begin (with Baudrate - added Settings)
- ThruActivated defaults to true
- class name serialMIDI => SerialMIDI
2020-03-11 22:46:06 +01:00
lathoub
8893642b27
added send(MidiMessage), added (untested) bridge example
...
added send(MidiMessage) for Bridge application (that convert MIDI transport x into MIDI transport y), avoiding parsing entry a stream, setting up all callback - whilst this allows for passing the content, without to much processing/parsing.
Had to move mPendingMessageExpectedLenght into MidiMessage to avoid parsing the data again, just to know the size
Added Bridge example (untested)
2020-03-09 23:05:44 +01:00
lathoub
8905d36c0e
added callback for Message
...
before the specific callback are called, a generic mMessage callback can be fired to inform the user that 'a' message has been received.
2020-03-09 09:40:44 +01:00
lathoub
7bb64074e1
renamed Encoder -> Transport, added MidiType to beginTransmission in serialMIDI
2020-03-09 09:00:17 +01:00
lathoub
35d1d6216a
set ActiveSensing Periodicity in ms
...
Gives more control over the bool value. Typical value is 300 (ms) - an Active Sensing command is send every 300ms; or 0 (zero) to disable sending ActiveSensing
2020-03-07 10:15:59 +01:00
lathoub
1325c23329
added Platform class to abstract millis()
2020-03-05 19:58:49 +01:00
lathoub
fc752bc834
lift and shift of the Serial code into a seperate class, allowing for other serializers
...
lift and shift of the Serial code into a seperate class, allowing for other serializers as AppleMIDI, USBMIDI, ipMIDI, BLE-MIDI
2020-03-04 19:49:27 +01:00
lathoub
5fab6b3fc3
replaced ActiveSensing with Sender Active Sensing
...
Receiver active Sensing is not implemented (yet)
2020-02-04 10:46:14 +01:00
lathoub
7f9934b1aa
added support for ActiveSensing
...
From: https://www.midi.org/specifications/item/table-1-summary-of-midi-message
Active Sensing. This message is intended to be sent repeatedly to tell the receiver that a connection is alive. Use of this message is optional. When initially received, the receiver will expect to receive another Active Sensing message each 300ms (max), and if it does not then it will assume that the connection has been terminated. At termination, the receiver will turn off all voices and return to normal (non- active sensing) operation.
2020-01-26 11:05:10 +01:00
Francois Best
1c01effbd9
feat: Handle Korg-style of flipping SysEx data header bits
...
Closes #92
2018-03-10 16:58:17 +01:00
Francois Best
82f5dca265
Bumped version to 4.3.1, fixing Arduino lib file.
...
Removed redundant version mentions in sources.
2016-11-04 10:53:18 +01:00
Francois Best
437d5ebce0
Bump version in sources.
2016-10-30 09:50:01 +01:00
Francois Best
5d3cbd1f9f
#54 : added overload of sendAfterTouch for poly. Deprecates sendPolyPressure.
2016-10-28 09:13:06 +02:00
Francois Best
f1f0ef41ce
Using new definitions for Thru.
2016-10-27 08:11:29 +02:00
Francois Best
8ebd4f9161
Cleanup & init'd thru.
2016-10-20 10:08:00 +02:00
Francois Best
e4bd7f1c18
Fix initialization order warnings.
2016-10-13 19:01:59 +02:00
Francois Best
606e732490
Moved examples & keywords.txt to follow 1.5 lib spec.
2016-10-10 15:38:08 +02:00
Francois Best
96374a1fa1
Added RPN/NRPN sending facilities.
...
Needs doc, closes #37 .
2016-10-07 00:38:27 +02:00
Francois Best
993f12ce30
Added accessor to settings template arg.
2016-10-04 18:55:27 -07:00
Francois Best
fb693e7245
Changed license to MIT.
2015-08-13 09:03:17 +02:00
Francois Best
e31d0a1910
Doc.
2014-06-11 09:33:32 +02:00
Francois Best
b1b978d63c
4.2
2014-06-11 09:13:34 +02:00
Francois Best
219340ea96
Fix SysEx size callback bug, using template settings instead of preprocessor macros.
2014-06-11 09:09:08 +02:00
Francois Best
f88012b38f
Removed auto-instanciation
2014-04-20 17:24:35 +02:00
Francois Best
410e51c91a
Template settings.
2014-04-20 17:23:10 +02:00
Francois Best
b041abaca3
Helper method.
2014-04-01 09:04:31 +02:00
Francois Best
240cd22021
Added explicit license header and starting 4.1 branch.
2014-04-01 09:03:44 +02:00
Francois Best
3f1e5c474a
Handling null-velocity NoteOn as NoteOff (with setting), inlined some methods.
2014-03-12 21:34:46 +01:00
Francois Best
b2800e5fdd
Doc & formatting.
2014-02-13 21:58:37 +01:00
Francois Best
c4d5d76f4a
unsigned int -> unsigned and trimmed whitespace.
2013-07-07 15:11:58 +02:00
Francois Best
601ddb3773
Reverted Thru changes on branch release/4.0 (breaking thread/merge-safety).
2013-07-07 15:10:13 +02:00
Francois Best
cc9927fd50
Fixed build.
2013-07-07 14:53:56 +02:00
Francois Best
d78cace1b2
Working on thru.
2013-07-07 14:13:32 +02:00
Francois Best
8c9d289216
Working on thru.
2013-07-07 12:52:27 +02:00
Francois Best
d8e0631399
Include ak47 for trace and debug info.
2013-07-06 16:00:24 +02:00
Francois Best
1d10ce0a46
No need for channel info when parsing.
2013-07-06 15:53:40 +02:00
Francois Best
6fbc9bd5a7
Reworked encoding/decoding methods to support larger arrays.
2013-07-05 11:21:13 +02:00
Francois Best
287b3625db
Renamed file for ST's counterpart detection.
2013-06-28 09:09:47 +02:00
Francois Best
6f0535be90
Added detection of channel messages to fix running status.
2012-10-09 08:28:24 +02:00
Francois Best
691b172187
Target detection and simplified auto-instanciation.
2012-10-02 21:51:18 +02:00
Francois Best
d8b0d6f838
Moved encode/decode sysex out of MidiInterface.
2012-09-27 21:23:15 +02:00
Francois Best
a63afb0868
Added multiple instanciation.
2012-09-27 21:13:57 +02:00
Franky47
2ce571d937
Added SysEx conversion static methods. Note: could be integrated in SysEx send/receive methods..
2012-09-26 08:33:29 +02:00