![]() |
|
|||||||
| RDM Interpretation Questions Discussion and questions relating to interpreting and understanding the E1.20 RDM Standard. |
![]() |
|
|
Thread Tools | Search this Thread | Display Modes |
|
|
|
|
#1 |
|
Task Group Member
Join Date: Jun 2006
Posts: 181
|
Try running the RDMIntegrity tests. There is comprehensive string testing and error reporting.
If your responder does receive a SET text string that is longer than 32 characters, I would expect a NACK : FORMAT ERROR to be returned. Peter |
|
|
|
|
|
#2 | |
|
Member
Join Date: Oct 2017
Location: Turkiye
Posts: 38
|
Quote:
I also handled over size by responding NACK FORMAT ERROR as you said but there is not SET DEVICE_LABEL at all from OLA (please see previous post attachment) I think my code does not response because there is no Set command during test 7 transactions, I am not sure. here is my code : if (ucRxData[INDEX_PDL] <= 32) { // normal response } else { // page29 ucTxData[INDEX_RESPONSE_TYPE] = RESPONSE_TYPE_NACK_REASON; ucTxData[INDEX_SUB_DEVICE] = ucRxData[INDEX_SUB_DEVICE]; ucTxData[INDEX_SUB_DEVICE + 1] = ucRxData[INDEX_SUB_DEVICE + 1]; i = INDEX_CC; ucTxData[i++] = CC.SetResponse; ucTxData[i++] = ucRxData[INDEX_PID]; ucTxData[i++] = ucRxData[INDEX_PID + 1]; ucTxData[i++] = 0; // PDL = 2 , will be assigned before checksum... ucTxData[i++] = NR.FormatError >> 8; // page29, Table A-17 page 117 ucTxData[i++] = NR.FormatError; ucTxData[INDEX_MESSAGE_LENGTH] = i; ucTxData[INDEX_PDL] = i - INDEX_PD; rdm_send_tx_buffer(); } |
|
|
|
|
![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | |
|
|