UM0932 User manual ST7580 - FSK, PSK multi-mode power line networking system-on-chip Introduction This user manual, which targets application developers, provides complete information on how to use the ST7580 device in applications by describing the embedded functions and protocol layers, with a focus on the commands and parameters available to the user to control and operate the device through its host interface. For ordering information, mechanical and electrical device characteristics, please refer to the ST7580 datasheet available from www.st.com. October 2013 DocID17385 Rev 3 1/43 www.st.com Contents UM0932 Contents 1 Documentation conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 List of abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2 Functional overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.1 Protocol stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2 ST7580 Power line frames: structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Power line data transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 2.4 Power line data reception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 ST7580 reception flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3 Host interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.1 UART . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.2 Communication protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.3 2/43 3.2.1 Frame types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.2 Local frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2.3 Acknowledgment messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2.4 Status message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.2.5 Local port arbitration rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.2.6 Frame delimitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.2.7 Data communication from the ST7580 to the external host . . . . . . . . . . 17 3.2.8 Data communication from external host to the ST7580 . . . . . . . . . . . . . 18 3.2.9 Host interface timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Command codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.3.1 BIO_ResetRequest (3Ch) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.2 BIO_ResetConfirm (3Dh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.3 BIO_ResetIndication (3Eh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3.4 MIB_WriteRequest (08h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3.5 MIB_WriteConfirm (09h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.3.6 MIB_ReadRequest (0Ch) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.3.7 MIB_ReadConfirm (0Dh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3.8 MIB_EraseRequest (10h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3.9 MIB_EraseConfirm (11h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3.10 PingRequest (2Ch) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.3.11 PingConfirm (2Dh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 DocID17385 Rev 3 UM0932 4 Contents 3.3.12 PHY_DataRequest (24h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.3.13 PHY_DataConfirm (25h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 3.3.14 PHY_DataIndication (26h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.3.15 DL_DataRequest (50h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.3.16 DL_DataConfirm (51h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.17 DL_DataIndication (52h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.18 DL_SnifferIndication (5Ah) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 3.3.19 SS_DataRequest (54h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.3.20 SS_DataConfirm (55h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.3.21 SS_DataIndication (56h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.3.22 SS_SnifferIndication (5Eh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.3.23 CMD_SyntaxError (36h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Management information base (MIB) . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1 MIB table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2 MIB parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.1 00h (Modem configuration) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.2 01h (PHY layer configuration) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2.3 02h (SS Key) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.4 04h (Last data indication) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2.5 05h (Last TX Confirm) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.2.6 06h (PHY Data) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.2.7 07h (DL Data) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.2.8 08h (SS Data) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.2.9 09h (host interface timeout) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.2.10 0Ah (firmware version) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5 Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 6 Revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 DocID17385 Rev 3 3/43 43 List of tables UM0932 List of tables Table 1. Table 2. Table 3. Table 4. Table 5. Table 6. Table 7. Table 8. Table 9. Table 10. Table 11. Table 12. Table 13. Table 14. Table 15. Table 16. Table 17. Table 18. Table 19. Table 20. Table 21. Table 22. Table 23. Table 24. Table 25. Table 26. Table 27. Table 28. Table 29. Table 30. Table 31. Table 32. Table 33. Table 34. Table 35. Table 36. Table 37. Table 38. Table 39. Table 40. Table 41. Table 42. Table 43. Table 44. Table 45. Table 46. Table 47. Table 48. 4/43 List of abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 PHY frame description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 DL frame description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 SS frame description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 UART baud rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Local frame format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 ACK and NAK messages codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Status message composition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Communication protocol timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Request command codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Confirm command codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Error command codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Error commands: syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Error commands: ErrorData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Indication command codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 BIO_ResetRequest: syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 BIO_ResetConfirm: syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 BIO_ResetIndication: syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 BIO_ResetIndication: ResetData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 MIB_WriteRequest: Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 MIB_WriteRequest: RequestData. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 MIB_WriteConfirm: syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 MIB_ReadRequest: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 MIB_ReadRequest: RequestData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 MIB_ReadConfirm: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 MIB_ReadConfirm: ConfirmData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 MIB_EraseRequest: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 MIB_WriteRequest: RequestData. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 MIB_EraseConfirm: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 PingRequest: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 PingRequest: RequestData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 PingConfirm: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 PingConfirm: ConfirmData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 PHY_DataRequest: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 PHY_DataRequest: RequestData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 PHY_DataConfirm: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 PHY_DataConfirm: ConfirmData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 PHY_DataIndication: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 PHY_DataIndication: indicationData. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 DL_DataRequest: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 DL_DataConfirm: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 DL_DataIndication: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 DL_SnifferIndication: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 SS_DataRequest: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 SS_DataRequest: RequestData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 SS_DataConfirm: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 SS_DataIndication: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 SS_DataIndication: IndicationData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 DocID17385 Rev 3 UM0932 Table 49. Table 50. Table 51. Table 52. Table 53. Table 54. Table 55. Table 56. Table 57. Table 58. Table 59. Table 60. Table 61. Table 62. Table 63. List of tables SS_SnifferIndication: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 CMD_SyntaxError: Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 CMD_SyntaxError:ErrorData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Management information base (MIB) objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 MIB object 00h: MIB_WriteRequest and MIB_ReadRequest data format . . . . . . . . . . . . . 35 MIB object 01h: MIB_WriteRequest and MIB_ReadRequest data format . . . . . . . . . . . . . 35 MIB object 02h: MIB_WriteRequest and MIB_ReadRequest Data format . . . . . . . . . . . . . 40 MIB object 04h: MIB_WriteRequest and MIB_ReadRequest data format . . . . . . . . . . . . . 41 MIB object 05h: MIB_WriteRequest and MIB_ReadRequest data format . . . . . . . . . . . . . 42 MIB object 06h: MIB_WriteRequest and MIB_ReadRequest Data format . . . . . . . . . . . . . 43 MIB object 07h: MIB_WriteRequest and MIB_ReadRequest data format . . . . . . . . . . . . . 43 MIB object 08h: MIB_WriteRequest and MIB_ReadRequest Data format . . . . . . . . . . . . . 44 MIB object 09h: MIB_WriteRequest and MIB_ReadRequest Data format . . . . . . . . . . . . . 44 MIB object 0Ah: MIB_WriteRequest and MIB_ReadRequest data format . . . . . . . . . . . . . 44 Document revision history . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 DocID17385 Rev 3 5/43 43 List of figures UM0932 List of figures Figure 1. Figure 2. Figure 3. Figure 4. Figure 5. Figure 6. Figure 7. Figure 8. Figure 9. Figure 10. Figure 11. 6/43 Functional overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Physical frame structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Data link frame structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Security services frame structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 ST7580 reception flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 ST7580 and external host: UART connections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Local port character format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Local frame format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Timeout inter character TIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Data flow from ST7580 to the external host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Data flow from external host to the ST7580 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 DocID17385 Rev 3 UM0932 1 Documentation conventions Documentation conventions List of abbreviations The following abbreviations are used: Table 1. List of abbreviations Abbreviation Description MIB Management information base PGA Programmable gain amplifier ZC Zero-crossing PHY Physical layer DL Data link layer CRC Cyclic redundancy check AES Advanced encryption standard UART Universal asynchronous receiver transmitter Tic Inter character timeout Tack Acknowledge timeout Tsr Service request timeout SS Security services BIO Basic input output HI Host interface DocID17385 Rev 3 7/43 43 Functional overview 2 UM0932 Functional overview The ST7580 device provides to the external host a complete physical layer (PHY) and some data link layer (DL) services for power line communication. It is mainly developed for smart metering applications in CENELEC A band, but suitable also for other control applications and remote load management in CENELEC B band. A UART host interface is available for communication with an external host, exporting all the functions and services required to configure and control the device and its protocol stack. 2.1 Protocol stack Below is a list of the protocol layers and functions embedded in the ST7580: Physical (PHY) layer: hosted in the PHY processor, implements two different modulation schemes for communication through power line: a B-FSK modulation up to 9.6 kbps and a multi-mode PSK modulation with channel quality estimation, dual channel receiving mode and convolutional coding, delivering a throughput up to 28.8 kbps. Data link (DL) layer: the embedded DL layer hosted in the protocol controller offers framing and error correction services. A further security service (SS) based on 128-bit AES algorithm is also available for crypting / decrypting frames. Management information base (MIB): an information database with the data required for proper configuration of the system. Host interface: all of the services of the PHY, DL and MIB are exported to an external host through the local UART port. Figure 1. Functional overview 67 3URWRFRO &RQWUROOHU 0,% '//D\HU 3+< 3URFHVVRU +267,QWHUIDFH 0,% 3+</D\HU $QDORJ)URQW(QG /RFDO3RUW 8$57 7;' 5;' 7B5(4 ([WHUQDO +267 %5 %5 3RZHUOLQH&RPPXQLFDWLRQ $0Y 8/43 DocID17385 Rev 3 UM0932 ST7580 Power line frames: structure The ST7580 device can be configured by the external host to transmit and receive frames over the power line in accordance with three different frames structures: 1. Physical (PHY) frames, built with some differences between PSK and FSK modulations (see [·]), as represented in Figure 2: E\WHV 3UHDPEOH 35( 8QLTXH:RUG 8: E\WH E\WH /HQJWK IURPXSWRE\WHV 36. 0RGH Figure 2. Physical frame structure IURPXSWRE\WHV 3D\ORDG 3+<6'8 $0Y Table 2 lists the fields of PHY frame. Table 2. PHY frame description 2. Field name Length Description and values Length 1 Payload length. Allowable values: from 0 up to 255 Payload Length Data bytes Data Link (DL) frames, adding CRC field to physical SDU. Figure 3 shows the frame structure: Figure 3. Data link frame structure E\WH /HQJWK 2.2 Functional overview IURPXSWRE\WHV 3D\ORDG RUE\WH &5& 3+<6'8 '/6'8 $0Y The external host is allowed to choose the CRC algorithm used (length, endianness, fields involved in calculation) through a dedicated MIB object (modem configuration 00h, Section 4.2.1). The length field is automatically handled by ST7580 and its value is by default equal to the length of payload and CRC fields. DocID17385 Rev 3 9/43 43 Functional overview UM0932 Table 3 lists the fields of DL frame. Table 3. DL frame description 3. Field name Length Description and values DL length 1 Total length of payload and CRC fields. Payload DL length – length of CRC Data bytes CRC 1, 2 or 4 CRC calculated in accordance with algorithm chosen in dedicated MIB object (modem configuration 00h, Section 4.2.1). Security services (SS) frames, providing authentication to payload using cryptographic algorithms based on AES with 128-bit keys. Authentication is provided appending to user data an AES-CMAC digest. A dedicated key (stored in the MIB object SS key 02h, Section 4.2.3) is used for both transmitting and receiving frames. Figure 4 shows the SS frame structure. Figure 4. Security services frame structure E\WH IURPXSWRE\WHV /HQJWK +/E\WHV +HDGHU (QFU\SWHG 3D\ORDG RUE\WH E\WHV E\WH +HDGHU /HQJWK ,QLWLDOL]DWLRQ 9HFWRU,9 +/ E\WHV 'LJHVW &5& IURPXSWRE\WHV 666'8 3+<6'8 '/6'8 $0Y Table 4 lists the fields of SS frame. Table 4. SS frame description 10/43 Field name Length Description and values Header HL Part of user data transmitted in clear. Encrypted payload LEN-29-HL Part of user data transmitted ciphered. IV 12 Initialization vector of AES-CTR algorithm. HL 1 Header field length. Digest 16 AES-CMAC digest computed on header, encrypted payload, IV and HL fields. DocID17385 Rev 3 UM0932 2.3 Functional overview Power line data transmission In order to manage data transmission to the power line, three different dedicated services are available to the external host. 1. PHY_Data transmission, with frames structured as in Figure 2, requiring the payload as the only external parameter and building automatically the length field. 2. DL_Data transmission, with frames structured as in Figure 3, requiring the payload as the only external parameter and building automatically the length and CRC fields. 3. SS_Data transmission, with frames structured as in Figure 4, requiring the payload and header length (greater than 3) as external parameters, building automatically the length, CRC and HL field, deciding an arbitrary initialization vector and encrypting the payload. The external host is allowed to access the ST7580 device and choose which among the three frame structures are utilized for transmitting data over the power line by selecting the corresponding available service. 2.4 Power line data reception In order to manage data reception from the power line, the ST7580 can be configured to be able to receive in accordance with only one frame structure. The external host is allowed to set, through a dedicated MIB object (modem configuration, 00h Section 4.2.1), the only frame structure the ST7580 is able to receive. The ST7580 embeds three corresponding available services: 1. PHY_Data indication: generated as soon as a frame in compliance with PHY frame structure (Figure 2) has been received, it exports the PHY payload field 2. DL_Data indication: generated as soon as a frame in compliance with DL frame structure (Figure 3) has been received, it exports the DL payload field 3. SS_Data indication: generated as soon as a frame in compliance with SS frame structure (Figure 4) has been received, it exports the SS payload field. A further feature of ST7580 configuration is the Sniffer flag. It can be activated by the external host through a dedicated MIB object (modem configuration, 00h Section 4.2.1) and it makes two further services available: 1. DL_Sniffer indication: generated as soon as a frame in compliance with DL frame structure (Figure 3) with a wrong CRC has been received, it exports both DL payload and wrong CRC fields. 2. SS_Sniffer indication: generated as soon as a frame in compliance with SS frame structure (Figure 4) that couldn't be correctly decrypted or authenticated has been received, it exports the whole SS_SDU field. DocID17385 Rev 3 11/43 43 Functional overview UM0932 ST7580 reception flow The reception flow for incoming frames is depicted in Figure 5: Figure 5. ST7580 reception flow 3+<+HDGHU3UHDPEOH8:0RGHUHFHSWLRQ /HQJWK)LHOG/UHFHSWLRQ 3D\ORDGUHFHSWLRQXSWR/%\WHV <HV 5HFHLYLQJ0RGH 3+<IUDPHV 1R 3+<B'DWD,QGLFDWLRQ 3D\ORDG 5LJKW <HV 5HFHLYLQJ0RGH '/ IUDPHV &RPSXWH&5& :URQJ &5&&KHFN 1R 66IUDPHV '/B'DWD,QGLFDWLRQ 3D\ORDG <HV 6QLIIHU (QDEOHG '/B6QLIIHU,QGLFDWLRQ 3D\ORDG &5& 5LJKW 66GHFU\SWLRQDQG DXWKHQWLFDWLRQ 66B'DWD,QGLFDWLRQ 3D\ ORDG 1R 1R,QGLFDWLRQ :URQJ <HV 6QLIIHU (QDEOHG 66B6QLIIHU,QGLFDWLRQ 3D\ORDG &5& 1R 1R,QGLFDWLRQ $0Y 12/43 DocID17385 Rev 3 UM0932 3 Host interface Host interface The host interface is a communication port used by the external host to exchange data with the ST7580 device. The host interface consists of a local port (a standard UART), a communication protocol and a set of commands exchanged between ST7580 and the external host. It manages the communication and arbitration on the local port, and provides access to ST7580 internal services. UART The local communication is a half duplex asynchronous serial link (UART) using a receiving input (RXD), a transmitting output (TXD) and a T_REQ signal to manage the communication. The connection diagram of the ST7580 using UART as host interface port is shown in Figure 5. Figure 6. ST7580 and external host: UART connections 8$57 /RFDO3RUW 7;' 7B5(4 ([WHUQDO+267 5;' 67 3.1 %5 %5 ([WHUQDO8$57 %DXGUDWH VHOHFWLRQ $0Y The communication baud rate is selected after the ST7580 reset, in accordance with the status of local input ports BR0, BR1 listed in Table 5: Table 5. UART baud rate BR1 BR0 Baudrate (b/s) 0 0 9600 0 1 19200 1 0 38400 1 1 57600 DocID17385 Rev 3 13/43 43 Host interface UM0932 The UART interface has two data channels: TXD carries data from the ST7580 to the host RXD carries data from the host to the ST7580 A local request input signal is implemented on the T_REQ pin. ST7580 UART is a half duplex asynchronous serial port without hardware control flow. UART settings used are: Half duplex mode Standard NRZ bit coding LSBit first transmission: the bits within each byte are sent LSBit to MSBit The exchanged frames are composed of characters A single character is composed of 1 start bit, 8 data bits and 1 stop bit 0-5 V or 0-3.3 V levels on TXD, RXD, T_REQ signals. Figure 7 shows the character format: Figure 7. Local port character format ,'/(VWDWH PDUN /6% 6WDUW %LW ' 06% ' ' ' ' GDWDELWV WELW ' ' ' 6WRS %LW WELW FKDUDFWHU $0Y 3.2 Communication protocol The host interface process implemented in the ST7580 device performs the following tasks: 3.2.1 The frame format definition The reception mechanism: the UART standard on half duplex data channel is implemented and collisions are avoided The acknowledgement to received frames The timeout management The error checking: length, syntax and checksum field of a received frame are controlled and a repetition is requested in case of error. Frame types A frame is a sequence of one or more characters encapsulating a data exchanged between the ST7580 device and the host controller. The communication protocol defines several frame formats for the different steps of the communication protocol (access to ST7580 services, acknowledgement, device status). 14/43 DocID17385 Rev 3 UM0932 Host interface All the ST7580 resources and services (PHY layer, DL layer and MIB management) are available through local commands and they can be handled by the external host using the local communication serial interface and the commands defined in the following paragraphs. 3.2.2 Local frame The format of the frame used in the local communication between the ST7580 and the external host is graphically represented in Figure 8: Figure 8. Local frame format 67; /HQJWK &RPPDQG &RGH '$7$ &KHFNVXP $0Y The frame fields are described in Table 6: Table 6. Local frame format Field Byte length Value Description STX 1 02h or 03h Start of text delimiter Length 1 0 255 Byte length of data field Command code 1 0 FFh Command code Data 0 255 Data field (255 byte max.) 2 The checksum of the local frame is the result of the addition of the elements of the frame, from length up to the last data byte, or up to the command byte if there is no data byte. Checksum Byte endianness for fields (data and checksum) with a length greater than one byte is: 3.2.3 Data field: structured in sub-fields in accordance with command code specifications described in Section 3.3. Checksum field: it is sent LSByte first. Acknowledgment messages After receiving a local frame on the host interface, both external host and the ST7580 must send, through either TXD (ST7580) or RXD (external host), an acknowledgement or not acknowledgement message. The two messages have the same format for both ST7580 and external host and they are 1-byte long. DocID17385 Rev 3 15/43 43 Host interface UM0932 Table 7 lists their fixed codes. Table 7. ACK and NAK messages codes 3.2.4 Symbol Definition Code ACK Acknowledgement 06h NAK Not acknowledgement 15h Status message The status message is a frame sent by the ST7580 to the host controller when the T_REQ signal is pulled down. It is composed of 2 bytes filled in accordance with ST7580 status and configuration. The first byte (byte index 0) is always the character “?” (ASCII code 3Fh). Other bytes are set as in Table 8: Table 8. Status message composition Byte Bit index index 0 Description Status message first byte 3Fh 0 Configuration status 0: autoreconfiguration correctly occurred 1: autoreconfiguration occurred with errors or at least one among MIB objects 00h (Modem Config), 01h (PHY Config), 02h (SS Key) hasn’t changed its default value after boot 1 Transmission status 0: the ST7580 is not transmitting a power line frame 1: the ST7580 is transmitting a power line frame 2 Reception status 1 16/43 Available values 3-4 Active layer 5 Overcurrent flag 6-7 Estimated ST7580 temperature 0: the ST7580 is not receiving a power line frame 1: the ST7580 is receiving a power line frame 0: PHY layer 1: DL layer 2: SS layer 3: ST7580 not configured 0: no overcurrent event on last transmission 1: last transmission generated at least one overcurrent event 0: T < 70 °C (typical) 1: 70 °C < T <100 °C (typical) 2: 100 °C < T < 125 °C (typical) 3: T > 125 °C (typical) DocID17385 Rev 3 UM0932 3.2.5 Host interface Local port arbitration rules The ST7580 modem is always the communication master. In case of no local transfer, the ST7580 can initiate a local communication without taking into account the external host status. On the other hand, when the external host wants to send a local frame, it must first send a request through the T_REQ (transmitting request) input port. Then the ST7580 answers with a status message allowing or not the reception of a frame (or any other command). 3.2.6 Frame delimitation Data coming from the UART serial port are an asynchronous flow of bytes. In order to divide the bytes flow into a frames flow, the ST7580 communication protocol uses two methods: length and timeout. When the number of bytes received reaches the expected frame length, in accordance with the frame type's characteristics, the frame reception ends. The time interval between two consecutive characters (two local frames including start and stop bits) in a local frame must not exceed TIC (timeout inter-character): the receiving part (ST7580 host interface or external host) no longer accepts any character after this delay expiration. Figure 9. Timeout inter character TIC 7,& &KDUDFWHU &KDUDFWHU $0Y The timeout inter character (TIC) is set by default at 10 ms after a reset and it can be modified by writing a dedicated MIB object (host interface timeout 09h, Section 4.2.9). If the length and the checksum are both correct, the received frame is accepted, otherwise all previous characters are discarded. 3.2.7 Data communication from the ST7580 to the external host When the ST7580 needs to transmit a frame to the host, it can directly send it without any previous request. The local frame is automatically built with an STX value equal to 02h. If the length and the checksum of the local frame are both correct, the external host acknowledges with an ACK character. In other cases, it answers with a NAK character. If one of the following cases is verified on the RXD line: Negative acknowledgement (NAK) Any other frame No frame within TACK interval. DocID17385 Rev 3 17/43 43 Host interface UM0932 The ST7580 device repeats the frame only once after a delay corresponding to TACK, changing the STX value to 03h. Acknowledgement to re-transmitted frames is considered positive by default, even if the host controller answers with a negative acknowledgement. Figure 10. Data flow from ST7580 to the external host 7B5(4 5;' 7;' 1$ . $& . /RFDO)UDPH IURP67 /RFDO)UDPH IURP67 7$&. 7$&. $0Y 3.2.8 Data communication from external host to the ST7580 When the external host needs to initiate a data transfer to the ST7580, it must set the T_REQ signal at low level. As soon as the ST7580 is not busy, it answers with the status message confirming or not the data channel availability. If the communication is possible, the external host can start sending a local frame (built with STX field equal to 02h) within the TSR delay. The T_REQ signal is set to high logic value as soon as the STX field of the local frame (see Section 3.2.2) has been sent. If the first byte of the local frame is not received before the TSR delay, the ST7580 ignores it. Figure 11. Data flow from external host to the ST7580 7B5(4 5;' 7;' /RFDO)UDPH 6WDWXV $&. 765 7$&. $0Y At the end of the data reception on the RXD line, the ST7580 sends an acknowledgement message on the TXD line to inform about the status of the transmission (ACK or NAK) within a TACK interval. If the length and the checksum of the local frame are both correct, the ST7580 acknowledges with an ACK character. In other cases, it answers with a NAK character. In case of a NAK response or no acknowledgement from the ST7580 within the TACK time-out, a complete sequence must be restarted to repeat the communication. 18/43 DocID17385 Rev 3 UM0932 3.2.9 Host interface Host interface timeouts All the default values of host interface timeouts are reported in Table 9. Table 9. Communication protocol timeouts 3.3 Timeout Default value [ms] Tic 10 Tack 40 Tsr 200 Command codes Each command frame exchanged between the external host and the ST7580 carries a command, identified by a unique command code (declared in the command code field as in Figure 8:) It is possible to distinguish four different command types: Request commands sent by the external host to use a ST7580 service Confirm commands sent by the ST7580 to answer a previous request command correctly executed Error commands sent by the ST7580 to answer a previous request command not executed Indication commands sent by the ST7580 to inform the external host about a change on its services; these are unsolicited commands not following any request. Request commands Request commands are sent by the external host to perform an action on ST7580. ST7580 executes the command and answers the external host through either a confirm command or an error command. Table 10 shows all request commands: their syntax and data fields are explained in the next paragraphs. Table 10. Request command codes Group Request command Code Reset BIO_ResetRequest (Section 3.3.1) 3Ch MIB_WriteRequest (Section 3.3.4) 08h MIB_ReadRequest (Section 3.3.6) 0Ch MIB_EraseRequest (Section 3.3.8) 10h PingRequest (Section 3.3.10) 2Ch PHY_DataRequest (Section 3.3.12) 24h DL_DataRequest (Section 3.3.15) 50h SS_DataRequest (Section 3.3.19) 54h MIB Ping Data DocID17385 Rev 3 19/43 43 Host interface UM0932 Confirm commands Confirm commands are sent by the ST7580 to the external host after a previous request command, if the request itself has been correctly executed. Table 11 lists confirm command codes: their syntax and data fields are explained in the next paragraphs. Table 11. Confirm command codes Group Confirm command Code Reset BIO_ResetConfirm (Section 3.3.2) 3Dh MIB_WriteConfirm (Section 3.3.5) 09h MIB_ReadConfirm (Section 3.3.7) 0Dh MIB_EraseConfirm (Section 3.3.9) 11h PingConfirm (Section 3.3.11) 2Dh PHY_DataConfirm (Section 3.3.13) 25h DL_DataConfirm (Section 3.3.16) 51h SS_DataConfirm (Section 3.3.20) 55h MIB Ping Data Error commands Error commands are sent by the ST7580 to the external host after a previous request command, if it has not been executed or if an error has occurred while it was executing. Table 12. Error command codes Group Error command Code Reset BIO_ResetError 3Fh MIB_WriteError 0Bh MIB_ReadError 0Fh MIB_EraseError 13h PHY_DataError 27h DL_DataError 53h SS_DataError 57h CMD_SyntaxError 36h MIB Data Syntax error The data field of the correspondent local frames presents a same syntax for all error command codes, with the exception of CMD_SyntaxError (Section 3.3.23). It is composed of 1 byte and it is coded in accordance with the values listed in Table 14. Table 13. Error commands: syntax 20/43 Source Command (Args) Possible response ST7580 CommandError (ErrorData) --- DocID17385 Rev 3 UM0932 Host interface Table 14. Error commands: ErrorData Error cause Value Description Wrong parameter length (WPL) 02h Data field length in the previous request was wrong Wrong parameter value (WPV) 03h At least one of the parameters values in the previous request was invalid. Busy 04h System busy, operation couldn’t be performed. Thermal error 0Bh Device internal temperature within threshold 4 [Section 5], ST7580 refused to transmit. General error FFh Generic error code. Indication commands Indication commands are sent by the ST7580 to the external host. They notify a reset event or a power line data reception. Table 15 lists all the indication commands: their syntax and data fields are explained in the next paragraphs. Table 15. Indication command codes Group Command Code Reset BIO_ResetIndication (Section 3.3.3) 3Eh PHY_DataIndication (Section 3.3.14) 26h DL_DataIndication (Section 3.3.17) 52h DL_SnifferIndication (Section 3.3.18) 5Ah SS_DataIndication (Section 3.3.21) 56h SS_SnifferIndication (Section 3.3.22) 5Eh Data 3.3.1 BIO_ResetRequest (3Ch) This command is used by the external host to force software reset in the ST7580. Table 16. BIO_ResetRequest: syntax 3.3.2 Source Command(Args) Possible response Ext. host CMD_ResetRequest() BIO_ResetConfirm BIO_ResetConfirm (3Dh) This command is sent by the ST7580 after the correct reception of a BIO_ResetRequest (Section 3.3.1) command. Table 17. BIO_ResetConfirm: syntax Source Command(Args) Possible response ST7580 BIO_ResetConfirm(ConfirmData) --- The ConfirmData field is always composed of 1 byte equal to 00h. DocID17385 Rev 3 21/43 43 Host interface 3.3.3 UM0932 BIO_ResetIndication (3Eh) This command is sent by the ST7580 to notify the host about a reset or a power-on event. Table 18. BIO_ResetIndication: syntax Source Command(Args) Possible response ST7580 BIO_ResetIndication(ResetData) --- Table 19. BIO_ResetIndication: ResetData Byte Bit index index Label 0-1 Reset Cause 2 Autoreconfiguration Error 3 Autoreconfiguration: Modem Config Object Error 0 0: RESETN pin at low state (Hardware Reset) or Power-ON 1: watchdog 2: BIO_ResetRequest (see Section 3.3.1) command 0: autoreconfiguration correctly occurred 1: autoreconfiguration occurred with errors or at least one among MIB objects 00h (Modem Config), 01h (PHY Config), 02h (SS Key) hasn't changed its default value after power-on 0: autoreconfiguration on MIB object 00h (Modem Config) correctly occurred, if such an object has been written by host through MIB_WriteRequest command after power-on 1: errors during Autoreconfiguration on MIB object 00h (Modem Config) or the object hasn't been changed its default value after power-on 4 0: autoreconfiguration on MIB object 01h (PHY Config) correctly occurred, if such an object has been written by host through Autoreconfiguration: MIB_WriteRequest command after power-on PHY Config Object Error 1: errors during Autoreconfiguration on MIB object 01h (PHY Config) or the object hasn't been changed its default value after power-on 5 0:autoreconfiguration on MIB object 02h (SS Key) correctly occurred, if such an object has been written by host through MIB_WriteRequest Autoreconfiguration: SS command after power-on KeyObject Error 1: errors during Autoreconfiguration on MIB object 02h (SS Key) or the object hasn't been changed its default value after power-on 6-7 3.3.4 Description Unused MIB_WriteRequest (08h) This command is used by the external host to access an object of the MIB. The ST7580 checks the parameters for validation: 22/43 If the check is valid, the object is updated in the database and the ST7580 replies with a MIB_WriteConfirm (Section 3.3.5). If the check is not valid, the request is rejected and the ST7580 replies with a MIB_WriteError (Table 12). DocID17385 Rev 3 UM0932 Host interface Table 20. MIB_WriteRequest: Syntax Source Command(Args) Possible response Source Ext. host MIB_WriteRequest (RequestData) Request accepted: MIB_WriteConfirm Request rejected: MIB_WriteError (ErrorData) Ext. host Table 21. MIB_WriteRequest: RequestData 3.3.5 Byte index Label Description 0 INDEX MIB database entry index. Refer to the MIB table (Table 52) for available objects allowed to be written. 1n DATA Data to be written in the MIB location INDEX. MIB_WriteConfirm (09h) This command is sent by the ST7580 to acknowledge an MIB_WriteRequest (see Section 3.3.4), if the request has been accepted and executed without errors. Table 22. MIB_WriteConfirm: syntax 3.3.6 Source Command(Args) Possible response ST7580 MIB_WriteConfirm () None MIB_ReadRequest (0Ch) This command is used by the external host to read the current value of an MIB object. The ST7580 checks the parameters for validation: If the check is valid, the object is updated in the database and the ST7580 replies with a MIB_ReadConfirm (Section 3.3.7). If the check is not valid, the request is rejected and the ST7580 replies with a MIB_ReadError (Table 12). Table 23. MIB_ReadRequest: Syntax Source Command(Args) Possible response Ext. host MIB_ReadRequest (RequestData) Request accepted: MIB_ReadConfirm (ConfirmData) Request rejected: MIB_ReadError (ErrorData) Table 24. MIB_ReadRequest: RequestData Byte index Label Description 0 INDEX MIB database entry index. Refer to the MIB table (Table 52) for available objects. DocID17385 Rev 3 23/43 43 Host interface 3.3.7 UM0932 MIB_ReadConfirm (0Dh) This command is sent by the ST7580 to acknowledge an MIB_ReadRequest (see Section 3.3.6) if the request has been accepted and executed without errors. Table 25. MIB_ReadConfirm: Syntax Source Command(Args) Possible response ST7580 MIB_ReadConfirm(ConfirmData) None Table 26. MIB_ReadConfirm: ConfirmData 3.3.8 Byte index Label Description 1n DATA Current value of the MIB object with INDEX expressed in the previous MIB_ReadRequest command (Section 3.3.6). MIB_EraseRequest (10h) This command is used by the external host to erase the value of an MIB object and set it to 0. This command is valid for erasable MIB objects only (Table 52). The ST7580 checks the parameters for validation: If the check is valid, the object is updated to a value equal to 0 in the database and the ST7580 replies with an MIB_EraseConfirm (Section 3.3.9). If the check is not valid, the request is rejected and the ST7580 replies with an MIB_EraseError (Table 12). Table 27. MIB_EraseRequest: Syntax Source Command(Args) Ext. host MIB_EraseRequest(RequestData) Possible response Request accepted: MIB_EraseConfirm Request rejected: MIB_EraseError (ErrorData) Table 28. MIB_WriteRequest: RequestData 3.3.9 Byte index Label Description 0 INDEX MIB database entry index. Refer to the MIB table (Table 52) for available objects. MIB_EraseConfirm (11h) This command is sent by the ST7580 to acknowledge an MIB_EraseRequest (see Section 3.3.8) if the request has been accepted and executed without errors. Table 29. MIB_EraseConfirm: Syntax 24/43 Source Command(Args) Possible response ST7580 MIB_EraseConfirm () None DocID17385 Rev 3 UM0932 3.3.10 Host interface PingRequest (2Ch) This command is sent by external host to test the robustness of the local port link with the ST7580. If accepted, the ST7580 answers with a PingConfirm command (Section 3.3.11). Table 30. PingRequest: Syntax Source Command(Args) Possible response External Host PingRequest(RequestData) Request accepted: PingConfirm (ConfirmData) Table 31. PingRequest: RequestData 3.3.11 Byte index Label Description 0-n DATA Payload with variable length PingConfirm (2Dh) This command is sent by the ST7580 to notify the reception of a PingRequest. The payload field of the local frame presents the same data received in the previous PingRequest. Table 32. PingConfirm: Syntax Source Command(Args) Possible response ST7580 PingConfirm(ConfirmData) -- Table 33. PingConfirm: ConfirmData 3.3.12 Byte index Label Description 0-n DATA Payload with the values received in the previous PingRequest (Section 3.3.10) PHY_DataRequest (24h) This command is sent by the external host to request data transmission and it exports the PHY_Data transmission service (Section 2.3). If accepted, the ST7580 constructs a PHY frame (Figure 2) that is transmitted over the power line in accordance with the details expressed in RequestData field (Table 35). A positive PHY_DataConfirm (Section 3.3.13) is generated at the end of the transmission. If refused, the modem generates a PHY_DataError (Table 12). Table 34. PHY_DataRequest: Syntax Source Command(Args) Possible response External host PHY_DataRequest( RequestData) Request accepted: PHY_DataConfirm (ConfirmData) Request rejected: PHY_DataError (ErrorData) DocID17385 Rev 3 25/43 43 Host interface UM0932 Table 35. PHY_DataRequest: RequestData Byte index Bit index 0 1 2 Label Description and available values Custom / MIB frequency Selection of frequency to use between MIB and custom frequency 0: TX frequency is the high or low frequency as in PHY_Config (Table 54) MIB object 1: TX frequency is specified in bytes [1 3] (TX frequency) Frequency overwrite Selection of PHY_Config MIB object overwrite (Table 54). This field is taken into account if the Custom / MIB frequency” bit is equal to “1” only. 0: TX frequency expressed in the following bytes (1 – 3) won't overwrite the frequency in PHY_Config (Table 54) MIB object 1: TX frequency expressed in the following bytes (1 – 3) overwrites frequency in PHY_Config (Table 54) MIB object Frequency set Selection of frequency in PHY_Config MIB object 0: TX frequency is the LowFrequency in PHY_Config MIB object 1: TX frequency is the HighFrequency in PHY_Config MIB object Gain selector Selection of TX gain for frame transmission 0: TX gain set as in PHY Config MIB object (TX Gain parameter (Table 54)) 1: TX gain is specified in the following TX gain byte (2 or 4) 0 3 4-6 Frame modulation 7 Zero crossing synchronization 1-3 4 (or 1) 5 254 (or 1 254, 2 254, 4 254) 26/43 TX Frequency 0–4 TX Gain 5–7 Unused Payload Modulation of the frame to be transmitted 0: B-PSK 1: Q-PSK 2: 8-PSK 3: B-FSK 4: B-PSK coded 5: Q-PSK coded 6: Reserved 7: B-PSK coded with Peak Noise Avoidance 0: transmission frame starts on any instant 1: transmission frame start after ZC delay value defined in PHY Config MIB object (Table 54) Frequency value (in Hz) that the output signal is modulated around, to be expressed if “Custom / MIB frequency” bit is equal to “1” only. TX gain [·] to be expressed if Gain Selector bit is equal to “1” only. Payload to be sent (up to 254 bytes) DocID17385 Rev 3 UM0932 3.3.13 Host interface PHY_DataConfirm (25h) This command is sent by the ST7580 to provide a positive confirmation to a PHY_DataRequest (see Section 3.3.12) previously requested by the external host. Table 36. PHY_DataConfirm: Syntax Source Command(Args) Possible response ST7580 PHY_DataConfirm (ConfirmData) None Table 37. PHY_DataConfirm: ConfirmData Byte index Bit index Label 0–1 Max. temp. Max temperature reached during PHY frame transmission. 0: T < 70 °C (typical) 1: 70 °C < T < 100 °C (typical) 2: 100 °C < T < 125 °C (typical) 3: T > 125 °C (typical) 2–6 Max. gain If current control feature (MIB object PHY config 01h, Section 4.2.2) is active, max. gain used during last transmission. If current control feature is not active, gain used during last transmission. 7 Unused 0 0–1 Min. temp Min. temperature reached during PHY frame transmission. 0: T < 70 °C (typical) 1: 70 °C < T < 100 °C (typical) 2: 100 °C < T < 125 °C (typical) 3: T > 125 °C (typical) 2–6 Min. gain If current control feature (MIB object PHY Config 01h, Section 4.2.2) is active, min. gain used during last transmission. if current control feature is not active, gain used during last transmission. 7 Unused 1 0–6 2 7 3-4 Description Overcurrent Number of overcurrent events reached during PHY frame transmission. events Valid if the current control feature is active only. number Notification about the overcurrent reached during last transmission. Valid Overcurrent whether the current control is active or not. notification 0: max. output current [·] value not reached 1: max. output current [·] value reached ZC delay Delay between the last transmitted UW last bit and the mains zerocrossing (signed value), expressed in 13 µs step. DocID17385 Rev 3 27/43 43 Host interface 3.3.14 UM0932 PHY_DataIndication (26h) This command is sent by the ST7580 device after a reception of a power line frame in compliance with PHY frame specification (Figure 3) and it exports the PHY_Data indication service (Section 2.4). The command notification occurs if the modem is set at PHY layer only at MIB object Modem Config 00h (Section 4.2.1), as in the diagram flow in Figure 5. Table 38. PHY_DataIndication: Syntax Source Command(Args) Possible response ST7580 PHY_DataIndication (IndicationData) None Table 39. PHY_DataIndication: indicationData Byte Index Bit Index 0-2 0 3.3.15 Label Description and available values Frame modulation on the last data indication received 0: B-PSK 1: Q-PSK 2: 8-PSK Frame modulation 3: B-FSK 4: B-PSK coded 5: Q-PSK coded 6: Reserved 7: B-PSK coded with Peak Noise Avoidance 3 RX channel RX channel on the last data indication received 0: low channel 1: high channel 4-7 PGA value PGA value on the last data indication received 1 SNR SNR estimated over the Unique Word reception (signed value, valid for PSK received frames only, equal to 255 – no meaning – for FSK received frames) 2-3 ZC delay Delay between the received UW last bit and the mains zerocrossing (signed value), expressed in 13 µs step 4 - 254 PHY payload Received payload (up to 251 bytes) DL_DataRequest (50h) This command is sent by the external host to request data transmission and it exports the DL_Data transmission service (Section 2.3). 28/43 If accepted, the ST7580 constructs a DL frame (Figure 3) that is transmitted over the power line according to the details expressed in RequestData field (same format as PHY_DataRequest,Table 35) and with automatically appended CRC field with the format selected in MIB object Modem Config (00h, Section 4.2.1). A positive DL_DataConfirm (Section 3.3.16) is generated at the end of the transmission If refused, the modem generates a DL_DataError (Table 12). DocID17385 Rev 3 UM0932 Host interface Table 40. DL_DataRequest: Syntax Source Command(Args) Possible Response Request accepted: DL_DataConfirm External host DL_DataRequest(RequestData) (ConfirmData) Request rejected: DL_DataError (ErrorData) 3.3.16 DL_DataConfirm (51h) This command is sent by the ST7580 to provide a positive confirmation to a DL_DataRequest (Section 3.3.15) previously requested by the external host. Table 41. DL_DataConfirm: Syntax Source Command(Args) Possible response ST7580 DL_DataConfirm (ConfirmData) None The ConfirmData field has the same format as for PHY_DataConfirm (see Table 37). 3.3.17 DL_DataIndication (52h) This command is sent by the ST7580 after a reception of a power line frame in compliance with DL frame specification (Figure 3, i.e. with a CRC correct field) and it exports the DL_Data indication service (Section 2.4). The command notification occurs if the modem is set for receiving DL or SS frames at MIB object Modem Config 00h (Section 4.2.1), as in the diagram flow in Figure 5. The IndicationData fields are the same as for PHY_DataIndication (Table 39). Table 42. DL_DataIndication: Syntax 3.3.18 Source Command(Args) Possible response ST7580 DL_DataIndication (IndicationData) None DL_SnifferIndication (5Ah) This command is sent by the ST7580 after a reception of a power line frame in compliance with DL frame specification (Figure 3, i.e. with a wrong CRC field) and it exports the DL_Sniffer indication service (Section 2.4). The command notification occurs if the modem is set for receiving DL or SS frames at MIB object Modem Config 00h (Section 4.2.1), as in the diagram flow in Figure 5. The IndicationData fields are the same as for PHY_DataIndication (Table 39). The payload field presents the wrong CRC bytes also. Table 43. DL_SnifferIndication: Syntax Source Command(Args) Possible response ST7580 DL_SnifferIndication (IndicationData) None DocID17385 Rev 3 29/43 43 Host interface 3.3.19 UM0932 SS_DataRequest (54h) This command is sent by the external host to request data transmission and it exports the SS_Data transmission service (Section 2.3). If accepted, the ST7580 constructs an SS frame (Figure 4) that is transmitted over the power line in accordance with the details expressed in RequestData field (Table 46). A positive SS_DataConfirm (Section 3.3.20) is generated at the end of the transmission. If refused, the modem generates an SS_DataError (Table 12). Table 44. SS_DataRequest: Syntax 30/43 Source Command(Args) External host SS_DataRequest(RequestData) Possible response Request accepted: SS_DataConfirm (ConfirmData) Request rejected: SS_DataError (ErrorData) DocID17385 Rev 3 UM0932 Host interface Table 45. SS_DataRequest: RequestData Byte index Bit index 0 0 Label Selection of frequency to use between MIB and custom frequency Custom / MIB 0: TX frequency is the high or low frequency as in PHY_Config frequency (Section 4.2.2) MIB object. 1: TX frequency is specified in bytes [1 3] (TX frequency). 1 Frequency overwrite Selection of PHY_Config MIB object overwrite (Section 4.2.2). This field is taken into account if the Custom / MIB frequency bit is equal to “1” only. 0: TX frequency expressed in the following bytes (1 – 3) won't overwrite the frequency in PHY_Config (Section 4.2.2) MIB object 1: TX frequency expressed in the following bytes (1 – 3) overwrites frequency in PHY_Config (Section 4.2.2) MIB object 2 Frequency set Selection of frequency in PHY_Config MIB object 0: TX frequency is the LowFrequency in PHY_Config MIB object 1: TX frequency is the HighFrequency in PHY_Config MIB object 3 4–6 7 1-3 Selection of TX gain for frame transmission 0: TX gain set as in PHY Config MIB object (TX gain parameter Gain selector (Section 4.2.2)). 1: TX gain is specified in the following TX Gain byte (2 or 4). Frame modulation Modulation of the frame to be transmitted 0: B-PSK 1: Q-PSK 2: 8-PSK 3: B-FSK 4: B-PSK coded 5: Q-PSK coded 6: Reserved 7: B-PSK coded with Peak Noise Avoidance Zero crossing 0: Transmission frame starts on any instant synchronizati 1: Transmission frame start after ZC delay value defined in PHY Config on MIB object (Table 54) TX frequency 4 (or 1) Description and available values 0–4 TX gain 5–7 Unused Frequency value (in Hz) that the output signal is modulated around, to be expressed if “Custom / MIB frequency” bit is equal to “1” only. TX gain to be expressed if Gain Selector bit is equal to “1” only. 5 (or 2 or 4) Header length Length of header field. If payload is not empty, it must be: 4 = Header Length = Payload length < 226). If payload is empty, it must be: 16 = Header Length < 226). 6 231 (or 3 228, 5 230) Header and payload Header and payload to be sent (from 0 to 226 byte: Header and Payload to be sent as unique buffer). If payload field is present, must be greater than or equal to 4 If payload field is not present, must be greater than or equal to 16. DocID17385 Rev 3 31/43 43 Host interface 3.3.20 UM0932 SS_DataConfirm (55h) This command is sent by the ST7580 to provide a positive confirmation to a SS_DataRequest (Section 3.3.15) previously requested by the external host. Table 46. SS_DataConfirm: Syntax Source Command(Args) Possible response ST7580 SS_DataConfirm (ConfirmData) None The ConfirmData field has the same format as for PHY_DataConfirm (see Table 37). 3.3.21 SS_DataIndication (56h) This command is sent by the ST7580 after a reception of a power line frame in compliance with SS frame specification (Figure 4, i.e. with a CRC correct field and encrypted according to SS_Key MIB object, Section 4.2.3) and it exports the SS_Data indication service (Section 2.4). The command notification occurs if the modem is set for receiving SS frames at MIB object Modem Config 00h (Section 4.2.1), as in the diagram flow in Figure 5. Table 47. SS_DataIndication: Syntax Source Command(Args) Possible response ST7580 SS_DataIndication (IndicationData) None Table 48. SS_DataIndication: IndicationData Byte index Bit index Label Description and available values Frame modulation Frame modulation on the last DataIndication received 0: B-PSK 1: Q-PSK 2: 8-PSK 3: B-FSK 4: B-PSK coded 5: Q-PSK coded 6: Reserved 7: B-PSK coded with Peak Noise Avoidance 3 RX channel RX channel on the last DataIndication received 0: low channel 1: high channel 4–7 PGA value PGA value on the last DataIndication received 0–2 0 1 SNR SNR estimated over the Unique Word reception (signed value, valid for PSK received frames only, equal to 255 – no meaning – for FSK received frames) 2–3 ZC delay Delay between the received UW last bit and the mains zero-crossing (signed value), expressed in 13 µs step 4 - 229 SS header and payload 32/43 Received header and payload (up to 226 bytes) DocID17385 Rev 3 UM0932 3.3.22 Host interface SS_SnifferIndication (5Eh) This command is sent by the ST7580 after a reception of a power line frame that couldn't be decrypted through the key value stored in the MIB object SS_Key 02h (Section 4.2.3) and it exports the SS_Sniffer indication service (Section 2.4). The command notification occurs if the modem is set for receiving SS frames at MIB object Modem Config 00h (Section 4.2.1), as in the diagram flow in Figure 5. The IndicationData fields are the same as for PHY_DataIndication (Table 39). The payload field won't present the wrong CRC bytes. Table 49. SS_SnifferIndication: Syntax 3.3.23 Source Command(Args) Possible response ST7580 SS_SnifferIndication (IndicationData) None CMD_SyntaxError (36h) This command is sent by the ST758 to the external host after receiving a local frame with the value declared in command code not corresponding to any command listed in Table 10. Table 50. CMD_SyntaxError: Syntax Source Command(Args) Possible response ST7580 CMD_SyntaxError(ErrorData) None Table 51. CMD_SyntaxError:ErrorData Byte index 0 Label Description ERROR Wrong command code declared in the previous local frame by external host DocID17385 Rev 3 33/43 43 Management information base (MIB) 4 UM0932 Management information base (MIB) The management information base collects all the parameters that allow the host to set and control the modem operation. As explained in Section 3, the MIB objects can be directly accessed to update and read their values through dedicated commands (Section 3.3.4, 3.3.63.3.6, and 3.3.8). 4.1 MIB table Table 52 lists all the available MIB objects, with the related indexes, the default values and the allowed operation (read write). Table 52. Management information base (MIB) objects 34/43 Index Name Factory default value 00h Modem configuration 11h 1 R/W 01h PHY configuration 014FF00119400E15000002359B58h 14 R/W 02h SS key 00000000000000000000000000000000h 16 R/W 03h Reserved 00h 1 R 04h Last data indication 00000000h 4 R 05h Last TX confirm 0000000000h 5 R 06h PHY_Data 00000000000000000000h 10 R/E 07h DL_Data 0000000000000000h 8 R/E 08h SS_Data 00000000000000000000h 10 R/E 09h Host interface timeout C8280Ah 3 R/W 0Ah Firmware version 00420097h 4 R DocID17385 Rev 3 Length [byte] R/W/E UM0932 Management information base (MIB) 4.2 MIB parameters In this section all the MIB object is described in detail. 4.2.1 00h (Modem configuration) This object stores the setting used to functionally configure the modem. It can be read or written. Table 53. MIB object 00h: MIB_WriteRequest and MIB_ReadRequest data format Byte index Bit index Label Factory default value Access mode Active layer for received frames 0: PHY layer 1: DL layer 2: SS layer 1 (DL layer) Sniffer mode Sniffer feature on received frames (active on DL and SS layer only) 0: not active 1: active 0 (not active) 3-4 CRC length CRC length on DL frames 0: 1 byte (CRC-8) 1: 2 byte (CRC-16), big endian 2: 4 byte (CRC-32), little endian 3: 4 byte (CRC-32), big endian 2 5 Reserved Always equal to 0 0 6 DL CRC on PHY length Fields of DL frame (Figure 3) involved in CRC calculation active on handled DL and SS frames only) 0: CRC calculated over DL payload only 1: CRC calculated over DL payload and PHY length 0 7 Unused Unused value 0 0–1 2 0 4.2.2 Description and available values 01h (PHY layer configuration) This object stores the settings used to configure the modem at physical layer. It can be read or written. Table 54. MIB object 01h: MIB_WriteRequest and MIB_ReadRequest data format Byte index Bit index Label Description and available values Factory default value 02 High frequency High frequency used for communication [Hz]. Any value in CENELEC band A, B, C, D. 86000 (014FF0h) 35 Low frequency Low frequency used for communication [Hz]. Any value in CENELEC band A, B, C, D. 72000 (011940h) DocID17385 Rev 3 35/43 43 Management information base (MIB) UM0932 Table 54. MIB object 01h: MIB_WriteRequest and MIB_ReadRequest data format (continued) Byte index Bit index Label 0 RX mode 1 RX high channel modulation 3 TX current limiting enable flag Current control 0: disabled 1: enabled Factory default value 0 (high channel) 1 (PSK) 1 (PSK) 1 (enabled) 4-7 Unused Unused bits 0-4 TX gain Default TX gain value to be used in transmission (when Gain Selector parameter in any DataRequestsee Table 35, is equal to 0) 5-7 Reserved Reserved bits 0 ZC delay If ZC delay parameter in any DataRequest is equal to 1 (Table 35), delay set during transmission between the outgoing frame start and the mains zero-crossing (signed value), expressed in 13 µs step 0 0-1 2-7 36/43 Functional modulation on high channel 0: FSK 1: all allowed PSK modulations 2 8-9 10 Active channels for reception 0: high channel only 1: dual channel Functional modulation on low channel (ignored if RX RX low channel mode is high channel only) modulation 0: FSK 1: all allowed PSK modulations 6 7 Description and available values 0 Preamble length for PSK communication. 0: 16 bit PSK preamble 1: 24 bit length 2: 32 bit 3: 40 bit Unused Unused bits 15h (21) 2 (32 bit) 0 DocID17385 Rev 3 UM0932 Management information base (MIB) Table 54. MIB object 01h: MIB_WriteRequest and MIB_ReadRequest data format (continued) Byte index Bit index 0-1 2 11 3–4 Label FSK bit rate FSK deviation Description and available values Factory default value Bit rate for FSK communication. 0: 1200 bps 1: 2400 bps 2: 4800 bps 3: 9600 bps 1 (2400 bps) Deviation for FSK communication. 0: 0.5 1: 1 1 Preamble length for FSK communication. 0: 16 bit FSK preamble 1: 24 bit length 2: 32 bit 3: 40 bit 2 (32 bit) Unique word length for FSK communication. 0: 8 bit 1: 16 bit 5 FSK unique word length 6 Reserved Reserved bit 0 7–8 Unused Unused bits 0 1 (16 bit) 12 FSK unique word MSByte FSK modulation unique word MSB (used if unique word length is 16 bits only) 9Bh 13 FSK unique word LSByte FSK modulation unique word LSB 58h 4.2.3 02h (SS Key) This object holds the key used by the SS sub-system to encrypt and decrypt transmitted and received data. It can be read or written. Table 55. MIB object 02h: MIB_WriteRequest and MIB_ReadRequest Data format Byte index Label 0 15 SS Key 4.2.4 Description and available values Factory default value 128-bit AES key used to process transmitted and received frames. 00000000000000000000000000000000 04h (Last data indication) This object stores information about the last indication message received (among PHY_DataIndication Section 3.3.14, DL_DataIndication Section 3.3.17, SS_DataIndication Section 3.3.21, DL_SnifferIndication Section 3.3.17, SS_SnifferIndication Section 3.3.22). Its field values are equal to those notified by the last indication message and presented in the four first bytes (0 3) of the IndicationData (Table 39, 48). It can be read only. DocID17385 Rev 3 37/43 43 Management information base (MIB) UM0932 Table 56. MIB object 04h: MIB_WriteRequest and MIB_ReadRequest data format Byte Bit index index Label Factory default value 0–2 Frame modulation Frame modulation on the last indication received (Data/Sniffer, PHY, DL, SS) 0: B-PSK 1: Q-PSK 2: 8-PSK 3: B-FSK 4: B-PSK coded 5: Q-PSK coded 6: Reserved 7: B-PSK coded with Peak Noise Avoidance 3 RX channel RX channel on the last Indication received 0: low channel 1: high channel 0 4–7 PGA Value PGA value on the last indication received 0 0 1 SNR 2–3 ZC Delay 4.2.5 Description and available values SNR estimated over the Unique Word reception (signed value, valid for PSK received frames only, equal to 255 – no meaning – for FSK received frames) Delay between the received UW last bit and the mains zerocrossing (signed value), expressed in 13 µs step 0 00h 0000h 05h (Last TX Confirm) This object stores information about last confirm message received (among PHY_DataConfirm Section 3.3.13, DL_DataConfirm Section 3.3.16, SS_DataConfirm Section 3.3.20). Its field values are equal to those notified by last confirm message and presented in the first five bytes (0 2) of the ConfirmData (Table 37). It can be read only. 38/43 DocID17385 Rev 3 UM0932 Management information base (MIB) Table 57. MIB object 05h: MIB_WriteRequest and MIB_ReadRequest data format Byte Bit index index Label 0–1 Max. temp. 2–6 Max. gain 7 Unused 0 Factory default value Max. temperature reached during PHY frame transmission. 0: T < 70 °C (typical) 1: 70 °C < T < 100 °C (typical) 2: 100 °C < T < 125 °C (typical) 3: T > 125 °C (typical) 0 If current control feature (MIB object PHY Config 01h, Table 54) is active, max. gain used during the last transmission. If current control feature is not active, gain used during last transmission. 0 0 0–1 Min. temp Min. temperature reached during PHY frame transmission. 0: T < 70 °C (typical) 1: 70 °C < T < 100 °C (typical) 2: 100 °C < T < 125 °C (typical) 3: T > 125 °C (typical) 2–6 Min. gain If current control feature (MIB object PHY Config 01h, Table 54) is active, min. gain used during last transmission. If current control feature is not active, gain used during last transmission. 7 Unused 0–6 Overcurrent events number Number of overcurrent events reached during PHY frame transmission. Valid if the current control feature is active only. 0 7 Overcurrent notification Notification about the overcurrent reached during last transmission. Valid whether the current control is active or not. 0: max. output current [·] value not reached 1: max. output current [·] value reached 0 ZC Delay Delay between the last transmitted UW last bit and the mains zero-crossing (signed value), expressed in 13 µs step 0 1 2 3-4 Description 0 0 0 DocID17385 Rev 3 39/43 43 Management information base (MIB) 4.2.6 UM0932 06h (PHY Data) This object stores counters of power line frames transmitted or received by the ST7580 in compliance with physical frame features. It can be read or erased only. Table 58. MIB object 06h: MIB_WriteRequest and MIB_ReadRequest Data format Byte index Label 0–1 Received unique word counter PHY valid received frames counter 2-3 Description Counter of preamble and unique word sequences received 0000h Counter of valid received PHY frame (right preamble, UW). If the modem is set at DL or SS layer (through MIB object Modem Configuration 00h, Section 4.2.1), it includes any wrong and malformed frames (CRC wrong, invalid key) also. Unsigned value. 0000h PHY transmitted frames Counter of valid transmitted PHY frames counter (PHY_DataConfirm number). Unsigned value. 4-5 6–7 PHY refused transmission counter 8-9 Network period 4.2.7 Factory default value 0000h Counter of refused transmissions on PHY frames (PHY_DataError number). Unsigned value. 0000h Mains period, expressed in 13 µs step, updated during last reception or transmission 0000h 07h (DL Data) This object stores counters of power line frames transmitted or received by the ST7580 in compliance with data link frame features. It can be read or erased only. Table 59. MIB object 07h: MIB_WriteRequest and MIB_ReadRequest data format Byte index Label Description Factory default value Counter of valid received DL frames (right CRC). If the modem is set the SS layer (through MIB object Modem Configuration 00h, Section 4.2.1), it includes any SS wrong and malformed frames (invalid key) as well. Unsigned value. 0000h Counter of invalid received DL frames (wrong CRC). Unsigned value. 0000h 0–1 DL valid received frames counter 2-3 DL invalid received frames counter 4-5 DL transmitted frames counter Counter of valid transmitted DL frames (DL_DataConfirm number). Unsigned value. 0000h 6–7 DL refused transmission counter Counter of refused transmissions on DL frames (DL_DataError number). Unsigned value. 0000h 40/43 DocID17385 Rev 3 UM0932 Management information base (MIB) 4.2.8 08h (SS Data) This object stores counters of power line frames transmitted or received by the ST7580 in compliance with data link frame features. It can be read or erased only. Table 60. MIB object 08h: MIB_WriteRequest and MIB_ReadRequest Data format Byte index Label Description Factory default value 0–1 SS valid received frames counter Counter of valid received SS frames (SS_DataIndication number). Unsigned value. 0000h 2–3 SS not authentic received frames counter Counter of not authentic received SS frames (wrong digest). Unsigned value. 0000h 4–5 SS malformed received Counter of malformed received SS frames frames (wrong length). Unsigned value. 0000h 6–7 SS transmitted frames Counter of valid transmitted SS frames counter (SS_DataConfirm number). Unsigned value. 0000h SS refused transmission counter 8-9 4.2.9 Counter of refused transmissions on SS frames (SS_DataError number). Unsigned value. 0000h 09h (host interface timeout) This object stores the host interface timeout values that the ST7580 can handle (Table 6). It can be read or written. Table 61. MIB object 09h: MIB_WriteRequest and MIB_ReadRequest Data format Byte index Label 0 T SR T SR timeout value [ms] 200 (C8h) 1 T ACK T ACK timeout value [ms] 40 (28h) 2 T IC T IC timeout value [ms] 10 (0Ah) 4.2.10 Description and available values Factory default value 0Ah (firmware version) This object stores the embedded firmware version (ST internal reference). It can be read only. Table 62. MIB object 0Ah: MIB_WriteRequest and MIB_ReadRequest data format Byte index Label Description and available values Factory default value 0-3 FW version FW release number (ST internal reference) 00420097h DocID17385 Rev 3 41/43 43 Reference 5 UM0932 Reference 6 STMicroelectronics, ST7580 datasheet. Revision history Table 63. Document revision history 42/43 Date Revision Changes 04-Nov-2011 1 Initial release 23-Oct-2012 2 – Corrected parameter (length fields) at Table 6, 35, 39 and 52 – Added parameters values on Table 45 02-Oct-2013 3 – Updated Table 8 and Table 19. – Minor modifications throughout document. DocID17385 Rev 3 UM0932 Please Read Carefully: Information in this document is provided solely in connection with ST products. STMicroelectronics NV and its subsidiaries (“ST”) reserve the right to make changes, corrections, modifications or improvements, to this document, and the products and services described herein at any time, without notice. All ST products are sold pursuant to ST’s terms and conditions of sale. Purchasers are solely responsible for the choice, selection and use of the ST products and services described herein, and ST assumes no liability whatsoever relating to the choice, selection or use of the ST products and services described herein. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted under this document. If any part of this document refers to any third party products or services it shall not be deemed a license grant by ST for the use of such third party products or services, or any intellectual property contained therein or considered as a warranty covering the use in any manner whatsoever of such third party products or services or any intellectual property contained therein. UNLESS OTHERWISE SET FORTH IN ST’S TERMS AND CONDITIONS OF SALE ST DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY WITH RESPECT TO THE USE AND/OR SALE OF ST PRODUCTS INCLUDING WITHOUT LIMITATION IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE (AND THEIR EQUIVALENTS UNDER THE LAWS OF ANY JURISDICTION), OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. ST PRODUCTS ARE NOT DESIGNED OR AUTHORIZED FOR USE IN: (A) SAFETY CRITICAL APPLICATIONS SUCH AS LIFE SUPPORTING, ACTIVE IMPLANTED DEVICES OR SYSTEMS WITH PRODUCT FUNCTIONAL SAFETY REQUIREMENTS; (B) AERONAUTIC APPLICATIONS; (C) AUTOMOTIVE APPLICATIONS OR ENVIRONMENTS, AND/OR (D) AEROSPACE APPLICATIONS OR ENVIRONMENTS. WHERE ST PRODUCTS ARE NOT DESIGNED FOR SUCH USE, THE PURCHASER SHALL USE PRODUCTS AT PURCHASER’S SOLE RISK, EVEN IF ST HAS BEEN INFORMED IN WRITING OF SUCH USAGE, UNLESS A PRODUCT IS EXPRESSLY DESIGNATED BY ST AS BEING INTENDED FOR “AUTOMOTIVE, AUTOMOTIVE SAFETY OR MEDICAL” INDUSTRY DOMAINS ACCORDING TO ST PRODUCT DESIGN SPECIFICATIONS. PRODUCTS FORMALLY ESCC, QML OR JAN QUALIFIED ARE DEEMED SUITABLE FOR USE IN AEROSPACE BY THE CORRESPONDING GOVERNMENTAL AGENCY. Resale of ST products with provisions different from the statements and/or technical features set forth in this document shall immediately void any warranty granted by ST for the ST product or service described herein and shall not create or extend in any manner whatsoever, any liability of ST. ST and the ST logo are trademarks or registered trademarks of ST in various countries. Information in this document supersedes and replaces all information previously supplied. The ST logo is a registered trademark of STMicroelectronics. All other names are the property of their respective owners. © 2013 STMicroelectronics - All rights reserved STMicroelectronics group of companies Australia - Belgium - Brazil - Canada - China - Czech Republic - Finland - France - Germany - Hong Kong - India - Israel - Italy - Japan Malaysia - Malta - Morocco - Philippines - Singapore - Spain - Sweden - Switzerland - United Kingdom - United States of America www.st.com DocID17385 Rev 3 43/43 43