DEBUG - mycodo.influx - Write point fail: (422)

1st, thank you for creating such a dynamic practical system.

I have just installed a fresh version of raspberry pi & mycodo following the online mycodo instructions.

There were no errors displayed on the set up log.

Here are the details:

Mycodo Version: 8.15.13
Python Version: 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0]
Database Version: 16b28ef31b5b
Daemon Status: Running
Daemon Process ID: None
Daemon RAM Usage: 155.744 MB
Daemon Virtualenv: Yes
Frontend Process ID: 755
Frontend RAM Usage: 127.544 MB
Frontend Virtualenv: Yes

I have installed inputs and outputs. One of the inputs is a SCD30 measuring C02, Humidity, Temperature, Dewpoint and VPD.

I installed several functions. At this stage, all measurements from the SCD30 (C02, Humidity, Temperature, Dewpoint and VPD) were displayed.

I then installed a conditional controller that pulled two measurements (single last) of the humidity and the C02. After I saved the new function the SCD30 humidity reading was zero. The other associated readings were displayed. See image below:

The last 100 lines of the Mycodo log shows the following errors:

Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:00:32 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=806.513671875\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.75555419921875\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=53.88946533203125\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.002994826138895\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1200.8259615298505'
2023-12-30 10:00:39,993 - INFO - mycodo.controllers.controller_conditional_41546249 - ***START INPUT & EXTRACTION FANS & ULTRASONIC MISTER ON/OFF FUNCTION***
2023-12-30 10:00:39,993 - INFO - mycodo.controllers.controller_conditional_41546249 - self.loop_count is: 34
2023-12-30 10:00:40,071 - DEBUG - mycodo.influx - query_flux() query: 'from(bucket: "mycodo_db") |> range(start: -60s) |> filter(fn: (r) => r["_measurement"] == "percent") |> filter(fn: (r) => r["device_id"] == "c1746d34-2c76-4afd-8428-566e9e6025ba") |> filter(fn: (r) => r["channel"] == "2") |> filter(fn: (r) => r["measure"] == "humidity") |> last()'
2023-12-30 10:00:40,346 - DEBUG - mycodo.influx - query_flux() query: 'from(bucket: "mycodo_db") |> range(start: -60s) |> filter(fn: (r) => r["_measurement"] == "ppm") |> filter(fn: (r) => r["device_id"] == "c1746d34-2c76-4afd-8428-566e9e6025ba") |> filter(fn: (r) => r["channel"] == "0") |> filter(fn: (r) => r["measure"] == "co2") |> last()'
2023-12-30 10:00:40,629 - ERROR - mycodo.action.email_0fb768e7 - Wait 1294 seconds to email again.
2023-12-30 10:00:40,780 - DEBUG - mycodo.controllers.controller_output - output_on_off(99991198-b3cb-4415-a050-2b61d98a8c28, off, 0, None, 0.0, 0.0, True)
2023-12-30 10:00:40,963 - DEBUG - mycodo.influx - Write point success: b'percent,channel=0,device_id=99991198-b3cb-4415-a050-2b61d98a8c28,measure=duty_cycle value=0i'
2023-12-30 10:00:40,976 - DEBUG - mycodo.controllers.controller_output - output_on_off(6d918c21-1903-4e98-9cef-63629728c86e, off, 1, None, 0.0, 0.0, True)
2023-12-30 10:00:41,136 - INFO - mycodo.controllers.controller_conditional_41546249 - ***FINISH INPUT & EXTRACTION FANS & ULTRASONIC MISTER ON/OFF FUNCTION***
2023-12-30 10:00:41,138 - DEBUG - mycodo.controllers.controller_output - output_on_off(576ac6da-bc13-449d-8dc9-2b603f912b46, off, 0, None, 0.0, 0.0, True)
2023-12-30 10:00:41,321 - DEBUG - mycodo.influx - Write point success: b'percent,channel=0,device_id=576ac6da-bc13-449d-8dc9-2b603f912b46,measure=duty_cycle value=0i'
2023-12-30 10:00:45,794 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=368\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.679432859200002'
2023-12-30 10:00:46,948 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 806.3982543945312, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 0, 46, 935296)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.795608520507812, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 0, 46, 935307)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 54.03289794921875, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 0, 46, 935314)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.080558642206713, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 0, 46, 935341)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1200.0217322659369, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 0, 46, 935360)}}
2023-12-30 10:00:47,137 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:00:47 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=806.3982543945312\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.795608520507812\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=54.03289794921875\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.080558642206713\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1200.0217322659369'
2023-12-30 10:01:00,874 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=366\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.56647211086'
2023-12-30 10:01:01,933 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 807.1055908203125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 1, 919658)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.782257080078125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 1, 919672)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 54.0313720703125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 1, 919678)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.067739176921146, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 1, 919707)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1199.0838084365691, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 1, 919727)}}
2023-12-30 10:01:02,112 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:01:02 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=807.1055908203125\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.782257080078125\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=54.0313720703125\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.067739176921146\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1199.0838084365691'
2023-12-30 10:01:15,906 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=367\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.785756038240002'
2023-12-30 10:01:16,917 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 806.6917724609375, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 16, 903807)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.795608520507812, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 16, 903817)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 54.669189453125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 16, 903823)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.258670505786895, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 16, 903850)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1183.4106430591353, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 16, 903870)}}
2023-12-30 10:01:17,102 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:01:17 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=806.6917724609375\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.795608520507812\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=54.669189453125\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.258670505786895\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1183.4106430591353'
2023-12-30 10:01:30,777 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=365\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.679432859200002'
2023-12-30 10:01:32,013 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 811.0616455078125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 31, 981609)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.811630249023438, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 31, 981626)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 55.44586181640625, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 31, 981633)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.4885339616728, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 31, 981677)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1164.2728548255725, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 31, 981701)}}
2023-12-30 10:01:32,291 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:01:32 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=811.0616455078125\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.811630249023438\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=55.44586181640625\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.4885339616728\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1164.2728548255725'
2023-12-30 10:01:40,191 - INFO - mycodo.controllers.controller_conditional_41546249 - ***START INPUT & EXTRACTION FANS & ULTRASONIC MISTER ON/OFF FUNCTION***
2023-12-30 10:01:40,191 - INFO - mycodo.controllers.controller_conditional_41546249 - self.loop_count is: 35
2023-12-30 10:01:40,267 - DEBUG - mycodo.influx - query_flux() query: 'from(bucket: "mycodo_db") |> range(start: -60s) |> filter(fn: (r) => r["_measurement"] == "percent") |> filter(fn: (r) => r["device_id"] == "c1746d34-2c76-4afd-8428-566e9e6025ba") |> filter(fn: (r) => r["channel"] == "2") |> filter(fn: (r) => r["measure"] == "humidity") |> last()'
2023-12-30 10:01:40,506 - DEBUG - mycodo.influx - query_flux() query: 'from(bucket: "mycodo_db") |> range(start: -60s) |> filter(fn: (r) => r["_measurement"] == "ppm") |> filter(fn: (r) => r["device_id"] == "c1746d34-2c76-4afd-8428-566e9e6025ba") |> filter(fn: (r) => r["channel"] == "0") |> filter(fn: (r) => r["measure"] == "co2") |> last()'
2023-12-30 10:01:40,805 - ERROR - mycodo.action.email_0fb768e7 - Wait 1234 seconds to email again.
2023-12-30 10:01:41,118 - DEBUG - mycodo.controllers.controller_output - output_on_off(99991198-b3cb-4415-a050-2b61d98a8c28, off, 0, None, 0.0, 0.0, True)
2023-12-30 10:01:41,646 - DEBUG - mycodo.influx - Write point success: b'percent,channel=0,device_id=99991198-b3cb-4415-a050-2b61d98a8c28,measure=duty_cycle value=0i'
2023-12-30 10:01:41,724 - DEBUG - mycodo.controllers.controller_output - output_on_off(6d918c21-1903-4e98-9cef-63629728c86e, off, 1, None, 0.0, 0.0, True)
2023-12-30 10:01:41,946 - DEBUG - mycodo.controllers.controller_output - output_on_off(576ac6da-bc13-449d-8dc9-2b603f912b46, off, 0, None, 0.0, 0.0, True)
2023-12-30 10:01:41,950 - INFO - mycodo.controllers.controller_conditional_41546249 - ***FINISH INPUT & EXTRACTION FANS & ULTRASONIC MISTER ON/OFF FUNCTION***
2023-12-30 10:01:42,228 - DEBUG - mycodo.influx - Write point success: b'percent,channel=0,device_id=576ac6da-bc13-449d-8dc9-2b603f912b46,measure=duty_cycle value=0i'
2023-12-30 10:01:45,783 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=364\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.24086500444'
2023-12-30 10:01:46,971 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 811.364013671875, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 46, 940617)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.795608520507812, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 46, 940637)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 55.523681640625, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 46, 940645)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.49501075157565, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 46, 940695)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1161.1031851315363, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 1, 46, 940719)}}
2023-12-30 10:01:47,164 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:01:47 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=811.364013671875\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.795608520507812\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=55.523681640625\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.49501075157565\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1161.1031851315363'
2023-12-30 10:02:00,866 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=368\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.679432859200002'
2023-12-30 10:02:01,978 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 813.9232788085938, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 1, 951974)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.795608520507812, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 1, 951990)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 55.36041259765625, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 1, 951997)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.450101614360184, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 1, 952031)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1165.3655029855597, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 1, 952054)}}
2023-12-30 10:02:02,212 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:02:02 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=813.9232788085938\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.795608520507812\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=55.36041259765625\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.450101614360184\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1165.3655029855597'
2023-12-30 10:02:15,777 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=366\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.56647211086'
2023-12-30 10:02:16,978 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 812.813232421875, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 16, 965573)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.811630249023438, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 16, 965583)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 55.5938720703125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 16, 965589)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.529200465913434, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 16, 965616)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1160.4051036382689, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 16, 965635)}}
2023-12-30 10:02:17,160 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:02:17 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=812.813232421875\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.811630249023438\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=55.5938720703125\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.529200465913434\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1160.4051036382689'
2023-12-30 10:02:30,866 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=366\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.46014893182'
2023-12-30 10:02:31,986 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 814.1861572265625, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 31, 946207)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.768905639648438, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 31, 946224)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 55.5877685546875, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 31, 946230)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.48774251192994, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 31, 946265)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1157.5414905533341, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 31, 946286)}}
2023-12-30 10:02:32,244 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:02:32 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=814.1861572265625\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.768905639648438\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=55.5877685546875\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.48774251192994\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1157.5414905533341'
2023-12-30 10:02:40,031 - INFO - mycodo.controllers.controller_conditional_41546249 - ***START INPUT & EXTRACTION FANS & ULTRASONIC MISTER ON/OFF FUNCTION***
2023-12-30 10:02:40,032 - INFO - mycodo.controllers.controller_conditional_41546249 - self.loop_count is: 36
2023-12-30 10:02:40,118 - DEBUG - mycodo.influx - query_flux() query: 'from(bucket: "mycodo_db") |> range(start: -60s) |> filter(fn: (r) => r["_measurement"] == "percent") |> filter(fn: (r) => r["device_id"] == "c1746d34-2c76-4afd-8428-566e9e6025ba") |> filter(fn: (r) => r["channel"] == "2") |> filter(fn: (r) => r["measure"] == "humidity") |> last()'
2023-12-30 10:02:40,369 - DEBUG - mycodo.influx - query_flux() query: 'from(bucket: "mycodo_db") |> range(start: -60s) |> filter(fn: (r) => r["_measurement"] == "ppm") |> filter(fn: (r) => r["device_id"] == "c1746d34-2c76-4afd-8428-566e9e6025ba") |> filter(fn: (r) => r["channel"] == "0") |> filter(fn: (r) => r["measure"] == "co2") |> last()'
2023-12-30 10:02:40,673 - ERROR - mycodo.action.email_0fb768e7 - Wait 1174 seconds to email again.
2023-12-30 10:02:40,919 - DEBUG - mycodo.controllers.controller_output - output_on_off(99991198-b3cb-4415-a050-2b61d98a8c28, off, 0, None, 0.0, 0.0, True)
2023-12-30 10:02:41,118 - DEBUG - mycodo.controllers.controller_output - output_on_off(6d918c21-1903-4e98-9cef-63629728c86e, off, 1, None, 0.0, 0.0, True)
2023-12-30 10:02:41,156 - DEBUG - mycodo.influx - Write point success: b'percent,channel=0,device_id=99991198-b3cb-4415-a050-2b61d98a8c28,measure=duty_cycle value=0i'
2023-12-30 10:02:41,300 - INFO - mycodo.controllers.controller_conditional_41546249 - ***FINISH INPUT & EXTRACTION FANS & ULTRASONIC MISTER ON/OFF FUNCTION***
2023-12-30 10:02:41,303 - DEBUG - mycodo.controllers.controller_output - output_on_off(576ac6da-bc13-449d-8dc9-2b603f912b46, off, 0, None, 0.0, 0.0, True)
2023-12-30 10:02:41,496 - DEBUG - mycodo.influx - Write point success: b'percent,channel=0,device_id=576ac6da-bc13-449d-8dc9-2b603f912b46,measure=duty_cycle value=0i'
2023-12-30 10:02:45,751 - DEBUG - mycodo.influx - Write point success: b'unitless,channel=0,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=moisture value=368\nC,channel=1,device_id=f9974ca3-a751-481e-aec3-d22b8906c45c,measure=temperature value=17.785756038240002'
2023-12-30 10:02:46,954 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 815.1616821289062, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 46, 925206)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 21.782257080078125, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 46, 925221)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 55.8319091796875, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 46, 925228)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 12.567037743345956, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 46, 925262)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1152.1171054572437, 'timestamp_utc': datetime.datetime(2023, 12, 29, 23, 2, 46, 925284)}}
2023-12-30 10:02:47,178 - DEBUG - mycodo.influx - Write point fail: (422)
Reason: Unprocessable Entity
HTTP response headers: HTTPHeaderDict({'Content-Type': 'application/json; charset=utf-8', 'X-Influxdb-Build': 'OSS', 'X-Influxdb-Version': 'v2.7.3', 'X-Platform-Error-Code': 'unprocessable entity', 'Date': 'Fri, 29 Dec 2023 23:02:47 GMT', 'Content-Length': '220'})
HTTP response body: {"code":"unprocessable entity","message":"failure writing points to database: partial write: field type conflict: input field \"value\" on measurement \"percent\" is type float, already exists as type integer dropped=1"}
: b'ppm,channel=0,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=co2 value=815.1616821289062\nC,channel=1,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=temperature value=21.782257080078125\npercent,channel=2,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=humidity value=55.8319091796875\nC,channel=3,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=dewpoint value=12.567037743345956\nPa,channel=4,device_id=c1746d34-2c76-4afd-8428-566e9e6025ba,measure=vapor_pressure_deficit value=1152.1171054572437'

