diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml
index 34e6a9d..d13e4c8 100644
--- a/.settings/language.settings.xml
+++ b/.settings/language.settings.xml
@@ -5,7 +5,7 @@
-
+
@@ -16,7 +16,7 @@
-
+
diff --git a/usrc/hardware.cpp b/usrc/hardware.cpp
index fd05d0e..23816a2 100644
--- a/usrc/hardware.cpp
+++ b/usrc/hardware.cpp
@@ -92,6 +92,14 @@ void dumphpp272data(hpp272_data_t *data) {
printf("water_vapor_saturation_pressure_h2o_h2o2: %d\n", data->water_vapor_saturation_pressure_h2o_h2o2);
}
+int hydrogen_peroxide_volume_get_ppm() {
+ uint32_t adc_val = ADC_Get_Average(3, 12);
+ float voltage = adc_val * 3.3 / 4096;
+ float current_ma = voltage / 150.0;
+ float ppm = (current_ma - 4.0) / 16.0 * 2000;
+ return ppm;
+}
+
void Hardware::initialize(int deviceId) {
m_device_id = deviceId;
@@ -220,14 +228,22 @@ int32_t Hardware::process_rx_packet(from_where_t fromwhere, uint8_t *packet, int
}
static hpp272_data_t fake_hpp272data;
- //
PROCESS_CMD(kcmd_m211887_operation, 0, 1) {
// hpp272_data_t *hpp272data = hpp272.readVal();
- fake_hpp272data.hydrogen_peroxide_volume = 101;
- fake_hpp272data.h2o_h2o2_rs = 102;
- fake_hpp272data.temperature1 = 103;
- fake_hpp272data.relative_humidity = 104;
+#if 0
+ data.h2o2 = m_hpp272_data_1.hydrogen_peroxide_volume;
+ data.humid = m_hpp272_data_1.relative_humidity / 100;
+ data.temp = m_hpp272_data_1.temperature1 / 100;
+ data.saturation = m_hpp272_data_1.h2o_h2o2_rs / 100;
+#endif
+
+ fake_hpp272data.hydrogen_peroxide_volume = hydrogen_peroxide_volume_get_ppm(); // ppm
+ fake_hpp272data.relative_humidity = 50 * 100; // %RH * 100
+ fake_hpp272data.temperature1 = 25 * 100; // °C * 100
+ fake_hpp272data.h2o_h2o2_rs = 1 * 100; // %RS * 100
+
+#if 0
fake_hpp272data.absolute_hydrogen_peroxide = 105;
fake_hpp272data.h2o_h2o2dew_point_temperature = 106;
fake_hpp272data.reserved1 = 107;
@@ -238,7 +254,9 @@ int32_t Hardware::process_rx_packet(from_where_t fromwhere, uint8_t *packet, int
fake_hpp272data.temperature2 = 112;
fake_hpp272data.h2o2_vapor_pressure = 113;
fake_hpp272data.water_vapor_saturation_pressure_h2o_h2o2 = 114;
- hpp272_data_t *hpp272data = &fake_hpp272data;
+#endif
+
+ hpp272_data_t *hpp272data = &fake_hpp272data;
if (hpp272data) {
receipt[0] = 1;
receipt[1] = 0;