1# Copyright (c) 2017 Linaro Limited
2# SPDX-License-Identifier: Apache-2.0
3
4menuconfig LWM2M_IPSO_SUPPORT
5	bool "IPSO Alliance Smart Object Support"
6	help
7	  This option adds general support for IPSO objects
8
9if LWM2M_IPSO_SUPPORT
10
11config LWM2M_IPSO_TEMP_SENSOR
12	bool "IPSO Temperature Sensor Support"
13	help
14	  This IPSO object should be used with a temperature sensor to
15	  report a temperature measurement. It also provides resources for
16	  minimum/maximum measured values and the minimum/maximum range
17	  that can be measured by the temperature sensor.
18
19config LWM2M_IPSO_TEMP_SENSOR_INSTANCE_COUNT
20	int "Maximum # of IPSO Temperature Sensor object instances"
21	default 1
22	depends on LWM2M_IPSO_TEMP_SENSOR
23	help
24	  This setting establishes the total count of IPSO Temperature
25	  Sensor instances available to the LWM2M client.
26
27choice LWM2M_IPSO_TEMP_SENSOR_VERSION
28	prompt "IPSO Temperature object version"
29	depends on LWM2M_IPSO_TEMP_SENSOR
30	default LWM2M_IPSO_TEMP_SENSOR_VERSION_1_0
31	help
32	  Select which version of the IPSO Temperature object should be used.
33
34config LWM2M_IPSO_TEMP_SENSOR_VERSION_1_0
35	bool "IPSO Temperature object version 1.0"
36
37config LWM2M_IPSO_TEMP_SENSOR_VERSION_1_1
38	bool "IPSO Temperature object version 1.1"
39
40endchoice
41
42config LWM2M_IPSO_GENERIC_SENSOR
43	bool "IPSO Generic Sensor Support"
44	help
45	  This IPSO object can be used to prototype a sensor.
46
47if LWM2M_IPSO_GENERIC_SENSOR
48
49config LWM2M_IPSO_GENERIC_SENSOR_INSTANCE_COUNT
50	int "Maximum # of IPSO Generic Sensor object instances"
51	default 1
52	help
53	  This setting establishes the total count of IPSO Generic
54	  Sensor instances available to the LWM2M client.
55
56choice LWM2M_IPSO_GENERIC_SENSOR_VERSION
57	prompt "IPSO Generic Sensor object version"
58	default LWM2M_IPSO_GENERIC_SENSOR_VERSION_1_0
59	help
60	  Select which version of the IPSO Generic Sensor object should be used.
61
62config LWM2M_IPSO_GENERIC_SENSOR_VERSION_1_0
63	bool "IPSO Generic Sensor object version 1.0"
64
65config LWM2M_IPSO_GENERIC_SENSOR_VERSION_1_1
66	bool "IPSO Generic Sensor object version 1.1"
67
68endchoice
69
70config LWM2M_IPSO_GENERIC_SENSOR_NAME
71	string "Name that will show up in debug output when object is created"
72	default "Generic"
73
74config LWM2M_IPSO_GENERIC_SENSOR_TYPE
75	string "Sensor type"
76	default "Generic sensor"
77	help
78	  The type of the sensor (for instance PIR type).
79
80endif # LWM2M_IPSO_GENERIC_SENSOR
81
82config LWM2M_IPSO_HUMIDITY_SENSOR
83	bool "IPSO Humidity Sensor Support"
84	help
85	  This IPSO object can be used to prototype a sensor.
86
87if LWM2M_IPSO_HUMIDITY_SENSOR
88
89config LWM2M_IPSO_HUMIDITY_SENSOR_INSTANCE_COUNT
90	int "Maximum # of IPSO Humidity Sensor object instances"
91	default 1
92	help
93	  This setting establishes the total count of IPSO Humidity
94	  Sensor instances available to the LWM2M client.
95
96choice LWM2M_IPSO_HUMIDITY_SENSOR_VERSION
97	prompt "IPSO Humidity Sensor object version"
98	default LWM2M_IPSO_HUMIDITY_SENSOR_VERSION_1_0
99	help
100	  Select which version of the IPSO Humidity Sensor object should be
101	  used.
102
103config LWM2M_IPSO_HUMIDITY_SENSOR_VERSION_1_0
104	bool "IPSO Humidity Sensor object version 1.0"
105
106config LWM2M_IPSO_HUMIDITY_SENSOR_VERSION_1_1
107	bool "IPSO Humidity Sensor object version 1.1"
108
109endchoice
110
111endif # LWM2M_IPSO_HUMIDITY_SENSOR
112
113config LWM2M_IPSO_PRESSURE_SENSOR
114	bool "IPSO Pressure Sensor Support"
115	help
116	  This IPSO object can be used to prototype a sensor.
117
118if LWM2M_IPSO_PRESSURE_SENSOR
119
120config LWM2M_IPSO_PRESSURE_SENSOR_INSTANCE_COUNT
121	int "Maximum # of IPSO Pressure Sensor object instances"
122	default 1
123	help
124	  This setting establishes the total count of IPSO Pressure
125	  Sensor instances available to the LWM2M client.
126
127choice LWM2M_IPSO_PRESSURE_SENSOR_VERSION
128	prompt "IPSO Pressure Sensor object version"
129	default LWM2M_IPSO_PRESSURE_SENSOR_VERSION_1_0
130	help
131	  Select which version of the IPSO Pressure Sensor object should be
132	  used.
133
134config LWM2M_IPSO_PRESSURE_SENSOR_VERSION_1_0
135	bool "IPSO Pressure Sensor object version 1.0"
136
137config LWM2M_IPSO_PRESSURE_SENSOR_VERSION_1_1
138	bool "IPSO Pressure Sensor object version 1.1"
139
140endchoice
141
142endif # LWM2M_IPSO_PRESSURE_SENSOR
143
144config LWM2M_IPSO_LIGHT_CONTROL
145	bool "IPSO Light Control Support"
146	help
147	  This Object is used to control a light source, such as a LED or other
148	  light. It allows a light to be turned on or off and its dimmer
149	  setting to be controlled as a % between 0 and 100. An optional color
150	  setting enables a string to be used to indicate the desired color.
151
152config LWM2M_IPSO_LIGHT_CONTROL_INSTANCE_COUNT
153	int "Maximum # of IPSO Light Control object instances"
154	default 1
155	depends on LWM2M_IPSO_LIGHT_CONTROL
156	help
157	  This setting establishes the total count of IPSO Light Control
158	  instances available to the LWM2M client.
159
160config LWM2M_IPSO_ACCELEROMETER
161	bool "IPSO Accelerometer Support"
162	help
163	  This Object is used to used to represent a 1-3 axis accelerometer.
164
165config LWM2M_IPSO_ACCELEROMETER_INSTANCE_COUNT
166	int "Maximum # of IPSO Accelerometer object instances"
167	default 1
168	depends on LWM2M_IPSO_ACCELEROMETER
169	help
170	  This setting establishes the total count of IPSO Accelerometer
171	  instances available to the LWM2M client.
172
173choice LWM2M_IPSO_ACCELEROMETER_VERSION
174	prompt "IPSO Accelerometer object version"
175	depends on LWM2M_IPSO_ACCELEROMETER
176	default LWM2M_IPSO_ACCELEROMETER_VERSION_1_0
177	help
178	  Select which version of the IPSO Accelerometer object should be used.
179
180config LWM2M_IPSO_ACCELEROMETER_VERSION_1_0
181	bool "IPSO Accelerometer object version 1.0"
182
183config LWM2M_IPSO_ACCELEROMETER_VERSION_1_1
184	bool "IPSO Accelerometer object version 1.1"
185
186endchoice
187
188config LWM2M_IPSO_BUZZER
189	bool "IPSO Buzzer Support"
190	help
191	  This Object is used to actuate an audible alarm such as a buzzer,
192	  beeper, or vibration alarm.
193
194config LWM2M_IPSO_BUZZER_INSTANCE_COUNT
195	int "Maximum # of IPSO Buzzer instances"
196	default 1
197	depends on LWM2M_IPSO_BUZZER
198	help
199	  This setting establishes the total count of IPSO Buzzer
200	  instances available to the LWM2M client.
201
202choice LWM2M_IPSO_BUZZER_VERSION
203	prompt "IPSO Buzzer object version"
204	depends on LWM2M_IPSO_BUZZER
205	default LWM2M_IPSO_BUZZER_VERSION_1_0
206	help
207	  Select which version of the IPSO Buzzer object should be used.
208
209config LWM2M_IPSO_BUZZER_VERSION_1_0
210	bool "IPSO Buzzer object version 1.0"
211
212config LWM2M_IPSO_BUZZER_VERSION_1_1
213	bool "IPSO Buzzer object version 1.1"
214
215endchoice
216
217config LWM2M_IPSO_TIMER
218	bool "IPSO Timer Support"
219	help
220	  This Object is used to time events / actions
221
222config LWM2M_IPSO_TIMER_INSTANCE_COUNT
223	int "Maximum # of IPSO Timer object instances"
224	default 1
225	depends on LWM2M_IPSO_TIMER
226	help
227	  This setting establishes the total count of IPSO Timer
228	  instances available to the LWM2M client.
229
230config LWM2M_IPSO_ONOFF_SWITCH
231	bool "IPSO On/Off Switch Support"
232	help
233	  This object is used with an On/Off switch to report it's state.
234
235config LWM2M_IPSO_ONOFF_SWITCH_INSTANCE_COUNT
236	int "Maximum # of IPSO On/Off Switch object instances"
237	default 1
238	depends on LWM2M_IPSO_ONOFF_SWITCH
239	help
240	  This setting establishes the total count of IPSO On/Off Switch
241	  instances available to the LWM2M client.
242
243choice LWM2M_IPSO_ONOFF_SWITCH_VERSION
244	prompt "IPSO On/Off Switch object version"
245	depends on LWM2M_IPSO_ONOFF_SWITCH
246	default LWM2M_IPSO_ONOFF_SWITCH_VERSION_1_0
247	help
248	  Select which version of the IPSO On/Off Switch object should be used.
249
250config LWM2M_IPSO_ONOFF_SWITCH_VERSION_1_0
251	bool "IPSO On/Off Switch object version 1.0"
252
253config LWM2M_IPSO_ONOFF_SWITCH_VERSION_1_1
254	bool "IPSO On/Off Switch object version 1.1"
255
256endchoice
257
258config LWM2M_IPSO_PUSH_BUTTON
259	bool "IPSO Push Button Support"
260	help
261	  This Object is used to report the state of a momentary action push
262	  button control and to count the number of times the control has
263	  been operated since the last observation.
264
265config LWM2M_IPSO_PUSH_BUTTON_INSTANCE_COUNT
266	int "Maximum # of IPSO On/Off Switch object instances"
267	default 1
268	depends on LWM2M_IPSO_PUSH_BUTTON
269	help
270	  This setting establishes the total count of IPSO Push Button
271	  instances available to the LWM2M client.
272
273choice LWM2M_IPSO_PUSH_BUTTON_VERSION
274	prompt "IPSO Push Button object version"
275	depends on LWM2M_IPSO_PUSH_BUTTON
276	default LWM2M_IPSO_PUSH_BUTTON_VERSION_1_0
277	help
278	  Select which version of the IPSO Push Button object should be used.
279
280config LWM2M_IPSO_PUSH_BUTTON_VERSION_1_0
281	bool "IPSO Push Button object version 1.0"
282
283config LWM2M_IPSO_PUSH_BUTTON_VERSION_1_1
284	bool "IPSO Push Button object version 1.1"
285
286endchoice
287
288config LWM2M_IPSO_CURRENT_SENSOR
289	bool "IPSO Current Sensor Support"
290	help
291	  This IPSO object should be used with a current sensor to
292	  report a current measurement. It also provides resources for
293	  minimum/maximum measured values and the minimum/maximum range
294	  that can be measured by the sensor.
295
296config LWM2M_IPSO_CURRENT_SENSOR_INSTANCE_COUNT
297	int "Maximum # of IPSO Current Sensor object instances"
298	default 1
299	depends on LWM2M_IPSO_CURRENT_SENSOR
300	help
301	  This setting establishes the total count of IPSO Current
302	  Sensor instances available to the LWM2M client.
303
304choice LWM2M_IPSO_CURRENT_SENSOR_VERSION
305	prompt "IPSO Current object version"
306	default LWM2M_IPSO_CURRENT_SENSOR_VERSION_1_0
307	depends on LWM2M_IPSO_CURRENT_SENSOR
308	help
309	  Select which version of the IPSO Current object should be used.
310
311config LWM2M_IPSO_CURRENT_SENSOR_VERSION_1_0
312	bool "IPSO Current object version 1.0"
313
314config LWM2M_IPSO_CURRENT_SENSOR_VERSION_1_1
315	bool "IPSO Current object version 1.1"
316	help
317	  Adds timestamp and measurement quality
318
319endchoice
320
321config LWM2M_IPSO_VOLTAGE_SENSOR
322	bool "IPSO Voltage Sensor Support"
323	help
324	  This IPSO object should be used with a voltage sensor to
325	  report a voltage measurement. It also provides resources for
326	  minimum/maximum measured values and the minimum/maximum range
327	  that can be measured by the sensor.
328
329config LWM2M_IPSO_VOLTAGE_SENSOR_INSTANCE_COUNT
330	int "Maximum # of IPSO Voltage Sensor object instances"
331	default 1
332	depends on LWM2M_IPSO_VOLTAGE_SENSOR
333	help
334	  This setting establishes the total count of IPSO Voltage
335	  Sensor instances available to the LWM2M client.
336
337choice LWM2M_IPSO_VOLTAGE_SENSOR_VERSION
338	prompt "IPSO Voltage object version"
339	default LWM2M_IPSO_VOLTAGE_SENSOR_VERSION_1_0
340	depends on LWM2M_IPSO_VOLTAGE_SENSOR
341	help
342	  Select which version of the IPSO Voltage object should be used.
343
344config LWM2M_IPSO_VOLTAGE_SENSOR_VERSION_1_0
345	bool "IPSO Voltage object version 1.0"
346
347config LWM2M_IPSO_VOLTAGE_SENSOR_VERSION_1_1
348	bool "IPSO Voltage object version 1.1"
349	help
350	  Adds timestamp and measurement quality
351
352endchoice
353
354config LWM2M_IPSO_FILLING_SENSOR
355	bool "IPSO Filling sensor Support"
356	help
357	  This IPSO object can be used with an ultrasonic sensor to
358	  report how full a container is.
359
360config LWM2M_IPSO_FILLING_SENSOR_INSTANCE_COUNT
361	int "Maximum # of IPSO filling sensor object instances"
362	default 1
363	depends on LWM2M_IPSO_FILLING_SENSOR
364	help
365	  This setting establishes the total count of IPSO filling
366	  sensor instances available to the LwM2M client.
367
368endif # LWM2M_LWM2M_IPSO_SUPPORT
369