Re: Digitech JamSync - How does it work?
Posted: 10 Sep 2016, 01:00
Hi guys, I'm working on jamsync. First of all: "pz", thank you for your work.
English is not my primary language, I beg your pardon in advance for mistakes or incomprehensible sentences that I can write;-)
I have a JamMan Express Xt, it has only one big button to push. The guy at fuzzysynth has done a big work, but he owns a "JamMan Solo Xt" that allows to set BPM and others functions. With ExpressXt the BPM lacks of meaning, The only property of the loop is its lenght (ms, samples).
However, I want to share my experiences.
I've attached the minjack-to-din adapter cable from the OUT of Digitech to the MIDI IN of my Novation Impulse. It does not recognise any data (because 3.3v ?). Instead my Behringer BCR2000 can receive data, I think it is more tolerant with the voltage.
I've set a metronome to 90bpm and I've recorded some loop of differents lenght.
I've found changing and fixed values:
F0 00 00 10 7F 62 01 v1 01 v2 v3 v4 v5 02 04 v6 03 v7 v8 v9 w1 w2 w3 F7
values v(x) and w(x) change
v1 ( byte 8 ) : 42, 4A but I've found also 5A,62
w2 is the "command"
02, restart loop after a stop
04, stop
05, loop running
06, initial play
w1 is the most significant byte of the lenght ( I think)
3F, half measure (2/4)
40, 1 or 2 measures (4/4 or 8/4)
41, 4 measure (16/4)
42, about a minute
with Sekaiju (a midi sequencer) I am able to send back the data to ExpressXt.
I've put on track 1 the sync stream made of 11 bytes. It keeps active the "link". If this signal feeds too slow, every one of them restart the link and the ExpressXt flashes its leds again and again.
On track 2 I've put some midi note on for trigger drum sound, useful to play over.
On track 3 I've put "arbitrary sysex" message, with the 24 bytes chunk. With random values v(x),w(x) but command w2 properly set are not recognized, ExpressXt does not react.
Instead the 24 bytes chunk created by ExpressXt, previously read, works. Using a chunk of an audio loop longer than the "midi" loop almost works:
ex.
F0 00 00 10 7F 62 01 5A 01 1D 44 33 42 02 04 78 03 05 63 2A 40 05 07 F7
You have to record the full lenght, but then it restart in sync every time that the command is issued.
If you force stop manually the recording of the loop, then it is not linked and it is out of sync.
I hope that my experiences can help someone else and we all can improve the knowledge of the protocol and figure out something else.
Rgds,
Calde
English is not my primary language, I beg your pardon in advance for mistakes or incomprehensible sentences that I can write;-)
I have a JamMan Express Xt, it has only one big button to push. The guy at fuzzysynth has done a big work, but he owns a "JamMan Solo Xt" that allows to set BPM and others functions. With ExpressXt the BPM lacks of meaning, The only property of the loop is its lenght (ms, samples).
However, I want to share my experiences.
I've attached the minjack-to-din adapter cable from the OUT of Digitech to the MIDI IN of my Novation Impulse. It does not recognise any data (because 3.3v ?). Instead my Behringer BCR2000 can receive data, I think it is more tolerant with the voltage.
I've set a metronome to 90bpm and I've recorded some loop of differents lenght.
I've found changing and fixed values:
F0 00 00 10 7F 62 01 v1 01 v2 v3 v4 v5 02 04 v6 03 v7 v8 v9 w1 w2 w3 F7
values v(x) and w(x) change
v1 ( byte 8 ) : 42, 4A but I've found also 5A,62
w2 is the "command"
02, restart loop after a stop
04, stop
05, loop running
06, initial play
w1 is the most significant byte of the lenght ( I think)
3F, half measure (2/4)
40, 1 or 2 measures (4/4 or 8/4)
41, 4 measure (16/4)
42, about a minute
with Sekaiju (a midi sequencer) I am able to send back the data to ExpressXt.
I've put on track 1 the sync stream made of 11 bytes. It keeps active the "link". If this signal feeds too slow, every one of them restart the link and the ExpressXt flashes its leds again and again.
On track 2 I've put some midi note on for trigger drum sound, useful to play over.
On track 3 I've put "arbitrary sysex" message, with the 24 bytes chunk. With random values v(x),w(x) but command w2 properly set are not recognized, ExpressXt does not react.
Instead the 24 bytes chunk created by ExpressXt, previously read, works. Using a chunk of an audio loop longer than the "midi" loop almost works:
ex.
F0 00 00 10 7F 62 01 5A 01 1D 44 33 42 02 04 78 03 05 63 2A 40 05 07 F7
You have to record the full lenght, but then it restart in sync every time that the command is issued.
If you force stop manually the recording of the loop, then it is not linked and it is out of sync.
I hope that my experiences can help someone else and we all can improve the knowledge of the protocol and figure out something else.
Rgds,
Calde