Thanks, this is what I'm looking for.
In USB slave controllers there are ofter register to sample D+ and D- line. Maybe in Canon too? Anyway, it is interesting to know is there any registers which changes its value after you change value in bit 2 in port 0xC0721000. Then bidirectional communication could be set easily.
Is it possible to add some command to scripting so that this bit could be controllable through script? I'm newbie in CHDK so learning process takes time before I could do my own build.