>From the log extract, this what I see as the payload
{
"applicationID": "18",
"applicationName": "CO2app",
"deviceName": "CO2device",
"devEUI": "2cf7f12122500013",
"txInfo": {
"frequency": 903900000,
"dr": 0
},
"adr": true,
"fCnt": 220,
"fPort": 2,
"data": "AQQQaJsGAAqz",
"object": {
"err": 0,
"messages": [
{
"CO2_Value_PPM": 433,
"measurementId": 4100,
"type": "report_telemetry"
}
],
"payload": "010410689B06000AB3",
"valid": true
}
}
On Sunday, 28 November 2021 at 14:07:59 UTC-5 vince wrote:
> Agree. Pre-process it to a format that works with weewx.
>
> Again, can you give us a vanilla "mosquitto_sub -t whatever -h the_host"
> output so we can see what you have a little more clearly ? Piping it to " |
> jq . " sometimes helps show the nesting and structure a little better
> for the eyes.
>
> On Sunday, November 28, 2021 at 10:51:17 AM UTC-8 [email protected]
> wrote:
>
>> Since you are using Node Red, a possible solution is to use a Change Node
>> and delete the payload that you don't want to include in weewx.
>>
>> On Sunday, November 28, 2021 at 1:41:56 PM UTC-5 [email protected] wrote:
>>
>>> I looked more closely at the payload format and I don't think that
>>> format is currently supported. specifically the 'nested array'..
>>>
>>> "object":{"err":0,"messages":[{"CO2_Value_PPM":433,"measurementId":4100,"type":"report_telemetry"}]
>>> Busy time of the year, so not sure when I'll have time to delve into a
>>> solution.
>>> rich
>>> On Sunday, 28 November 2021 at 12:22:22 UTC-5 [email protected] wrote:
>>>
>>>>
>>>> Bob,
>>>> Since you have a lot of fields that you want to ignore, try setting the
>>>> ignore flag to true at the 'topic' level. Also I don’t think you want to
>>>> set contains_total. So you would end up with something like this,
>>>> [[topics]]
>>>> [[[application/18/device/2cf7f12122500013/rx]]]
>>>> ignore = true
>>>> [[[[CO2_Value_PPM]]]]
>>>> name = co2
>>>> ignore = false
>>>>
>>>> Since the data is published so infrequently, once you get the basic
>>>> configuration working, you might want to look into the expires_after
>>>> option. This will cache the value between publications. For additional
>>>> information see,
>>>> https://github.com/bellrichm/WeeWX-MQTTSubscribe/wiki/Configuring-additional-options#expires_after
>>>>
>>>> rich
>>>>
>>>> On Sunday, 28 November 2021 at 11:21:43 UTC-5 [email protected] wrote:
>>>>
>>>>> Thanks for coming back so soon with help Storm and Vince.
>>>>> I am attaching three things in a .txt file rather than pasting in as
>>>>> the format seems messy and I'm not sure how to make it easier to read.
>>>>>
>>>>> 1. My modified section of weewx.conf . Among other things, there
>>>>> seems to be a problem with float.
>>>>>
>>>>> 2. The data sent from the LoRa server when I subscribe
>>>>> to applications/18/devices/2cf7f12122500013/rx (using MQTT-explorer).
>>>>> Lots
>>>>> of unneeded things but it contains the CO2_Value_PPM data.
>>>>>
>>>>> 3. A listing of weewx.log in debug mode showing the problems (I
>>>>> hope). The data seems to be getting there but is not being parsed out for
>>>>> what I need.
>>>>>
>>>>> Hopefully this will give you an idea of what's going on. Thanks again
>>>>> for your help.
>>>>> Bob
>>>>>
>>>>> On Saturday, November 27, 2021 at 5:36:51 PM UTC-5 vince wrote:
>>>>>
>>>>>> My example:
>>>>>>
>>>>>> [MQTTSubscribeService]
>>>>>> enable = True
>>>>>> host = 192.168.1.171
>>>>>> port = 1883
>>>>>> keepalive = 60
>>>>>> username = None
>>>>>> password = None
>>>>>> binding = loop
>>>>>> [[message_callback]]
>>>>>> type = json
>>>>>> [[topics]]
>>>>>> unit_system = US
>>>>>> #
>>>>>> #--- these are emitted every 5 minutes ---
>>>>>> # mosquitto_sub -t BaseballRoomConditions -h nuc2
>>>>>> # {"dateTime": 1621715702, "extraTemp1": 63.16,
>>>>>> "extraTemp2": 63.5, "pi": 100.28}
>>>>>> #
>>>>>> [[[BaseballRoomConditions]]] <=== the topic to subscribe to
>>>>>> [[[[dateTime]]]] <=== the element in that topic
>>>>>> ignore = True <=== optionally ignore this
>>>>>> item within the topic
>>>>>> [[[[extraTemp1]]]]
>>>>>> name = extraTemp1 <=== db element to map the
>>>>>> item to
>>>>>> units = degree_F <=== its units
>>>>>> [[[[extraTemp2]]]]
>>>>>> name = extraTemp2
>>>>>> units = degree_F
>>>>>> [[[[pi]]]]
>>>>>> ignore = True
>>>>>>
>>>>>>
>>>>>> On Saturday, November 27, 2021 at 2:26:46 PM UTC-8 [email protected]
>>>>>> wrote:
>>>>>>
>>>>>>> I believe you need to add the topic you subscribing to in
>>>>>>> [[[first/topic]]].
>>>>>>>
>>>>>>> Example:
>>>>>>>
>>>>>>>
>>>>>>> ##########################################################################################
>>>>>>> # Acurite-5n1 Sensors
>>>>>>> # SDR # 1
>>>>>>> # 433 MHz
>>>>>>>
>>>>>>> ##########################################################################################
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> [[[Acurite-Tower/8785/]]]
>>>>>>>
>>>>>>> [[[[temperature_F]]]]
>>>>>>> name = extraTemp7
>>>>>>> ignore = False
>>>>>>> contains_total = False
>>>>>>> conversion_type = float
>>>>>>> units = degree_F
>>>>>>>
>>>>>>> On Saturday, November 27, 2021 at 5:15:24 PM UTC-5 [email protected]
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>> I'm running a RAK7244 LoRaWAN server/gateway on a local network to
>>>>>>>> which my weewx server is connected. Weeex is the latest stable on
>>>>>>>> Ubuntu
>>>>>>>> with extended db.
>>>>>>>>
>>>>>>>> A CO2 sensor is sending data to the LoRa server. I have node-red on
>>>>>>>> my weewx server with a flow connecting to the RAK7244. I want to have
>>>>>>>> the
>>>>>>>> CO2 data put into the co2 slot that is available on the weewx db.
>>>>>>>>
>>>>>>>> I have installed the weewx extension Mosquitto-subscribe and
>>>>>>>> attempted to configure weewx.conf as:
>>>>>>>> #################################################
>>>>>>>> # Options for 'MQTTSubscribeService'
>>>>>>>> [MQTTSubscribeService]
>>>>>>>> # This section is for the MQTTSubscribe service.
>>>>>>>> # Turn the service on and off.
>>>>>>>> # Default is: true
>>>>>>>> # Only used by the service.
>>>>>>>> enable = true # false
>>>>>>>>
>>>>>>>> # The MQTT server.
>>>>>>>> # Default is localhost.
>>>>>>>> host = localhost #192.168.1.10 #localhost
>>>>>>>>
>>>>>>>> # The port to connect to.
>>>>>>>> # Default is 1883.
>>>>>>>> port = 1883
>>>>>>>>
>>>>>>>> # Maximum period in seconds allowed between communications with
>>>>>>>> the broker.
>>>>>>>> # Default is 60.
>>>>>>>> keepalive = 60
>>>>>>>>
>>>>>>>> # username for broker authentication.
>>>>>>>> # Default is None.
>>>>>>>> username = None
>>>>>>>>
>>>>>>>> # password for broker authentication.
>>>>>>>> # Default is None.
>>>>>>>> password = None
>>>>>>>>
>>>>>>>> # The binding, loop or archive.
>>>>>>>> # Default is: loop
>>>>>>>> # Only used by the service.
>>>>>>>> binding = loop
>>>>>>>>
>>>>>>>> # The message handler to use
>>>>>>>> [[message_callback]]
>>>>>>>> # The format of the MQTT payload.
>>>>>>>> # Currently support: individual, json, keyword
>>>>>>>> # Must be specified.
>>>>>>>> type = json #REPLACE_ME
>>>>>>>>
>>>>>>>> # The application/18/device/2cf7f12122500013/rx topics to
>>>>>>>> subscribe to.
>>>>>>>> [[topics]]
>>>>>>>> # Units for MQTT payloads without unit value.
>>>>>>>> # Valid values: US, METRIC, METRICWX
>>>>>>>> # Default is: US
>>>>>>>> unit_system = US
>>>>>>>>
>>>>>>>> [[[first/topic]]]
>>>>>>>>
>>>>>>>> #value sent from RAK7244
>>>>>>>>
>>>>>>>> [[[[CO2_Value_PPM]]]]
>>>>>>>> #weewx db name
>>>>>>>> name = co2
>>>>>>>> ignore = false
>>>>>>>> contains total = True
>>>>>>>> conversion type = float
>>>>>>>>
>>>>>>>> #[[[SECOND/REPLACE_ME]]]
>>>>>>>> ################################################
>>>>>>>>
>>>>>>>> The message (data) every 60 minutes coming from the node-red
>>>>>>>> function is:
>>>>>>>>
>>>>>>>> {"CO2_Value_PPM":401}
>>>>>>>>
>>>>>>>> I may have too many things going here but, as I'm not a programmer,
>>>>>>>> I'm stuck trying to figure out the problem. The node-red flow is
>>>>>>>> connected
>>>>>>>> on both ends (RAK7244-->weewx) but I don't see any data reaching the
>>>>>>>> db.
>>>>>>>>
>>>>>>>> Thanks in advance if anyone can help on this.
>>>>>>>> Cheers'
>>>>>>>> Bob
>>>>>>>>
>>>>>>>>
--
You received this message because you are subscribed to the Google Groups
"weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/weewx-user/550aa65b-9a54-4431-a5e9-d5e37ad1a601n%40googlegroups.com.