Haven't tried it yet, but the help/instructions have been updated in the app too, and they explain it.
Controller 1 is master, controller 2 is slave.
The slave can't change any settings/etc it's all "cloned" from the first controller
The slave also can not do a CSC for example, or anything potentially "dangerous"
The slave can control the sticks, and gimbal, and take pics/record/etc.
So the slave can fully fly the mavic, however if the master inputs any stick input, (ie: anything but center stick) it takes over immediately and all input from the slave is ignored. Same goes for gimbal, if the gimbal is left alone by master, after like 30 seconds, the slave can take control, but as soon as the master provides input it takes over. (it's either a 30 second, or one minute timeout for no input before the slave can take over again).
This should allow for both use cases you described:
- Trainer or buddy box. Basically slave pilot can be a "learner" while master maintains control
- Slave can fly gimbal and control camera, while master controls flight
- Or the other way around (master gimbal, slave flight)