source: uKadecot/trunk/tools/EcnlControllerUI/EcnlCtrlUI/devices/PropertyList0006.json@ 101

Last change on this file since 101 was 101, checked in by coas-nagasima, 8 years ago

TOPPERS/uKadecotのソースコードを追加

File size: 19.0 KB
Line 
1[
2 {
3 "access":[
4 "RULE_SET",
5 "RULE_GET",
6 "ANNOUNCE"
7 ],
8 "arrayCount":0,
9 "description":"動作状æ…
10‹",
11 "fields":[
12
13 ],
14 "identifer":"OperationStatus",
15 "initialValue":null,
16 "isArray":false,
17 "primitive":true,
18 "propertyCode":128,
19 "required":[
20 "RULE_GET"
21 ],
22 "size":1,
23 "type":"uint8_t",
24 "unitDescription":null,
25 "valueDescription":"0x30=ON,0x31=OFF"
26 },
27 {
28 "access":[
29 "RULE_SET",
30 "RULE_GET"
31 ],
32 "arrayCount":0,
33 "description":"検知閾値レベル設定",
34 "fields":[
35
36 ],
37 "identifer":"DetectionThresholdLevel",
38 "initialValue":null,
39 "isArray":false,
40 "primitive":true,
41 "propertyCode":176,
42 "required":[
43 "NONE"
44 ],
45 "size":1,
46 "type":"uint8_t",
47 "unitDescription":null,
48 "valueDescription":"0x31~0x38"
49 },
50 {
51 "access":[
52 "RULE_GET",
53 "ANNOUNCE"
54 ],
55 "arrayCount":0,
56 "description":"漏電発生状æ…
57‹",
58 "fields":[
59
60 ],
61 "identifer":"ElectricLeakOccurrenceStatus",
62 "initialValue":null,
63 "isArray":false,
64 "primitive":true,
65 "propertyCode":177,
66 "required":[
67 "RULE_GET"
68 ],
69 "size":1,
70 "type":"uint8_t",
71 "unitDescription":null,
72 "valueDescription":"0x41=漏電発生有,0x42=漏電発生無"
73 },
74 {
75 "access":[
76 "RULE_SET"
77 ],
78 "arrayCount":0,
79 "description":"漏電発生状æ…
80‹ãƒªã‚»ãƒƒãƒˆè¨­å®š",
81 "fields":[
82
83 ],
84 "identifer":"ElectricLeakOccurrenceStatusResetting",
85 "initialValue":null,
86 "isArray":false,
87 "primitive":true,
88 "propertyCode":191,
89 "required":[
90 "NONE"
91 ],
92 "size":1,
93 "type":"uint8_t",
94 "unitDescription":null,
95 "valueDescription":"0x00=リセット"
96 },
97 {
98 "access":[
99 "RULE_SET",
100 "RULE_GET",
101 "ANNOUNCE"
102 ],
103 "arrayCount":0,
104 "description":"設置場所",
105 "fields":[
106
107 ],
108 "identifer":"InstallationLocation",
109 "initialValue":null,
110 "isArray":false,
111 "primitive":true,
112 "propertyCode":129,
113 "required":[
114 "RULE_SET",
115 "RULE_GET"
116 ],
117 "size":1,
118 "type":"uint8_t",
119 "unitDescription":null,
120 "valueDescription":"2.2設置場所プロパティ参ç…
121§"
122 },
123 {
124 "access":[
125 "RULE_GET"
126 ],
127 "arrayCount":0,
128 "description":"規格Ve
129rsion情
130å ±",
131 "fields":[
132 {
133 "arrayCount":0,
134 "description":"固定1(for future reserved)",
135 "fields":[
136
137 ],
138 "identifer":"Reserved1",
139 "initialValue":null,
140 "isArray":false,
141 "primitive":true,
142 "size":1,
143 "type":"uint8_t",
144 "unitDescription":null,
145 "valueDescription":"0x00"
146 },
147 {
148 "arrayCount":0,
149 "description":"固定2(for future reserved)",
150 "fields":[
151
152 ],
153 "identifer":"Reserved2",
154 "initialValue":null,
155 "isArray":false,
156 "primitive":true,
157 "size":1,
158 "type":"uint8_t",
159 "unitDescription":null,
160 "valueDescription":"0x00"
161 },
162 {
163 "arrayCount":0,
164 "description":"リリース順をASCIIで示す",
165 "fields":[
166
167 ],
168 "identifer":"OrderOfRelease",
169 "initialValue":null,
170 "isArray":false,
171 "primitive":true,
172 "size":1,
173 "type":"uint8_t",
174 "unitDescription":null,
175 "valueDescription":""
176 },
177 {
178 "arrayCount":0,
179 "description":"固定4(for future reserved)",
180 "fields":[
181
182 ],
183 "identifer":"Reserved4",
184 "initialValue":null,
185 "isArray":false,
186 "primitive":true,
187 "size":1,
188 "type":"uint8_t",
189 "unitDescription":null,
190 "valueDescription":"0x00"
191 }
192 ],
193 "identifer":"StandardVersionInformation",
194 "initialValue":null,
195 "isArray":false,
196 "primitive":false,
197 "propertyCode":130,
198 "required":[
199 "RULE_GET"
200 ],
201 "size":4,
202 "type":"standard_version_information_t",
203 "unitDescription":null,
204 "valueDescription":""
205 },
206 {
207 "access":[
208 "RULE_GET"
209 ],
210 "arrayCount":0,
211 "description":"識別番号",
212 "fields":[
213 {
214 "arrayCount":0,
215 "description":"下位通信層IDフィールド",
216 "fields":[
217
218 ],
219 "identifer":"LowerLayerCommunicationIdField",
220 "initialValue":null,
221 "isArray":false,
222 "primitive":true,
223 "size":1,
224 "type":"uint8_t",
225 "unitDescription":null,
226 "valueDescription":"0x01~0xFD=下位通信層で使用される通信プロトコルで固有の番号が振られている場合、プロトコル別に応じて、任意に設定(ECHONET Liteでは使用しない),0x11~0x1F=電灯線a\/d方式,0x31~0x3F=特定小電力無線,0x41~0x4F=拡張HBS,0x51~0x5F=IrDA,0x61~0x6F=LonTalk,0x71~0x7F=Bluetooth,0x81~0x8F=イーサネット,0x91~0x9F=IEEE802.11\/11b,0xA1=電灯線c方式,0xB1=IPv6\/Ethernet,0xB2=IPv6\/6LoWPAN,0xFE=2から17バイトをメーカ規定。形式により設定(詳細説明参ç…
227§ï¼‰,0xFF=2から9バイトを乱数により生成するプロトコルを下位通信層で使用する場合に設定,0x00=識別番号未設定"
228 },
229 {
230 "arrayCount":16,
231 "description":"固有番号フィールド",
232 "fields":[
233
234 ],
235 "identifer":"UniqueNumberField",
236 "initialValue":null,
237 "isArray":true,
238 "primitive":true,
239 "size":1,
240 "type":"uint8_t",
241 "unitDescription":null,
242 "valueDescription":""
243 }
244 ],
245 "identifer":"IdentificationNumber",
246 "initialValue":null,
247 "isArray":false,
248 "primitive":false,
249 "propertyCode":131,
250 "required":[
251 "NONE"
252 ],
253 "size":17,
254 "type":"device_identification_number_t",
255 "unitDescription":null,
256 "valueDescription":""
257 },
258 {
259 "access":[
260 "RULE_GET"
261 ],
262 "arrayCount":0,
263 "description":"瞬時消費電力計測値",
264 "fields":[
265
266 ],
267 "identifer":"MeasuredInstantaneousPowerConsumption",
268 "initialValue":null,
269 "isArray":false,
270 "primitive":true,
271 "propertyCode":132,
272 "required":[
273 "NONE"
274 ],
275 "size":2,
276 "type":"uint16_t",
277 "unitDescription":"W",
278 "valueDescription":"0x0000~0xFFFD(0~65533W)"
279 },
280 {
281 "access":[
282 "RULE_GET"
283 ],
284 "arrayCount":0,
285 "description":"積算消費電力計測値",
286 "fields":[
287
288 ],
289 "identifer":"MeasuredCumulativePowerConsumption",
290 "initialValue":null,
291 "isArray":false,
292 "primitive":true,
293 "propertyCode":133,
294 "required":[
295 "NONE"
296 ],
297 "size":4,
298 "type":"uint32_t",
299 "unitDescription":"kWh",
300 "valueDescription":"0x00000000~0x3B9AC9FF(0~999,999.999kWh)"
301 },
302 {
303 "access":[
304 "RULE_GET",
305 "VARIABLE"
306 ],
307 "arrayCount":0,
308 "description":"メーカ異常コード",
309 "fields":[
310 {
311 "arrayCount":0,
312 "description":"異常コード部のデータサイズ",
313 "fields":[
314
315 ],
316 "identifer":"DataSizeOfTheFaultCodeField",
317 "initialValue":null,
318 "isArray":false,
319 "primitive":true,
320 "size":1,
321 "type":"uint8_t",
322 "unitDescription":null,
323 "valueDescription":""
324 },
325 {
326 "arrayCount":0,
327 "description":"メーカーコード",
328 "fields":[
329 {
330 "arrayCount":3,
331 "description":"メーカーコード",
332 "fields":[
333
334 ],
335 "identifer":"ManufacturerCode",
336 "initialValue":null,
337 "isArray":true,
338 "primitive":true,
339 "size":1,
340 "type":"uint8_t",
341 "unitDescription":null,
342 "valueDescription":"ECHONETコンソーシアムで規定。"
343 }
344 ],
345 "identifer":"ManufacturerCode",
346 "initialValue":null,
347 "isArray":false,
348 "primitive":false,
349 "size":3,
350 "type":"manufacturer_code_t",
351 "unitDescription":null,
352 "valueDescription":""
353 },
354 {
355 "arrayCount":221,
356 "description":"各メーカ独自の異常コード部",
357 "fields":[
358
359 ],
360 "identifer":"FieldForManufacturerDefinedFaultCode",
361 "initialValue":null,
362 "isArray":true,
363 "primitive":true,
364 "size":1,
365 "type":"uint8_t",
366 "unitDescription":null,
367 "valueDescription":""
368 }
369 ],
370 "identifer":"ManufacturersFaultCode",
371 "initialValue":null,
372 "isArray":false,
373 "primitive":false,
374 "propertyCode":134,
375 "required":[
376 "NONE"
377 ],
378 "size":225,
379 "type":"manufacturers_fault_code_t",
380 "unitDescription":null,
381 "valueDescription":""
382 },
383 {
384 "access":[
385 "RULE_SET",
386 "RULE_GET"
387 ],
388 "arrayCount":0,
389 "description":"電流制限設定",
390 "fields":[
391
392 ],
393 "identifer":"CurrentLimitSetting",
394 "initialValue":null,
395 "isArray":false,
396 "primitive":true,
397 "propertyCode":135,
398 "required":[
399 "NONE"
400 ],
401 "size":1,
402 "type":"uint8_t",
403 "unitDescription":"%
404",
405 "valueDescription":"0x00~0x64(0~100%)"
406 },
407 {
408 "access":[
409 "RULE_GET",
410 "ANNOUNCE"
411 ],
412 "arrayCount":0,
413 "description":"異常発生状æ…
414‹",
415 "fields":[
416
417 ],
418 "identifer":"FaultStatus",
419 "initialValue":null,
420 "isArray":false,
421 "primitive":true,
422 "propertyCode":136,
423 "required":[
424 "RULE_GET"
425 ],
426 "size":1,
427 "type":"uint8_t",
428 "unitDescription":null,
429 "valueDescription":"0x41=異常発生有,0x42=異常発生無"
430 },
431 {
432 "access":[
433 "RULE_GET"
434 ],
435 "arrayCount":0,
436 "description":"異常内
437容",
438 "fields":[
439
440 ],
441 "identifer":"FaultDescription",
442 "initialValue":null,
443 "isArray":false,
444 "primitive":true,
445 "propertyCode":137,
446 "required":[
447 "NONE"
448 ],
449 "size":2,
450 "type":"uint16_t",
451 "unitDescription":null,
452 "valueDescription":"2.5異常内
453容プロパティ参ç…
454§"
455 },
456 {
457 "access":[
458 "RULE_GET"
459 ],
460 "arrayCount":0,
461 "description":"メーカーコード",
462 "fields":[
463 {
464 "arrayCount":3,
465 "description":"メーカーコード",
466 "fields":[
467
468 ],
469 "identifer":"ManufacturerCode",
470 "initialValue":null,
471 "isArray":true,
472 "primitive":true,
473 "size":1,
474 "type":"uint8_t",
475 "unitDescription":null,
476 "valueDescription":"ECHONETコンソーシアムで規定。"
477 }
478 ],
479 "identifer":"ManufacturerCode",
480 "initialValue":null,
481 "isArray":false,
482 "primitive":false,
483 "propertyCode":138,
484 "required":[
485 "RULE_GET"
486 ],
487 "size":3,
488 "type":"manufacturer_code_t",
489 "unitDescription":null,
490 "valueDescription":"(ECHONETコンソーシアムで規定。)"
491 },
492 {
493 "access":[
494 "RULE_GET"
495 ],
496 "arrayCount":3,
497 "description":"事業場コード",
498 "fields":[
499
500 ],
501 "identifer":"BusinessFacilityCode",
502 "initialValue":null,
503 "isArray":true,
504 "primitive":true,
505 "propertyCode":139,
506 "required":[
507 "NONE"
508 ],
509 "size":1,
510 "type":"uint8_t",
511 "unitDescription":null,
512 "valueDescription":"(各メーカ毎に規定。)"
513 },
514 {
515 "access":[
516 "RULE_GET"
517 ],
518 "arrayCount":12,
519 "description":"商品コード",
520 "fields":[
521
522 ],
523 "identifer":"ProductCode",
524 "initialValue":null,
525 "isArray":true,
526 "primitive":true,
527 "propertyCode":140,
528 "required":[
529 "NONE"
530 ],
531 "size":1,
532 "type":"uint8_t",
533 "unitDescription":null,
534 "valueDescription":"(各メーカ毎に規定。)"
535 },
536 {
537 "access":[
538 "RULE_GET"
539 ],
540 "arrayCount":12,
541 "description":"製造番号",
542 "fields":[
543
544 ],
545 "identifer":"ProductionNumber",
546 "initialValue":null,
547 "isArray":true,
548 "primitive":true,
549 "propertyCode":141,
550 "required":[
551 "NONE"
552 ],
553 "size":1,
554 "type":"uint8_t",
555 "unitDescription":null,
556 "valueDescription":"(各メーカ毎に規定。)"
557 },
558 {
559 "access":[
560 "RULE_GET"
561 ],
562 "arrayCount":0,
563 "description":"製造年月日",
564 "fields":[
565 {
566 "arrayCount":0,
567 "description":"å¹´",
568 "fields":[
569
570 ],
571 "identifer":"Year",
572 "initialValue":null,
573 "isArray":false,
574 "primitive":true,
575 "size":2,
576 "type":"uint16_t",
577 "unitDescription":"å¹´",
578 "valueDescription":"0x0001~0x270F(1~9999)"
579 },
580 {
581 "arrayCount":0,
582 "description":"月",
583 "fields":[
584
585 ],
586 "identifer":"Mounth",
587 "initialValue":null,
588 "isArray":false,
589 "primitive":true,
590 "size":1,
591 "type":"uint8_t",
592 "unitDescription":"月",
593 "valueDescription":"0x01~0x0C(1~12)"
594 },
595 {
596 "arrayCount":0,
597 "description":"日",
598 "fields":[
599
600 ],
601 "identifer":"Day",
602 "initialValue":null,
603 "isArray":false,
604 "primitive":true,
605 "size":1,
606 "type":"uint8_t",
607 "unitDescription":"日",
608 "valueDescription":"0x01~0x1F(1~31)"
609 }
610 ],
611 "identifer":"ProductionDate",
612 "initialValue":null,
613 "isArray":false,
614 "primitive":false,
615 "propertyCode":142,
616 "required":[
617 "NONE"
618 ],
619 "size":4,
620 "type":"year_mounth_day_t",
621 "unitDescription":null,
622 "valueDescription":""
623 },
624 {
625 "access":[
626 "RULE_SET",
627 "RULE_GET"
628 ],
629 "arrayCount":0,
630 "description":"節電動作設定",
631 "fields":[
632
633 ],
634 "identifer":"PowerSavingOperationSetting",
635 "initialValue":null,
636 "isArray":false,
637 "primitive":true,
638 "propertyCode":143,
639 "required":[
640 "NONE"
641 ],
642 "size":1,
643 "type":"uint8_t",
644 "unitDescription":null,
645 "valueDescription":"0x41=節電動作中,0x42=通常動作中"
646 },
647 {
648 "access":[
649 "RULE_SET",
650 "RULE_GET"
651 ],
652 "arrayCount":0,
653 "description":"遠隔操作設定",
654 "fields":[
655
656 ],
657 "identifer":"PositionInformation",
658 "initialValue":null,
659 "isArray":false,
660 "primitive":true,
661 "propertyCode":147,
662 "required":[
663 "NONE"
664 ],
665 "size":1,
666 "type":"uint8_t",
667 "unitDescription":null,
668 "valueDescription":"0x41=å…
669¬è¡†å›žç·šæœªçµŒç”±æ“ä½œ,0x42=å…
670¬è¡†å›žç·šçµŒç”±æ“ä½œ"
671 },
672 {
673 "access":[
674 "RULE_SET",
675 "RULE_GET"
676 ],
677 "arrayCount":0,
678 "description":"現在時刻設定",
679 "fields":[
680 {
681 "arrayCount":0,
682 "description":"時",
683 "fields":[
684
685 ],
686 "identifer":"Hour",
687 "initialValue":null,
688 "isArray":false,
689 "primitive":true,
690 "size":1,
691 "type":"uint8_t",
692 "unitDescription":"時",
693 "valueDescription":"0x00~0x17(0~23)"
694 },
695 {
696 "arrayCount":0,
697 "description":"分",
698 "fields":[
699
700 ],
701 "identifer":"Minute",
702 "initialValue":null,
703 "isArray":false,
704 "primitive":true,
705 "size":1,
706 "type":"uint8_t",
707 "unitDescription":"分",
708 "valueDescription":"0x00~0x3B(0~59)"
709 }
710 ],
711 "identifer":"CurrentTimeSetting",
712 "initialValue":null,
713 "isArray":false,
714 "primitive":false,
715 "propertyCode":151,
716 "required":[
717 "NONE"
718 ],
719 "size":2,
720 "type":"hour_minute_t",
721 "unitDescription":null,
722 "valueDescription":""
723 },
724 {
725 "access":[
726 "RULE_SET",
727 "RULE_GET"
728 ],
729 "arrayCount":0,
730 "description":"現在年月日設定",
731 "fields":[
732 {
733 "arrayCount":0,
734 "description":"å¹´",
735 "fields":[
736
737 ],
738 "identifer":"Year",
739 "initialValue":null,
740 "isArray":false,
741 "primitive":true,
742 "size":2,
743 "type":"uint16_t",
744 "unitDescription":"å¹´",
745 "valueDescription":"0x0001~0x270F(1~9999)"
746 },
747 {
748 "arrayCount":0,
749 "description":"月",
750 "fields":[
751
752 ],
753 "identifer":"Mounth",
754 "initialValue":null,
755 "isArray":false,
756 "primitive":true,
757 "size":1,
758 "type":"uint8_t",
759 "unitDescription":"月",
760 "valueDescription":"0x01~0x0C(1~12)"
761 },
762 {
763 "arrayCount":0,
764 "description":"日",
765 "fields":[
766
767 ],
768 "identifer":"Day",
769 "initialValue":null,
770 "isArray":false,
771 "primitive":true,
772 "size":1,
773 "type":"uint8_t",
774 "unitDescription":"日",
775 "valueDescription":"0x01~0x1F(1~31)"
776 }
777 ],
778 "identifer":"CurrentDateSetting",
779 "initialValue":null,
780 "isArray":false,
781 "primitive":false,
782 "propertyCode":152,
783 "required":[
784 "NONE"
785 ],
786 "size":4,
787 "type":"year_mounth_day_t",
788 "unitDescription":null,
789 "valueDescription":""
790 },
791 {
792 "access":[
793 "RULE_SET",
794 "RULE_GET"
795 ],
796 "arrayCount":0,
797 "description":"電力制限設定",
798 "fields":[
799
800 ],
801 "identifer":"PowerLimitSetting",
802 "initialValue":null,
803 "isArray":false,
804 "primitive":true,
805 "propertyCode":153,
806 "required":[
807 "NONE"
808 ],
809 "size":2,
810 "type":"uint16_t",
811 "unitDescription":null,
812 "valueDescription":"0x0000~0xFFFF(0~65535W)"
813 },
814 {
815 "access":[
816 "RULE_GET"
817 ],
818 "arrayCount":0,
819 "description":"積算運転時間",
820 "fields":[
821 {
822 "arrayCount":0,
823 "description":"単位",
824 "fields":[
825
826 ],
827 "identifer":"Unit",
828 "initialValue":null,
829 "isArray":false,
830 "primitive":true,
831 "size":1,
832 "type":"uint8_t",
833 "unitDescription":null,
834 "valueDescription":"0x41=秒,0x42=分,0x43=時,0x44=日"
835 },
836 {
837 "arrayCount":0,
838 "description":"経過時間",
839 "fields":[
840
841 ],
842 "identifer":"ElapsedTime",
843 "initialValue":null,
844 "isArray":false,
845 "primitive":true,
846 "size":4,
847 "type":"uint32_t",
848 "unitDescription":null,
849 "valueDescription":"0x00000000~0xFFFFFFFF(0~4294967295)"
850 }
851 ],
852 "identifer":"CumulativeOperatingTime",
853 "initialValue":null,
854 "isArray":false,
855 "primitive":false,
856 "propertyCode":154,
857 "required":[
858 "NONE"
859 ],
860 "size":5,
861 "type":"cumulative_operating_time_t",
862 "unitDescription":null,
863 "valueDescription":""
864 },
865 {
866 "access":[
867 "RULE_GET",
868 "VARIABLE"
869 ],
870 "arrayCount":17,
871 "description":"Se
872tMプロパティマップ",
873 "fields":[
874
875 ],
876 "identifer":"SetMPropertyMap",
877 "initialValue":null,
878 "isArray":true,
879 "primitive":true,
880 "propertyCode":155,
881 "required":[
882 "RULE_GET"
883 ],
884 "size":1,
885 "type":"uint8_t",
886 "unitDescription":null,
887 "valueDescription":"付録1.参ç…
888§"
889 },
890 {
891 "access":[
892 "RULE_GET",
893 "VARIABLE"
894 ],
895 "arrayCount":17,
896 "description":"Ge
897tMプロパティマップ",
898 "fields":[
899
900 ],
901 "identifer":"GetMPropertyMap",
902 "initialValue":null,
903 "isArray":true,
904 "primitive":true,
905 "propertyCode":156,
906 "required":[
907 "RULE_GET"
908 ],
909 "size":1,
910 "type":"uint8_t",
911 "unitDescription":null,
912 "valueDescription":"付録1.参ç…
913§"
914 },
915 {
916 "access":[
917 "RULE_GET",
918 "VARIABLE"
919 ],
920 "arrayCount":17,
921 "description":"状変アナウンスプロパティマップ",
922 "fields":[
923
924 ],
925 "identifer":"StatusChangeAnnouncementPropertyMap",
926 "initialValue":null,
927 "isArray":true,
928 "primitive":true,
929 "propertyCode":157,
930 "required":[
931 "RULE_GET"
932 ],
933 "size":1,
934 "type":"uint8_t",
935 "unitDescription":null,
936 "valueDescription":"付録1.参ç…
937§"
938 },
939 {
940 "access":[
941 "RULE_GET",
942 "VARIABLE"
943 ],
944 "arrayCount":17,
945 "description":"Se
946tプロパティマップ",
947 "fields":[
948
949 ],
950 "identifer":"SetPropertyMap",
951 "initialValue":null,
952 "isArray":true,
953 "primitive":true,
954 "propertyCode":158,
955 "required":[
956 "RULE_GET"
957 ],
958 "size":1,
959 "type":"uint8_t",
960 "unitDescription":null,
961 "valueDescription":"付録1.参ç…
962§"
963 },
964 {
965 "access":[
966 "RULE_GET",
967 "VARIABLE"
968 ],
969 "arrayCount":17,
970 "description":"Ge
971tプロパティマップ",
972 "fields":[
973
974 ],
975 "identifer":"GetPropertyMap",
976 "initialValue":null,
977 "isArray":true,
978 "primitive":true,
979 "propertyCode":159,
980 "required":[
981 "RULE_GET"
982 ],
983 "size":1,
984 "type":"uint8_t",
985 "unitDescription":null,
986 "valueDescription":"付録1.参ç…
987§"
988 }
989]
Note: See TracBrowser for help on using the repository browser.