void Update() { if (AssetPanel.main.selectedAsset.GetComponent <HCSTelemetry>().macAddress != "") { HCSTag tag = mqttManager.main.listOfHCSTags[hcsTelemetry.macAddress]; if (t < data[0].Length - 1) { t += 1; } else { t = 0; } if (tag.ori[0] != null) { data[0][t] = Mathf.Sqrt(Mathf.Pow(tag.acc[0], 2) + Mathf.Pow(tag.acc[1], 2) + Mathf.Pow(tag.acc[2], 2)); } if (_LineChart != null) { _LineChart.UpdateData(data); } //Update Data badBend.isOn = AssetPanel.main.selectedAsset.GetComponent <HCSTelemetry>().badBendActivated; temperatureText.text = tag.tmp.ToString() + " C"; pressureText.text = tag.bmp.ToString() + " Pa"; humidity.text = tag.hum.ToString() + " %"; HCSTagIdText.text = tag.macAddress; OrientationObject.transform.rotation = Quaternion.Slerp(OrientationObject.transform.rotation, Quaternion.Euler(tag.ori[0], tag.ori[1], tag.ori[2]), 2 * Time.deltaTime); } }
void clientBlueMix_MqttMsgPusblishReceived(object sender, MqttMsgPublishEventArgs e) { //Debug.Log("HCS_BLE_Tag received"); string message = System.Text.Encoding.UTF8.GetString(e.Message); string evt = e.Topic.ToString().Split('/')[6]; string macAddress = e.Topic.ToString().Split('/')[4]; try { HCSTag incomingTag = new HCSTag(); incomingTag = JsonUtility.FromJson <HCSTag>(message); incomingTag.macAddress = macAddress; //IF tag exists, update it: if (listOfHCSTags.ContainsKey(macAddress)) { switch (evt) { case "orin": listOfHCSTags[macAddress].ori = incomingTag.ori; listOfHCSTags[macAddress].acc = incomingTag.acc; listOfHCSTags[macAddress].gyr = incomingTag.gyr; break; case "envi": listOfHCSTags[macAddress].lit = incomingTag.lit; listOfHCSTags[macAddress].snd = incomingTag.snd; listOfHCSTags[macAddress].hum = incomingTag.hum; listOfHCSTags[macAddress].bmp = incomingTag.bmp; listOfHCSTags[macAddress].uvi = incomingTag.uvi; listOfHCSTags[macAddress].tmp = incomingTag.tmp; listOfHCSTags[macAddress].alt = incomingTag.alt; break; case "meta": listOfHCSTags[macAddress].bat = incomingTag.bat; listOfHCSTags[macAddress].tim = incomingTag.tim; break; } } // If tag doesn't exist, create it: else { HCSTag newTag = incomingTag; listOfHCSTags.Add(incomingTag.macAddress, newTag); } } catch (Exception error) { Debug.Log("error" + error); } }