OK, first off, I know next to nothing about Supercollider, but it seems that your Sc code is wrong. I tried a few different options.
Any of these works (only showing the content of the s.waitForBoot{} block for brevity, the rest of the document it's identical to the one you posted above):
SynthDef("multitest",{ // one oscillator per output channel
Out.ar(0, SinOsc.ar(200) * 1);
Out.ar(1, SinOsc.ar(300) * 1);
Out.ar(2, SinOsc.ar(400) * 1);
Out.ar(3, SinOsc.ar(500) * 1);
Out.ar(4, SinOsc.ar(600) * 1);
Out.ar(5, SinOsc.ar(700) * 1);
Out.ar(6, SinOsc.ar(800) * 1);
Out.ar(7, SinOsc.ar(900) * 1);
}).send(s);
s.sync;
Synth.new("multitest", target: s);
or
{ Out.ar(4, PinkNoise.ar(0.1)) }.play // noise out of channel 4
or
{ // one oscillator duplicated to all outputs
var sig;
sig = SinOsc.ar(220.0, 0.0, 0.3);
sig.dup(8);
}.play;
or
{ // one oscillator spread to all outputs
var sig;
sig = SinOsc.ar(220.0, 0.0, 0.3);
sig = SplayAz.ar(8, sig, width: 8);
}.play;
Looking at the last one, crucially you were using the wrong width for SplayAz. This value, according to the docs, means Over how much of the channels each signal is distributed. and - while I appreciate that this is not necessarily the correct way of expressing that in English - it seems to mean in practice "Over how many channels each signal is distributed". Setting it to 8 seems to have the intended result.
giuliomoro OK it is indeed a bug due to a change of API between the Supercollider build and the Bela core code.
This is a separate issue that doesn't actually affect the pre-built version of Supercollider that is bundled with Bela, so the above should suffice.