Lely core libraries  1.9.2
doc/co/standards.md
1 CiA standards support
2 =====================
3 
4 CiA 301 v4.2.0: CANopen application layer and communication profile
5 -------------------------------------------------------------------
6 
7 ### Implemented
8 
9 - Process data object (PDO): lely/co/rpdo.h, lely/co/tpdo.h
10 - Service data object (SDO): lely/co/csdo.h, lely/co/ssdo.h
11 - Synchronization object (SYNC): lely/co/sync.h
12 - Time stamp object (TIME): lely/co/time.h
13 - Emergency object (EMCY): lely/co/emcy.h
14 - Network management (NMT): lely/co/nmt.h
15 - Network initialization and system boot-up
16 - Object dictionary: lely/co/dev.h, lely/co/obj.h
17  - 1000: Device type
18  - 1001: Error register
19  - 1003: Pre-defined error field
20  - 1005: COB-ID SYNC message
21  - 1006: Communication cycle period
22  - 1007: Synchronous window length
23  - 100C: Guard time
24  - 100D: Life time factor
25  - 1012: COB-ID time stamp object
26  - 1013: High resolution time stamp
27  - 1014: COB-ID EMCY
28  - 1015: Inhibit time EMCY
29  - 1016: Consumer heartbeat time
30  - 1017: Producer heartbeat time
31  - 1018: Identity object
32  - 1019: Synchronous counter overflow value
33  - 1026: OS prompt: [cocat/cocatd](@ref md_doc_co_cocat)
34  - 1028: Emergency consumer object
35  - 1029: Error behavior object
36  - 1200..127F: SDO server parameter
37  - 1280..12FF: SDO client parameter
38  - 1400..15FF: RPDO communication parameter
39  - 1600..17FF: RPDO mapping parameter
40  - 1800..19FF: TPDO communication parameter
41  - 1A00..1BFF: TPDO mapping parameter
42 
43 ### Not implemented/Application specific
44 
45 - Multiplex PDO (MPDO)
46 - Object dictionary:
47  - 1002: Manufacturer status register
48  - 1008: Manufacturer device name
49  - 1009: Manufacturer hardware version
50  - 100A: Manufacturer software version
51  - 1010: Store parameters
52  - 1011: Restore default parameters
53  - 1020: Verify configuration
54  - 1021: Store EDS
55  - 1022: Store format
56  - 1023: OS command
57  - 1024: OS command mode
58  - 1025: OS debugger interface
59  - 1027: Module list
60  - 1FA0..1FCF: Object scanner list
61  - 1FD0..1FFF: Object dispatching list
62 
63 CiA 302 v4.1.0: Additional application layer functions
64 ------------------------------------------------------
65 
66 ### Implemented
67 
68 - Network management (CiA 302-2): lely/co/nmt.h
69  - Startup:
70  - NMT startup
71  - NMT startup simple
72  - Start process boot NMT slave
73  - Boot NMT slave
74  - Check configuration
75  - Check NMT state
76  - Error status
77  - Error control:
78  - Start error control
79  - Error handler
80  - Bootup handler
81  - Object dictionary:
82  - 102A: NMT inhibit time
83  - 1F80: NMT startup
84  - 1F81: NMT slave assignment
85  - 1F82: Request NMT
86  - 1F84: Device type identification
87  - 1F85: Vendor identification
88  - 1F86: Product code
89  - 1F87: Revision number
90  - 1F88: Serial number
91  - 1F89: Boot time
92  - 1F8A: Restore configuration
93 - Configuration and program download (CiA 302-3): lely/co/nmt.h
94  - Configuration manager:
95  - 1F20: Store DCF
96  - 1F22: Concise DCF
97  - 1F25: Configuration request
98  - 1F26: Expected configuration date
99  - 1F26: Expected configuration time
100  - Program download:
101  - Check and update program software version
102  - Objects for program download on a CANopen manager:
103  - 1F55: Expected software identification
104  - 1F58: Program data
105 
106 ### Not implemented/Application specific
107 
108 - Network management (CiA 302-2):
109  - Startup:
110  - NMT flying master startup
111  - Additional NMT master services and protocols
112  - Object dictionary:
113  - 1F83: Request node guarding
114  - 1F90: NMT flying master timing parameters
115  - 1F91: Self starting node timing parameters
116 - Configuration and program download (CiA 302-3):
117  - Configuration manager:
118  - 1F21: Store format
119  - 1F23: Store EDS NMT slave
120  - 1F24: Store format EDS NMT slave
121  - Program download:
122  - Bootloader
123  - Objects for program download on a CANopen device:
124  - 1F50: Program data
125  - 1F51: Program control
126  - 1F56: Program software identification
127  - 1F57: Flash status identification
128 - Network variables and process image (CiA 302-4)
129 - SDO manager (CiA 302-5)
130 - Network redundancy (CiA 302-6)
131 - Multi-level networking (CiA 302-7)
132 
133 CiA 305 v3.0.0: Layer setting services (LSS) and protocols: lely/co/lss.h
134 -------------------------------------------------------------------------
135 
136 ### Implemented
137 
138 - Switch state:
139  - Switch state global
140  - Switch state selective
141 - Configuration:
142  - Configure node-ID
143  - Configure bit timing parameters
144 - Inquiry:
145  - Inquire LSS address
146  - Inquire node-ID
147 - Identification:
148  - LSS identify remote slave
149  - LSS identify slave
150  - LSS identify non-configured remote slave
151  - LSS identify non-configured slave
152  - LSS Fastscan
153 
154 ### Application specific
155 
156 - Configuration:
157  - Activate bit timing parameters
158  - Store configuration
159 
160 CiA 306 v1.3.7: Electronic device description: lely/co/dcf.h
161 ------------------------------------------------------------
162 
163 EDS/DCF files can be parsed at runtime or be compiled with a program as a static
164 device description (lely/co/sdev.h). [dcf2c](@ref md_doc_co_dcf2c) can be used
165 to generate a static device description in C from an EDS/DCF file.
166 
167 ### Implemented
168 
169 - Electronic Data Sheet and Device Configuration File (CiA 306-1)
170  - Electronic data sheet specification:
171  - General device information
172  - Object dictionary:
173  - Mapping of dummy entries
174  - Object descriptions:
175  - Object lists
176  - Object description
177  - Specific flags
178  - Compact storage:
179  - PDO definitions
180  - Array values
181  - Device configuration file specification:
182  - Object sections:
183  - Parameter value in standard description
184  - Denotation
185  - Compact storage:
186  - PDO definitions
187  - Array values
188  - Device commissioning
189 
190 ### Not implemented
191 
192 - Electronic Data Sheet and Device Configuration File (CiA 306-1):
193  - Electronic data sheet specification:
194  - File information
195  - Object dictionary:
196  - Object descriptions:
197  - Compact storage:
198  - Network variables
199  - Object links
200  - Comments
201  - Device configuration file specification:
202  - File information
203  - Object sections:
204  - Compact storage:
205  - Network variables
206  - Module concept
207 - Profile database specification (CiA 306-2)
208 - Network variable handling and tool integration (CiA 306-3)
209 
210 CiA 309 v2.0: Access from other networks
211 ----------------------------------------
212 
213 [coctl](@ref md_doc_co_coctl) is a Class 3 ASCII gateway providing shell-like
214 access to one or more CANopen networks.
215 
216 ### Implemented
217 
218 - General principles and services (CiA 309-1): lely/co/gw.h
219  - SDO access services:
220  - SDO upload
221  - SDO download
222  - Configure SDO time-out
223  - PDO access services:
224  - Configure RPDO
225  - Configure TPDO
226  - Read PDO data
227  - Write PDO data
228  - RPDO received
229  - CANopen NMT services:
230  - Start node
231  - Stop node
232  - Set node to pre-operational
233  - Reset node
234  - Reset communication
235  - Enable node guarding
236  - Disable node guarding
237  - Start heartbeat consumer
238  - Disable heartbeat consumer
239  - Error control event received
240  - Device failure management services:
241  - Emergency event received
242  - CANopen interface configuration services:
243  - Initialize gateway
244  - Set heartbeat producer
245  - Set node-ID
246  - Start emergency consumer
247  - Stop emergency consumer
248  - Boot-up forwarding
249  - Gateway management services:
250  - Set default network
251  - Set default node-ID
252  - Get version
253  - Layer setting services:
254  - LSS switch state global
255  - LSS switch state selective
256  - LSS configure node-ID
257  - LSS configure bit-rate
258  - LSS activate new bit-rate
259  - LSS store configuration
260  - Inquire LSS address
261  - LSS inquire node-ID
262  - LSS identify remote slave
263  - LSS identify non-configured remote slaves
264  - LSS Fastscan
265 - ASCII mapping (CiA 309-3): lely/co/gw_txt.h
266  - SDO access commands:
267  - Upload SDO
268  - Download SDO
269  - Configure SDO time-out
270  - PDO access access commands:
271  - Configure RPDO
272  - Configure TPDO
273  - Read PDO data
274  - Write PDO data
275  - RPDO received
276  - CANopen NMT access commands:
277  - Start node
278  - Stop node
279  - Set node to pre-operational
280  - Reset node
281  - Reset communication
282  - Enable node guarding
283  - Disable node guarding
284  - Start heartbeat consumer
285  - Disable heartbeat consumer
286  - Error control event received
287  - Device failure management commands:
288  - Emergency event received
289  - CANopen interface configuration access commands:
290  - Initialize gateway
291  - Set heartbeat producer
292  - Set node-ID
293  - Set command time-out
294  - Boot-up forwarding
295  - Gateway management access commands:
296  - Set default network
297  - Set default node-ID
298  - Get version
299  - Set command size
300  - Layer setting access commands:
301  - LSS switch state global
302  - LSS switch state selective
303  - LSS configure node-ID
304  - LSS configure bit-rate
305  - LSS activate new bit-rate
306  - LSS store configuration
307  - Inquire LSS address
308  - LSS inquire node-ID
309  - LSS identify remote slave
310  - Identify non-configured remote slaves
311  - LSS Fastscan
312 
313 ### Not implemented
314 
315 - General principles and services (CiA 309-1):
316  - SDO access services:
317  - Extended SDO upload
318  - Device failure management services:
319  - Read device error
320  - CANopen interface configuration services:
321  - Store configuration
322  - Restore configuration
323  - Set command time-out
324  - Gateway management services:
325  - Set command size
326  - Controller management services
327  - Layer setting services:
328  - LSS assign node-ID to LSS address
329  - LSS complete node-ID configuration
330 - Modbus/TCP mapping (CiA 309-2)
331 - ASCII mapping (CiA 309-3):
332  - Device failure management commands:
333  - Read device error
334  - CANopen interface configuration commands:
335  - Store configuration
336  - Restore configuration
337  - Layer setting commands:
338  - LSS assign node-ID to LSS address
339  - LSS complete node-ID configuration
340 - Amendment 7 to Fieldbus Integration into PROFINET IO (CiA 309-4)
341 
342 CiA 315 v1.0.0: Generic frame: lely/co/wtm.h
343 --------------------------------------------
344 
345 [can2udp](@ref md_doc_co_can2udp) forms a bridge between the CAN bus and UDP by
346 converting CAN frames to and from generic frames.
347