private void SensorValueChanged(object sender, X2CodingLab.SensorTag.SensorValueChangedEventArgs e)
 {
     switch (e.Origin)
     {
         case SensorName.HumiditySensor:
             CurrentValues.Humidity = HumiditySensor.CalculateHumidityInPercent(e.RawData);
             break;
         case SensorName.TemperatureSensor:
             CurrentValues.Temperature = IRTemperatureSensor.CalculateAmbientTemperature(e.RawData, TemperatureScale.Celsius);
             break;
     }
 }
Esempio n. 2
0
        async void SensorValueChanged(object sender, X2CodingLab.SensorTag.SensorValueChangedEventArgs e)
        {
            await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async () =>
            {
                switch (e.Origin)
                {
                    case SensorName.Accelerometer:
                        // WebSockets
                        MessageWebSocket webSocket = messageWebSocket;

                        if (webSocket == null)
                        {
                            Uri server = new Uri("ws://localhost:8181");
                            webSocket = new MessageWebSocket();
                            webSocket.Control.MessageType = SocketMessageType.Utf8;
                            webSocket.MessageReceived += MessageReceived;
                            webSocket.Closed += Closed;

                            await webSocket.ConnectAsync(server);
                            messageWebSocket = webSocket;
                            messageWriter = new DataWriter(webSocket.OutputStream);
                        }

                        string message = null;
                        //byte[] accValue = await acc.ReadValue();
                        double[] accAxis = Accelerometer.CalculateCoordinates(e.RawData, 1 / 64.0);

                        double xRaw = accAxis[0] / 4;
                        double yRaw = accAxis[1] / 4;

                        message = "SET RAW_INPUT " + xRaw.ToString("0.00000") + "," + yRaw.ToString("0.00000");
                        info.Text = message;

                        messageWriter.WriteString(message);
                        await messageWriter.StoreAsync();
                        break;
                }
            });
        }
Esempio n. 3
0
 async void SensorValueChanged(object sender, X2CodingLab.SensorTag.SensorValueChangedEventArgs e)
 {
     await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async () =>
         {
             switch (e.Origin)
             {
                 case SensorName.Accelerometer:
                     double[] accValues = Accelerometer.CalculateCoordinates(e.RawData, 1 / 64.0);
                     tbAccelerometer.Text = "X: " + accValues[0].ToString("0.00") + " Y: " + accValues[1].ToString("0.00") + " Z: " + accValues[2].ToString("0.00");
                     break;
                 case SensorName.Gyroscope:
                     float[] axisValues = Gyroscope.CalculateAxisValue(e.RawData, GyroscopeAxis.XYZ);
                     tbGyroscope.Text = "X: " + axisValues[0].ToString("0.00") + " Y: " + axisValues[1].ToString("0.00") + " Z: " + axisValues[2].ToString("0.00");
                     break;
                 case SensorName.HumiditySensor:
                     tbHumidity.Text = HumiditySensor.CalculateHumidityInPercent(e.RawData).ToString("0.00") + "%";
                     break;
                 case SensorName.Magnetometer:
                     float[] magnetValues = Magnetometer.CalculateCoordinates(e.RawData);
                     tbMagnetometer.Text = "X: " + magnetValues[0].ToString("0.00") + " Y: " + magnetValues[1].ToString("0.00") + " Z: " + magnetValues[2].ToString("0.00");
                     break;
                 case SensorName.PressureSensor:
                     try
                     {
                     tbPressure.Text = (PressureSensor.CalculatePressure(e.RawData, ps.CalibrationData) / 100).ToString("0.00");
                     }
                     catch(NullReferenceException)
                     {
                         // in case another(!) setup is executed, so ps is null
                     }
                     break;
                 case SensorName.SimpleKeyService:
                     if (SimpleKeyService.LeftKeyHit(e.RawData))
                     {
                         tbLeftKey.Text = "hit!";
                         await Task.Delay(200);
                         tbLeftKey.Text = "";
                     }
                     else if (SimpleKeyService.RightKeyHit(e.RawData))
                     {
                         tbRightKey.Text = "hit!";
                         await Task.Delay(200);
                         tbRightKey.Text = "";
                     }
                     break;
                 case SensorName.TemperatureSensor:
                     double ambient = IRTemperatureSensor.CalculateAmbientTemperature(e.RawData, TemperatureScale.Celsius);
                     double target = IRTemperatureSensor.CalculateTargetTemperature(e.RawData, ambient, TemperatureScale.Celsius);
                     tbTemperature.Text = ambient.ToString("0.00");
                     tbTargetTemperature.Text = target.ToString("0.00");
                     break;
             }
         });
 }
        async void SensorValueChanged(object sender, X2CodingLab.SensorTag.SensorValueChangedEventArgs e)
        {
            switch (e.Origin)
            {
                case SensorName.Accelerometer:
                    double[] accValues = Accelerometer.CalculateCoordinates(e.RawData, 1 / 64.0);
                    //tbAccelerometer.Text = "X: " + accValues[0].ToString("0.00") + " Y: " + accValues[1].ToString("0.00") + " Z: " + accValues[2].ToString("0.00");
                    break;
                case SensorName.Gyroscope:
                    float[] axisValues = Gyroscope.CalculateAxisValue(e.RawData, GyroscopeAxis.XYZ);
                    //tbGyroscope.Text = "X: " + axisValues[0].ToString("0.00") + " Y: " + axisValues[1].ToString("0.00") + " Z: " + axisValues[2].ToString("0.00");
                    break;
                case SensorName.HumiditySensor:
                    humidity = HumiditySensor.CalculateHumidityInPercent(e.RawData).ToString("0.00");
                    SensorValues.Humidity = humidity;
                    //tbHumidity.Text = humidity + "%";
                    break;
                case SensorName.TemperatureSensor:
                    double ambient = IRTemperatureSensor.CalculateAmbientTemperature(e.RawData, TemperatureScale.Farenheit);
                    double target = IRTemperatureSensor.CalculateTargetTemperature(e.RawData, ambient, TemperatureScale.Farenheit);
                    SensorValues.AmbientTemperature = ambient;
                    SensorValues.TargetTemperature = target;
                    //temp = ambient;
                    break;
            }


            try
            {
                
                //SendDataToEventhub.serviceNamespace = "tisensordemosh";
                //SendDataToEventhub.hubName = "tisensordemoeh";
                //SendDataToEventhub.sharedAccessPolicyName = "all";
                //SendDataToEventhub.sharedAccessKey = "mcxBEocF6f0KHQGhP2MtT7A44tUC+zhqyDcetP/Jt0o=";
                //SendDataToEventhub.deviceName = "sudhesh";

                string body = "";
                body = "{ \"from\":\"" + SendDataToEventhub.deviceName + "\"";
                body += ", \"dspl\":\"" + SendDataToEventhub.deviceName + "\"";
                body += ", \"time\":\"" + DateTime.UtcNow.ToString("O") + "\"";
                body += ", \"Subject\":\"wthr\"";
                if (!String.IsNullOrEmpty(SensorValues.Humidity))
                    body += ", \"hmdt\":" + SensorValues.Humidity;
                body += ", \"temp\":" + Math.Round(SensorValues.AmbientTemperature, 3);
                body += "}";
                
                
                bool code = await SendDataToEventhub.SendMessage(body);
                SendDataToEventhub.status = body;
                //txtStatus.Text = code.ToString();
                //this.Cursor = Cursors.Default;
            }
            catch (Exception ex)
            {
                //Debug.WriteLine(ex.ToString());
                SendDataToEventhub.status = "error in sending data to eventhub";
            }



        }