Die 0 gibt das Register an in das geschrieben werden soll.
0 ist das Kommando Register. 1 bis 6 sind Register für Parameter.
(kann man natürlich noch erweitern bei Bedarf und auch direkt beschreibbare Register könnte man einführen)

Die 0 ist also absolut notwendig, sonst klappt es definitiv nicht.

Ich habe gerade keine Zeit das zu testen, was passiert wenn Du einfach mal
transmit3... (anstatt 2) verwendest?
(so kannst Du nebenbei auch die Variable beliebig beschreiben indem Du
remote_control = param1 schreibst... dann funktioniert das wie z.B. bei setLEDs)

MfG,
SlyD