I have installed influxdb 2.X, as shown below:

To correct this issue, I have tried the following:

  • confirmed that I2C is activated;
  • deactivating the controller and then activating it;
  • rebooting the system;
  • deleting the conditional controller and re-installing it; and
  • deleting the conditional controller, rebooting and reinstalling the conditional controller.

I have also tried reinstalling latest raspberry pi os and latest mycodo versions and then adding the controller, but the issue still occurs.

Does any one have any suggestions to fix this issue?

Have you tried going to Settings (gear icon) Diagnostics and clicking Recreate InfluxDB 2.x Database ?

Yes. Thank you. This worked!

However, I now have the following DEBUG notation in the Mycodo logs:

2023-12-30 17:08:55,160 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 744.3283081054688, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 8, 55, 133980)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 22.11871337890625, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 8, 55, 134006)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 51.5045166015625, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 8, 55, 134019)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 11.65216067310867, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 8, 55, 134078)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1291.2153936254801, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 8, 55, 134116)}}
2023-12-30 17:09:10,140 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 745.8746337890625, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 10, 116603)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 22.105361938476562, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 10, 116631)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 51.42822265625, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 10, 116639)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 11.617384519343586, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 10, 116715)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1292.195696553343, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 10, 116754)}}
2023-12-30 17:09:25,135 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 747.03759765625, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 25, 122227)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 22.148086547851562, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 25, 122240)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 51.6326904296875, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 25, 122246)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 11.716935837412922, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 25, 122273)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1290.1079194215188, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 25, 122293)}}
2023-12-30 17:09:40,155 - DEBUG - mycodo.controllers.controller_input_c1746d34 - Adding measurements to InfluxDB with ID c1746d34-2c76-4afd-8428-566e9e6025ba: {0: {'measurement': 'co2', 'unit': 'ppm', 'value': 746.522705078125, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 40, 114394)}, 1: {'measurement': 'temperature', 'unit': 'C', 'value': 22.134735107421875, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 40, 114407)}, 2: {'measurement': 'humidity', 'unit': 'percent', 'value': 51.556396484375, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 40, 114413)}, 3: {'measurement': 'dewpoint', 'unit': 'C', 'value': 11.682200541725628, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 40, 114438)}, 4: {'measurement': 'vapor_pressure_deficit', 'unit': 'Pa', 'value': 1291.0929933688951, 'timestamp_utc': datetime.datetime(2023, 12, 30, 6, 9, 40, 114457)}}

I am unsure if this DEBUG notation mean that the values are successfully committed to the database.

I have googled the issue, but I cannot figure out how to correct this issue.

Do you have the “Log Level: Debug Interface” box checked in the setup for that input (c1746d34)… guessing that’s your SCD30 sensor?

No the Log Level: Debug and the Enable Daemon Debug Logging / Enable Daemon debug logging for diagnosing issues are both unchecked.

That is what is confusing me!

I am unsure what the issue was, but I have rebooted the system, and the issue is gone.

Thanks for the earlier fix.