private string __DetectMcuComPort(Mcu.FirmwareName expectedFirmware)
        {
            var ports = McuCom.GetMcuPortName();

            foreach (var p in ports)
            {
                try
                {
                    Console.Write(".");
                    this._mcu = new McuCom(p, BAUD);
                    if (this.Ping().Succeeded) // This will turn on the on board led
                    {
                        this.Firmware = this.DetectFirmware();
                        if (this.Firmware == expectedFirmware)
                        {
                            return(p);
                        }
                    }
                }
                finally
                {
                    if (this._mcu != null)
                    {
                        this._mcu.Dispose();
                        this._mcu = null;
                    }
                }
            }
            return(null);
        }
Example #2
0
        public override McuComResponse Initialize(Mcu.FirmwareName firmwareName = Mcu.FirmwareName.NusbioMcuMatrixPixel)
        {
            var r = base.Initialize(firmwareName);

            if (r.Succeeded)
            {
                return(r);
            }
            return(r);
        }
Example #3
0
        public override McuComResponse Initialize(Mcu.FirmwareName firmwareName = Mcu.FirmwareName.NusbioMcuEeprom)
        {
            var r = base.Initialize(firmwareName);

            if (r.Succeeded)
            {
                var eepromInfo = this.GetInfo();
                if (eepromInfo.Succeeded)
                {
                    return(eepromInfo);
                }
                return(r);
            }
            return(r);
        }
Example #4
0
        public override McuComResponse Initialize(Mcu.FirmwareName firmwareName = Mcu.FirmwareName.NusbioMcuMatrixPixel)
        {
            var r = base.Initialize(firmwareName);

            if (r.Succeeded)
            {
                if (this.SetMatrixCount(this.MatrixCount).Succeeded)
                {
                    if (this.SetIntensity(0).Succeeded)
                    {
                        return(base.InitializationDone());
                    }
                }
            }
            return(r);
        }
Example #5
0
        public override McuComResponse Initialize(Mcu.FirmwareName firmwareName = Mcu.FirmwareName.NusbioMcuMatrixPixel)
        {
            var r = base.Initialize(firmwareName);

            if (r.Succeeded)
            {
                if (this.SetBrightness(DEFAULT_BRIGHTNESS).Succeeded)
                {
                    if (this.SetLedCount(this.Count).Succeeded)
                    {
                        return(r);
                    }
                }
            }
            return(r);
        }
        public string DetectMcuComPort(Mcu.FirmwareName expectedFirmware = Mcu.FirmwareName.NusbioMcuMatrixPixel, int reTry = 5)
        {
            int tryCounter = 0;
            int waitTime   = 1000;

            while (tryCounter < reTry)
            {
                var comPort = __DetectMcuComPort(expectedFirmware);
                if (comPort != null)
                {
                    return(comPort);
                }
                tryCounter++;
                Thread.Sleep(waitTime);
                waitTime += 1250;
            }
            return(null);
        }
        public virtual McuComResponse Initialize(Mcu.FirmwareName firmwareName = Mcu.FirmwareName.NusbioMcuMatrixPixel)
        {
            this._mcu = new McuCom(this._comPort, this._baud);
            var r = this.Ping();

            if (r.Succeeded)
            {
                this.FirmwareVersion = r.GetParam(1);
                this.Firmware        = this.DetectFirmware();
                if (this.Firmware == firmwareName)
                {
                    this.SetOnBoardLed(OnBoardLedMode.Connected);
                    return(McuComResponse.Success);
                }
                else
                {
                    return(new McuComResponse().Fail(string.Format("Invalid firmware:{0}", this.Firmware)));
                }
            }
            return(new McuComResponse().Fail("Firmware not found"));
        }