1+ {
2+ "name" : " laird_rs1xx_ext_temp_rtd_sensor" ,
3+ "version" : " 1.0.0" ,
4+ "description" : " The Laird Sentrius™ RS1xx Ext Temp RTD has an external temperature sensor probe making it a perfect fit for monitoring low and slow cooking temps mounted inside a smoker. It transmits data over LoRaWAN® and Bluetooth Low Energy (BLE). The robust IP65 sens" ,
5+ "author" : " Thinger.io" ,
6+ "license" : " MIT" ,
7+ "repository" : {
8+ "type" : " git" ,
9+ "url" : " https://github.com/thinger-io/plugins.git" ,
10+ "directory" : " laird-rs1xx-ext-temp-rtd-sensor"
11+ },
12+ "metadata" : {
13+ "name" : " Laird RS1XX-EXT-TEMP-RTD-SENSOR" ,
14+ "description" : " The Laird Sentrius™ RS1xx Ext Temp RTD has an external temperature sensor probe making it a perfect fit for monitoring low and slow cooking temps mounted inside a smoker. It transmits data over LoRaWAN® and Bluetooth Low Energy (BLE). The robust IP65 sens" ,
15+ "image" : " assets/rs1xx-ext-sensor.jpg" ,
16+ "category" : " devices" ,
17+ "vendor" : " laird"
18+ },
19+ "resources" : {
20+ "products" : [
21+ {
22+ "description" : " The Laird Sentrius™ RS1xx Ext Temp RTD has an external temperature sensor probe making it a perfect fit for monitoring low and slow cooking temps mounted inside a smoker. It transmits data over LoRaWAN® and Bluetooth Low Energy (BLE). The robust IP65 sens" ,
23+ "enabled" : true ,
24+ "name" : " Laird RS1XX-EXT-TEMP-RTD-SENSOR" ,
25+ "product" : " laird_rs1xx_ext_temp_rtd_sensor" ,
26+ "profile" : {
27+ "api" : {
28+ "downlink" : {
29+ "enabled" : true ,
30+ "handle_connectivity" : false ,
31+ "request" : {
32+ "data" : {
33+ "path" : " /downlink" ,
34+ "payload" : " {\n \" data\" : \" {{payload.data=\"\" }}\" ,\n \" port\" : {{payload.port=85}},\n \" priority\" : {{payload.priority=3}},\n \" confirmed\" : {{payload.confirmed=false}},\n \" uplink\" : {{property.uplink}} \n }" ,
35+ "payload_function" : " " ,
36+ "payload_type" : " " ,
37+ "plugin" : " {{property.uplink.source}}" ,
38+ "target" : " plugin_endpoint"
39+ }
40+ }
41+ },
42+ "uplink" : {
43+ "device_id_resolver" : " getId" ,
44+ "enabled" : true ,
45+ "handle_connectivity" : true ,
46+ "request" : {
47+ "data" : {
48+ "payload" : " {{payload}}" ,
49+ "payload_function" : " " ,
50+ "payload_type" : " source_payload" ,
51+ "resource_stream" : " uplink" ,
52+ "target" : " resource_stream"
53+ }
54+ }
55+ }
56+ },
57+ "autoprovisions" : {
58+ "device_autoprovisioning" : {
59+ "config" : {
60+ "mode" : " pattern" ,
61+ "pattern" : " laird-rs1xx.*"
62+ },
63+ "enabled" : true
64+ }
65+ },
66+ "buckets" : {
67+ "device_data" : {
68+ "backend" : " mongodb" ,
69+ "data" : {
70+ "payload" : " {{payload}}" ,
71+ "payload_function" : " decodeThingerUplink" ,
72+ "payload_type" : " source_payload" ,
73+ "resource" : " uplink" ,
74+ "source" : " resource" ,
75+ "update" : " events"
76+ },
77+ "enabled" : true ,
78+ "retention" : {
79+ "period" : 3 ,
80+ "unit" : " months"
81+ },
82+ "tags" : [
83+ " telemetry" ,
84+ " temperature"
85+ ]
86+ }
87+ },
88+ "properties" : {
89+ "uplink" : {
90+ "data" : {
91+ "payload" : " {{payload}}" ,
92+ "payload_function" : " " ,
93+ "payload_type" : " source_payload" ,
94+ "resource" : " uplink" ,
95+ "source" : " resource" ,
96+ "update" : " events"
97+ },
98+ "default" : {
99+ "source" : " value"
100+ },
101+ "enabled" : true
102+ }
103+ }
104+ },
105+ "_resources" : {
106+ "properties" : [
107+ {
108+ "property" : " dashboard" ,
109+ "value" : {
110+ "tabs" : [
111+ {
112+ "name" : " Main" ,
113+ "widgets" : [
114+ {
115+ "layout" : {
116+ "col" : 3 ,
117+ "row" : 0 ,
118+ "sizeX" : 1 ,
119+ "sizeY" : 6
120+ },
121+ "panel" : {
122+ "color" : " #ffffff" ,
123+ "currentColor" : " #ffffff" ,
124+ "showOffline" : {
125+ "type" : " none"
126+ },
127+ "title" : " Current Temperature"
128+ },
129+ "properties" : {
130+ "color" : " #ff0000" ,
131+ "max" : 150 ,
132+ "min" : -40 ,
133+ "unit" : " °C"
134+ },
135+ "sources" : [
136+ {
137+ "bucket" : {
138+ "backend" : " mongodb" ,
139+ "id" : " device_data" ,
140+ "mapping" : " temperature" ,
141+ "tags" : {
142+ "device" : [],
143+ "group" : []
144+ }
145+ },
146+ "color" : " #e74c3c" ,
147+ "name" : " Temperature" ,
148+ "source" : " bucket" ,
149+ "timespan" : {
150+ "mode" : " latest"
151+ }
152+ }
153+ ],
154+ "type" : " donutchart"
155+ },
156+ {
157+ "layout" : {
158+ "col" : 0 ,
159+ "row" : 0 ,
160+ "sizeX" : 3 ,
161+ "sizeY" : 12
162+ },
163+ "panel" : {
164+ "color" : " #ffffff" ,
165+ "currentColor" : " #ffffff" ,
166+ "showOffline" : {
167+ "type" : " none"
168+ },
169+ "title" : " Temperature History"
170+ },
171+ "properties" : {
172+ "axis" : true ,
173+ "fill" : false ,
174+ "legend" : true ,
175+ "multiple_axes" : false
176+ },
177+ "sources" : [
178+ {
179+ "bucket" : {
180+ "backend" : " mongodb" ,
181+ "id" : " device_data" ,
182+ "mapping" : " temperature" ,
183+ "tags" : {
184+ "device" : [],
185+ "group" : []
186+ }
187+ },
188+ "color" : " #e74c3c" ,
189+ "name" : " Temperature" ,
190+ "source" : " bucket" ,
191+ "timespan" : {
192+ "magnitude" : " hour" ,
193+ "mode" : " relative" ,
194+ "period" : " latest" ,
195+ "value" : 24
196+ }
197+ }
198+ ],
199+ "type" : " chart"
200+ },
201+ {
202+ "layout" : {
203+ "col" : 4 ,
204+ "row" : 0 ,
205+ "sizeX" : 2 ,
206+ "sizeY" : 12
207+ },
208+ "panel" : {
209+ "color" : " #ffffff" ,
210+ "currentColor" : " #ffffff" ,
211+ "showOffline" : {
212+ "type" : " none"
213+ },
214+ "title" : " Recent Measurements"
215+ },
216+ "properties" : {
217+ "source" : " code" ,
218+ "template" : " <div style=\" width:100%; height:100%; overflow-y:auto\" >\n <table class=\" table table-striped table-condensed\" >\n <thead>\n <tr>\n <th>Date</th>\n <th>Temperature (°C)</th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat=\" entry in value\" >\n <td>{{ entry.ts | date:'medium' }}</td>\n <td>{{ entry.temperature || '—' }}</td>\n </tr>\n </tbody>\n </table>\n </div>\n "
219+ },
220+ "sources" : [
221+ {
222+ "aggregation" : {},
223+ "bucket" : {
224+ "backend" : " mongodb" ,
225+ "id" : " device_data" ,
226+ "mapping" : " ts" ,
227+ "tags" : {
228+ "device" : [],
229+ "group" : []
230+ }
231+ },
232+ "color" : " #1abc9c" ,
233+ "name" : " timestamp" ,
234+ "source" : " bucket" ,
235+ "timespan" : {
236+ "magnitude" : " hour" ,
237+ "mode" : " relative" ,
238+ "period" : " latest" ,
239+ "value" : 24
240+ }
241+ },
242+ {
243+ "aggregation" : {},
244+ "bucket" : {
245+ "backend" : " mongodb" ,
246+ "id" : " device_data" ,
247+ "mapping" : " temperature" ,
248+ "tags" : {
249+ "device" : [],
250+ "group" : []
251+ }
252+ },
253+ "color" : " #e74c3c" ,
254+ "name" : " temperature" ,
255+ "source" : " bucket" ,
256+ "timespan" : {
257+ "magnitude" : " hour" ,
258+ "mode" : " relative" ,
259+ "period" : " latest" ,
260+ "value" : 24
261+ }
262+ }
263+ ],
264+ "type" : " html_time"
265+ },
266+ {
267+ "layout" : {
268+ "col" : 3 ,
269+ "row" : 6 ,
270+ "sizeX" : 1 ,
271+ "sizeY" : 6
272+ },
273+ "panel" : {
274+ "color" : " #ffffff" ,
275+ "currentColor" : " #ffffff" ,
276+ "showOffline" : {
277+ "type" : " none"
278+ },
279+ "title" : " Battery Voltage"
280+ },
281+ "properties" : {
282+ "color" : " #f39c12" ,
283+ "max" : 4 ,
284+ "min" : 2.5 ,
285+ "unit" : " V"
286+ },
287+ "sources" : [
288+ {
289+ "bucket" : {
290+ "backend" : " mongodb" ,
291+ "id" : " device_data" ,
292+ "mapping" : " battery" ,
293+ "tags" : {
294+ "device" : [],
295+ "group" : []
296+ }
297+ },
298+ "color" : " #f39c12" ,
299+ "name" : " Battery" ,
300+ "source" : " bucket" ,
301+ "timespan" : {
302+ "mode" : " latest"
303+ }
304+ }
305+ ],
306+ "type" : " donutchart"
307+ }
308+ ]
309+ }
310+ ]
311+ }
312+ }
313+ ]
314+ }
315+ }
316+ ]
317+ }
318+ }
0 commit comments