cbdevnet / midimonster

Multi-protocol control & translation software (ArtNet, MIDI, OSC, sACN, ...)
https://midimonster.net/
BSD 2-Clause "Simplified" License
499 stars 48 forks source link

Backend for MA Dot2 #21

Closed Spacelord09 closed 5 years ago

Spacelord09 commented 5 years ago

Can anyone add a Backend that uses the Webremote from the Dot2?

cbdevnet commented 5 years ago

Yes, I'm currently in the process of developing that (albeit with a focus on the GrandMA2 Web remote - though I think they use the same commands).

Spacelord09 commented 5 years ago

@cbdevnet Can you make a documentation for it?

cbdevnet commented 5 years ago

Yes I'll publish it with documentation as always, but it'll take at least a day more to be somewhat usable.

Spacelord09 commented 5 years ago

@cbdevnet Can you give me an update?

cbdevnet commented 5 years ago

@Spacelord09 I've just pushed a preliminary version containing my current development status. It's not quite finished yet and has some limitations:

You can build it with make maweb.so in the backends/ directory - once it's stable I'll add it to the main set of backends built automatically.

You can find the documentation in maweb.md

Spacelord09 commented 5 years ago

@cbdevnet I can test it for you.

Spacelord09 commented 5 years ago

Hey @cbdevnet That wont work with the Dot2.. I tested it only with the Dot2.

root@MIDIMONSTER:/midimonster# ./midimonster /midimonster/configs/TEST#1.cfg Registered backend maweb Registered backend osc Registered backend sacn Registered backend midi MIDI client ID is 128 Registered backend lua Registered backend artnet Registered backend loopback Registered backend evdev Created maweb instance mw1 maweb backend registering 1 descriptors to core Skipping start of backend osc Skipping start of backend sacn Skipping start of backend midi Skipping start of backend lua Skipping start of backend artnet Skipping start of backend loopback Skipping start of backend evdev maweb message (43): {"status":"server ready", "appType":"dot2"} maweb connection established maweb message (64): {"realtime":false,"session":11,"forceLogin":true,"worldIndex":0} maweb session id is now 11 maweb sending user credentials maweb message (118): {"prompt":"[Fixture]>","promptcolor":"#808080","realtime":false,"responseType":"login","result":false,"worldIndex":0} maweb login failed

Spacelord09 commented 5 years ago

@cbdevnet can you make a sample config with Midi MaWeb and ArtNet??

cbdevnet commented 5 years ago

@Spacelord09 It seems that the dot2 does not have full user management, instead you can just set the password for the web remote - the username is always 'remote'. I'll add it to the documentation.

Example configuration (I use it to test the maweb backend with my BCF fader wing in NC C mode):


[backend midi]
detect = on

[midi bcf]
read = BCF
write = BCF

[maweb ma]
host = 10.23.23.248
user = web
password = web

[map]
bcf.channel{0..7}.pitch > bcf.channel{0..7}.pitch
bcf.channel{0..7}.pitch > ma.page1.fader{1..8}
bcf.channel0.note{16..23} > ma.page1.upper{1..8}
bcf.channel0.note{24..31} > ma.page1.lower{1..8}
cbdevnet commented 5 years ago

I modified the backend so it can detect whether it is connected to a dot2 and automatically set the user name to remote

Spacelord09 commented 5 years ago

@cbdevnet I´ve tested it. It works!

But.... If I pressed a button mapped to " ma.page1.upper1" the key don't work...

Spacelord09 commented 5 years ago

Can you add motorized fader support for BCF?

cbdevnet commented 5 years ago

You can use the motorfaders with the MIDIMonster by mapping the appropriate channels as output on the MIDI instance (the same one's the faders send as inputs).

I'm still looking into how to get useful fader data as output from the MA Web Remote.

I'll look into the way the executor buttons are adressed on the dot, I think they have only two buttons and a fader for fader execs, is that right?

Spacelord09 commented 5 years ago

Yea. right!

cbdevnet commented 5 years ago

OK, I've analyzed the dot2 a bit further, the controls are numbered in a really weird way (right-to-left across the wings), I've added some bits so that in the current version, the upper/lower keys for fader execs on the dot should work, as well as being able to address all button executors on the console :)

Documentation was updated to reflect that

Spacelord09 commented 5 years ago

It´s working!

(Can we talk in german?? ;DDD)

cbdevnet commented 5 years ago

Ja prinzipiell schon ;) Den ersten Post in Issues wuerde ich aber gerne Englisch halten damit eventuelle nicht-deutschsprachige Helfer auch verstehen worums geht :)

Spacelord09 commented 5 years ago

Jo machen wir so😄

cbdevnet commented 5 years ago

Barring some minor problems, this was implemented in b4b27aa4a90899d5b025bbef11d444d4c47800d9