export function defaultStrip()

in libs/light/defaultstrip.ts [11:40]


    export function defaultStrip(): NeoPixelStrip {
        if (_defaultStrip) return _defaultStrip;

        const data = pins.pinByCfg(DAL.CFG_PIN_DOTSTAR_DATA);
        const clk = pins.pinByCfg(DAL.CFG_PIN_DOTSTAR_CLOCK);
        const dsnum = control.getConfigValue(DAL.CFG_NUM_DOTSTARS, 0);
        const neo = pins.pinByCfg(DAL.CFG_PIN_NEOPIXEL);
        const neonum = control.getConfigValue(DAL.CFG_NUM_NEOPIXELS, 0);
        const mosi = pins.pinByCfg(DAL.CFG_PIN_MOSI);
        const sck = pins.pinByCfg(DAL.CFG_PIN_SCK);

        _defaultStrip = new NeoPixelStrip();
        if (data && clk && dsnum > 1) {
            _defaultStrip._mode = NeoPixelMode.APA102;
            _defaultStrip._dataPin = data;
            _defaultStrip._clkPin = clk;
            _defaultStrip._length = dsnum;
        } else if(neo && neonum > 1) {
            _defaultStrip._mode = NeoPixelMode.RGB;
            _defaultStrip._dataPin = neo;
            _defaultStrip._length = neonum;
        } else { // mount strip on SPI
            _defaultStrip._mode = NeoPixelMode.RGB;
            _defaultStrip._dataPin = mosi;
            _defaultStrip._clkPin = sck;
            _defaultStrip._length = 30;
        }

        return _defaultStrip;
    }