public override void Init(object initData)
        {
            base.Init(initData);

            if (Client.Szenario == null)
            {
                Device.BeginInvokeOnMainThread(async() =>
                {
                    await CoreMethods.DisplayAlert("Error: 320", "The szenario doesn't exist", "OK");
                });
                return;
            }
            Robot = new RobotModel(Client.Szenario.Robots[0]);

            Client.Szenario.Command = ControlType.Control.ToString();
            _speed      = 0;
            _direction  = 0;
            Change      = "Stop";
            ChangeColor = Color.FromHex("#8B0000");
        }
        /// <summary>
        /// Refresh the user interface
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void RefreshView(object sender, SensorValueChangedEventArgs e)
        {
            Device.BeginInvokeOnMainThread(async() =>
            {
                double x = 0, y = 0, z = 0;

                switch (Device.OS)
                {
                case WinPhone:
                case Windows:
                    x = Convert.ToDouble(((MotionVector)e.Value).X.ToString("F"));
                    y = Convert.ToDouble(((MotionVector)e.Value).Y.ToString("F"));
                    break;

                case Android:
                    x = (Convert.ToDouble(((MotionVector)e.Value).X.ToString("F")) / 10) * (-1);
                    y = (Convert.ToDouble(((MotionVector)e.Value).Y.ToString("F")) / 10) * (-1);
                    break;

                case iOS:
                    await CoreMethods.DisplayAlert("Error", "Not supported OS", "OK");
                    break;

                case Other:
                    await CoreMethods.DisplayAlert("Error", "Not supported OS", "OK");
                    break;

                default:
                    throw new ArgumentOutOfRangeException();
                }

                if (Device.Idiom == TargetIdiom.Phone)
                {
                    if (x <= 0.2 && x >= -0.2)
                    {
                        //Gerade aus
                        if (y >= 0.2)
                        {
                            _speed         = Steering.SpeedType.Faster;
                            DirectionImage = "ic_expand_less_black_48dp.png";
                        }
                        else if (y <= -0.2)
                        {
                            _speed         = Steering.SpeedType.Slower;
                            DirectionImage = "ic_expand_more_black_48dp.png";
                        }
                        else
                        {
                            _direction     = Steering.DirectionType.StraightOn;
                            _speed         = Steering.SpeedType.Equal;
                            DirectionImage = "";
                        }
                    }
                    else
                    {
                        //Drehen
                        if (x >= 0.2)
                        {
                            if (_direction == Steering.DirectionType.Left)
                            {
                                _direction     = Steering.DirectionType.StraightOn;
                                DirectionImage = "";
                            }
                            else
                            {
                                _direction     = Steering.DirectionType.Right;
                                DirectionImage = "ic_chevron_right_black_48dp.png";
                            }
                        }
                        else if (x <= -0.2)
                        {
                            if (_direction == Steering.DirectionType.Right)
                            {
                                _direction     = Steering.DirectionType.StraightOn;
                                DirectionImage = "";
                            }
                            else
                            {
                                _direction     = Steering.DirectionType.Left;
                                DirectionImage = "ic_chevron_left_black_48dp.png";
                            }
                        }
                    }
                }
                else if (Device.Idiom == TargetIdiom.Tablet)
                {
                    if (y <= 0.2 && y >= -0.2)
                    {
                        //Gerade aus
                        if (x >= 0.2)
                        {
                            _speed         = Steering.SpeedType.Faster;
                            DirectionImage = "ic_expand_less_black_48dp.png";
                        }
                        else if (x <= -0.2)
                        {
                            _speed         = Steering.SpeedType.Slower;
                            DirectionImage = "ic_expand_more_black_48dp.png";
                        }
                        else
                        {
                            _direction     = Steering.DirectionType.StraightOn;
                            _speed         = Steering.SpeedType.Equal;
                            DirectionImage = "";
                        }
                    }
                    else
                    {
                        //Drehen
                        if (y >= 0.2)
                        {
                            _direction     = Steering.DirectionType.Right;
                            DirectionImage = "ic_chevron_right_black_48dp.png";
                        }
                        else if (y <= -0.2)
                        {
                            _direction     = Steering.DirectionType.Left;
                            DirectionImage = "ic_chevron_left_black_48dp.png";
                        }
                    }
                }
                else
                {
                    await CoreMethods.DisplayAlert("Error", "Not supported target", "OK");
                }
            });
        }