BrickPi.Brick.SelectAndInitSerial C# (CSharp) Method

SelectAndInitSerial() private method

Initialize the Serial port, the BrickPi
private SelectAndInitSerial ( SerialDevice myserial ) : Task
myserial SerialDevice
return Task
        private async Task SelectAndInitSerial(SerialDevice myserial)
        {
            try
            {
                if (myserial == null)
                {
                    string aqs = SerialDevice.GetDeviceSelector();
                    var dis = await DeviceInformation.FindAllAsync(aqs);

                    for (int i = 0; i < dis.Count; i++)
                    {
                        Debug.WriteLine(string.Format("Serial device found: {0}", dis[i].Id));
                        if (dis[i].Id.IndexOf("UART0") != -1)
                        {
                            serialPort = await SerialDevice.FromIdAsync(dis[i].Id);
                        }
                    }
                }
                else
                    serialPort = myserial;
                if (serialPort != null)
                {
                    serialPort.BaudRate = 500000; //the communication speed with the 2 arduinos.
                    // you may need to do the following steps into your RaspberryPi rinnong Windows IoT core:
                    //Reg add hklm\system\controlset001\services\serpl011\parameters /v MaxBaudRateNoDmaBPS /t REG_DWORD /d 921600
                    //Devcon restart acpi\bcm2837

                    //initializing the defaults timeout and other serial data
                    serialPort.WriteTimeout = TimeSpan.FromMilliseconds(BrickPi.Timeout);
                    serialPort.ReadTimeout = TimeSpan.FromMilliseconds(BrickPi.Timeout);
                    serialPort.Parity = SerialParity.None;
                    serialPort.StopBits = SerialStopBitCount.One;
                    serialPort.DataBits = 8;
                    //this will be used only for debug. Nothing else is implemented so far
                    serialPort.ErrorReceived += SerialPort_ErrorReceived;
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(string.Format("Exception initializing serrail port: {0}", ex.Message));
            }
        }