giuliomoro Yes, but that should be different from 0 if you enabled the multiplexer capelet in the IDE.
I can't find the multiplexer enable toggle though. The IDE only shows Project Settings, IDE Settings, Feedback and Other system functions. I can't find any Cape Settings.
As I'm using a CTAG cape (well, my custom PCB but as far as the software goes that works as a CTAG), I tried the following combination in pru_rtaudio_irq.p
:
#define ENABLE_CTAG_FACE // enables run-time selection of the CTAG Face codec.
//#define ENABLE_CTAG_BEAST // enables run-time selection of the CTAG Beast codecs
//#define ENABLE_BELA_TLV32 // enables run-time selection of the Bela TLV32 codec
//#define ENABLE_BELA_GENERIC_TDM // enables run-time selection of custom TDM options
#define ENABLE_MUXER // enables run-time selection of the Multiplexer capelet
But that gave me McASP transmitter underrun occurred, audio frame 70528, errorCode: 2
The combination not giving me McASP errors seems to be:
//#define ENABLE_CTAG_FACE // enables run-time selection of the CTAG Face codec.
//#define ENABLE_CTAG_BEAST // enables run-time selection of the CTAG Beast codecs
//#define ENABLE_BELA_TLV32 // enables run-time selection of the Bela TLV32 codec
#define ENABLE_BELA_GENERIC_TDM // enables run-time selection of custom TDM options
#define ENABLE_MUXER // enables run-time selection of the Multiplexer capelet
Then I added --mux-channels 8
to User Command Line Options
in the IDE. Still, the mux binary clock does not start yet, context->multiplexerChannels
returns 0, and the pins measure 3.3V.
I also found that there is a pulldown by default on the Bela digital I/O which messes with the output pin of the 4051 (it only reached ~1.6V as 'high' level). I removed those by replacing 0x27
with 0x2F
here.
On the hardware side I have the following connections for the binary clock
P8_45 --- [100Ω] --- [flatcables] --- [mux A]
P8_46 --- [100Ω] --- [flatcables] --- [mux B]
P8_43 --- [100Ω] --- [flatcables] --- [mux C]