@@ -83,7 +83,7 @@ received the request but this request is not supported by this expansion.
83
83
84
84
The following describes each message and the related answer
85
85
86
- ### RESET EXPANSION I2C ADDRESS
86
+ ### RESET EXPANSION I2C ADDRESS (+)
87
87
88
88
Apply to: All expansion types
89
89
@@ -102,7 +102,7 @@ initialized if the DETECT IN, DETECT OUT pins are in the correct state)
102
102
- Expansion answer
103
103
No answer expected
104
104
105
- ### SET I2C ADDRESS
105
+ ### SET I2C ADDRESS (+)
106
106
107
107
Apply to: All expansion types
108
108
@@ -120,7 +120,7 @@ one specified in the payload.
120
120
- Expansion answer
121
121
No answer expected
122
122
123
- ### GET I2C ADDRESS AND TYPE
123
+ ### GET I2C ADDRESS AND TYPE (+)
124
124
125
125
Apply to: All expansion types
126
126
@@ -148,9 +148,9 @@ Opta Digital Invalid -> 0x01
148
148
Opta Digital Mechanical -> 0x02
149
149
Opta Digital State Solid -> 0x03
150
150
Opta Analog -> 0x04
151
- UNO R4 MINIMA -> 0x05
151
+ Custom expansion get a dynamic expansion type See AboutCustomExpansionType.md
152
152
153
- ### GET DIGITAL VALUES
153
+ ### GET DIGITAL VALUES (+)
154
154
155
155
Apply to: Opta Digital
156
156
@@ -176,7 +176,7 @@ inputs.
176
176
Note: the status of digital inputs is a bit mask word (2 bytes): each bit of
177
177
the word represent the status of digital input (1 means HIGH, 0 means LOW).
178
178
179
- ### GET ANALOG VALUES
179
+ ### GET ANALOG VALUES (+)
180
180
181
181
Apply to: Opta Digital
182
182
@@ -202,7 +202,7 @@ pin received as argument (the analog value is the raw analog value in bits).
202
202
203
203
Note: the analog value is a WORD (2 bytes) - first is sent the LSB then the MSB.
204
204
205
- ### GET ANALOG ALL VALUES
205
+ ### GET ANALOG ALL VALUES (+)
206
206
207
207
Apply to: Opta Digital
208
208
@@ -228,7 +228,7 @@ its PINs.
228
228
Note: the payload is array of 16 words (LSB first) each value represent the
229
229
analog value of the corresponding PIN.
230
230
231
- ### SET DIGITAL OUTPUTS
231
+ ### SET DIGITAL OUTPUTS (+)
232
232
233
233
Apply to: Opta Digital
234
234
@@ -258,7 +258,7 @@ Note (2): the Expansion answer is requested in order to ensure that the message
258
258
is properly received (CRC is OK), if the message answer is not received the
259
259
Controller will trigger the related callback function (if set).
260
260
261
- ### SET DEFAULT OUTPUT VALUES AND TIMEOUT
261
+ ### SET DEFAULT OUTPUT VALUES AND TIMEOUT (+)
262
262
263
263
Apply to: Opta Digital
264
264
@@ -296,7 +296,7 @@ Note (3): the Expansion answer is requested in order to ensure that the message
296
296
is properly received (CRC is OK), if the message answer is not received the
297
297
Controller will trigger the related callback function (if set).
298
298
299
- ### CONFIGURE OPTA ANALOG CHANNEL AS ADC
299
+ ### CONFIGURE OPTA ANALOG CHANNEL AS ADC (+)
300
300
301
301
Apply to: Opta Analog
302
302
@@ -324,7 +324,7 @@ Configure an Opta Analog channel as ADC
324
324
- Payload: no payload
325
325
- CRC
326
326
327
- ### GET OPTA ANALOG ADC VALUE (adc bit 0-65535)
327
+ ### GET OPTA ANALOG ADC VALUE (adc bit 0-65535) (+)
328
328
329
329
Apply to: Opta Analog
330
330
@@ -348,7 +348,7 @@ Configure an Opta Analog channel as ADC
348
348
-> the analog value of the channe (2 byte) - LSB first
349
349
- CRC
350
350
351
- ### GET OPTA ANALOG ALL ADC VALUE (adc bit 0-65535) AT ONCE
351
+ ### GET OPTA ANALOG ALL ADC VALUE (adc bit 0-65535) AT ONCE (+)
352
352
353
353
Apply to: Opta Analog
354
354
@@ -370,7 +370,7 @@ Configure an Opta Analog channel as ADC
370
370
-> 16 bytes (2 for each channel) - LSB first
371
371
- CRC
372
372
373
- ### CONFIGURE OPTA ANALOG CHANNEL AS DAC
373
+ ### CONFIGURE OPTA ANALOG CHANNEL AS DAC (+)
374
374
375
375
Apply to: Opta Analog
376
376
@@ -396,7 +396,7 @@ Configure an Opta Analog channel as DAC
396
396
- Payload: no payload
397
397
- CRC
398
398
399
- ### SET OPTA ANALOG DAC CHANNEL VALUE (0 - 8191)
399
+ ### SET OPTA ANALOG DAC CHANNEL VALUE (0 - 8191) (+)
400
400
401
401
Apply to: Opta Analog
402
402
@@ -420,7 +420,30 @@ Set Opta Analog DAC channel value
420
420
- Payload: no payload
421
421
- CRC
422
422
423
- ### CONFIGURE OPTA ANALOG CHANNEL AS RTD
423
+ ### APPLY DAC VALUE TO PHYSICAL OUTPUTs (+)
424
+
425
+ Apply to: Opta Analog
426
+
427
+ If set dac message above is used with UPDATE DAC immediately equal to 0 the
428
+ DAC value is not output until this message is received (this can be used to
429
+ update DAC synchronously)
430
+
431
+ - Controller request
432
+ - Header:
433
+ BP_CMD_SET (0x01)
434
+ ARG_OA_SET_ALL_DAC (0x22)
435
+ LEN_OA_SET_ALL_DAC (0x00)
436
+ - Payload: no payload
437
+ - CRC
438
+ - Expansion answer (ACK answer):
439
+ - Header:
440
+ BP_ANS_SET (0x04)
441
+ ANS_ARG_OA_ACK (0x20)
442
+ ANS_LEN_OA_ACK (0)
443
+ - Payload: no payload
444
+ - CRC
445
+
446
+ ### CONFIGURE OPTA ANALOG CHANNEL AS RTD (+)
424
447
425
448
Apply to: Opta Analog
426
449
@@ -430,7 +453,7 @@ Configure an Opta Analog channel as RTD
430
453
- Header:
431
454
BP_CMD_SET (0x01)
432
455
ARG_OA_CH_RTD (0x0E)
433
- LEN_OA_CH_RTD (0x07 )
456
+ LEN_OA_CH_RTD (0x06 )
434
457
- Payload:
435
458
-> channel (1 byte) from 0 to 7
436
459
-> use 3 wire (1 byte) (1 Enable, 2 Disable)
@@ -444,7 +467,7 @@ Configure an Opta Analog channel as RTD
444
467
- Payload: no payload
445
468
- CRC
446
469
447
- ### GET OPTA ANALOG RTD CHANNEL VALUE (Ohm)
470
+ ### GET OPTA ANALOG RTD CHANNEL VALUE (Ohm) (+)
448
471
449
472
Apply to: Opta Analog
450
473
@@ -468,7 +491,7 @@ Get Opta Analog RTD channel value
468
491
-> value 4 bytes as float
469
492
- CRC
470
493
471
- ### CONFIGURE OPTA ANALOG RTD UPDATE TIME
494
+ ### CONFIGURE OPTA ANALOG RTD UPDATE TIME (+)
472
495
473
496
Apply to: Opta Analog
474
497
@@ -479,7 +502,7 @@ Take into account that 3 wire RTD takes around 800 ms per channel.
479
502
- Header:
480
503
BP_CMD_SET (0x01)
481
504
ARG_OA_SET_RTD_UPDATE_TIME (0x10)
482
- LEN_OA_SET_RTD_UPDATE_TIME (0x03 )
505
+ LEN_OA_SET_RTD_UPDATE_TIME (0x02 )
483
506
- Payload:
484
507
-> update time (ms) - 2 bytes - LSB first
485
508
- CRC
@@ -491,7 +514,7 @@ Take into account that 3 wire RTD takes around 800 ms per channel.
491
514
- Payload: no payload
492
515
- CRC
493
516
494
- ### CONFIGURE OPTA ANALOG CHANNEL AS DIGITAL INPUT
517
+ ### CONFIGURE OPTA ANALOG CHANNEL AS DIGITAL INPUT (+)
495
518
496
519
Apply to: Opta Analog
497
520
@@ -522,7 +545,7 @@ Configure an Opta Analog channel as Digital Input
522
545
- Payload: no payload
523
546
- CRC
524
547
525
- ### GET OPTA ANALOG DIGITAL INPUT STATUS
548
+ ### GET OPTA ANALOG DIGITAL INPUT STATUS (+)
526
549
527
550
Apply to: Opta Analog
528
551
@@ -544,7 +567,30 @@ Get Opta Analog DIGITAL INPUT status
544
567
-> all DI status (1 byte) as bit mask
545
568
- CRC
546
569
547
- ### SET OPTA ANALOG PWM
570
+ ### CONFIGURE OPTA ANALOG CHANNEL AS HIGH IMPEDANCE (+)
571
+
572
+ Apply to: Opta Analog
573
+
574
+ Configure an Opta Analog channel as High Impedance
575
+
576
+ - Controller request
577
+ - Header:
578
+ BP_CMD_SET (0x01)
579
+ ARG_OA_CH_DI (0x24)
580
+ LEN_OA_CH_DI (0x01)
581
+ - Payload:
582
+ -> channel (1 byte) from 0 to 7
583
+ - CRC
584
+ - Expansion answer (ACK answer):
585
+ - Header:
586
+ BP_ANS_SET (0x04)
587
+ ANS_ARG_OA_ACK (0x20)
588
+ ANS_LEN_OA_ACK (0)
589
+ - Payload: no payload
590
+ - CRC
591
+
592
+
593
+ ### SET OPTA ANALOG PWM (+)
548
594
549
595
Apply to: Opta Analog
550
596
@@ -568,7 +614,7 @@ Set Opta digital PWM channel values
568
614
- Payload: no payload
569
615
- CRC
570
616
571
- ### SET OPTA ANALOG LED
617
+ ### SET OPTA ANALOG LED (+)
572
618
573
619
Apply to: Opta Analog
574
620
@@ -590,7 +636,7 @@ Set Opta digital PWM channel values
590
636
- Payload: no payload
591
637
- CRC
592
638
593
- ### GET FW VERSION
639
+ ### GET FW VERSION (+)
594
640
595
641
Apply to: All expansion types
596
642
@@ -614,7 +660,7 @@ Get FW version in the form MAJOR.MINOR.RELEASE
614
660
-> release (1 byte)
615
661
- CRC
616
662
617
- ### REBOOT expansion
663
+ ### REBOOT expansion (+)
618
664
619
665
Apply to: All expansion types
620
666
@@ -638,7 +684,7 @@ Put expansion in Boot Loader Mode
638
684
-> reboot confirmation code (1 byte) - value ANS_REBOOT_CODE (0x74)
639
685
- CRC
640
686
641
- ### SAVE information in FLASH memory
687
+ ### SAVE information in FLASH memory (+)
642
688
643
689
Apply to: All expansion types
644
690
@@ -657,7 +703,7 @@ Save up to 32 bytes in the Data Flash of the device
657
703
- CRC
658
704
- Expansion answer: None
659
705
660
- ### READ information from flash
706
+ ### READ information from flash (+)
661
707
662
708
Apply to: All expansion types
663
709
@@ -685,7 +731,7 @@ Read up to 32 byte from the data flash of the device
685
731
- CRC
686
732
687
733
688
- ### SET TIMEOUT TIME TO FORCE DEFAULT VALUES
734
+ ### SET TIMEOUT TIME TO FORCE DEFAULT VALUES (+)
689
735
690
736
Apply to: Opta Analog
691
737
@@ -711,7 +757,7 @@ to the values set by the messages ARG_OA_SET_DAC_DEFAULT or ARD_OA_SET_DEFAULT_P
711
757
- CRC
712
758
713
759
714
- ### SET OPTA ANALOG DAC CHANNEL VALUE (0 - 8191) AFTER COMMUNICATION TIMEOUT
760
+ ### SET OPTA ANALOG DAC CHANNEL VALUE (0 - 8191) AFTER COMMUNICATION TIMEOUT (+)
715
761
716
762
Apply to: Opta Analog
717
763
@@ -722,10 +768,11 @@ channel when a timeout in the communication wiht the controller occurs
722
768
- Header:
723
769
BP_CMD_SET (0x01)
724
770
ARG_OA_SET_DAC_DEFAULT (0x3D)
725
- LEN_OA_SET_DAC (0x03 )
771
+ LEN_OA_SET_DAC (0x04 )
726
772
- Payload:
727
773
-> channel (1 byte) from 0 to 7
728
774
-> DAC value (2 bytes) (0 - 8191) - LSB first
775
+ -> UPDATE DAC immediately (1 byte) - not used
729
776
- CRC
730
777
- Expansion answer (ACK answer):
731
778
- Header:
@@ -735,7 +782,7 @@ channel when a timeout in the communication wiht the controller occurs
735
782
- Payload: no payload
736
783
- CRC
737
784
738
- ### SET OPTA ANALOG PWM
785
+ ### SET OPTA ANALOG PWM (+)
739
786
740
787
Apply to: Opta Analog
741
788
@@ -759,7 +806,7 @@ Set Opta digital PWM channel values
759
806
- Payload: no payload
760
807
- CRC
761
808
762
- ### GET CHANNEL CONFIGURATION
809
+ ### GET CHANNEL CONFIGURATION (+)
763
810
764
811
Apply to: Opta Analog
765
812
0 commit comments