<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to CANopen Slave SDO Read Problem</title><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/795e18af16/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/795e18af16/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/CODESYS-V2/thread/795e18af16/</id><updated>2020-02-27T20:16:55.677000Z</updated><subtitle>Recent posts to CANopen Slave SDO Read Problem</subtitle><entry><title>CANopen Slave SDO Read Problem</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/795e18af16/?limit=25#3c15" rel="alternate"/><published>2020-02-27T20:16:55.677000Z</published><updated>2020-02-27T20:16:55.677000Z</updated><author><name>futony</name><uri>https://forge.codesys.com/u/futony/</uri></author><id>https://forge.codesys.com72a75e639695b69d121127cc828f85636c46c04c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I used CoDeSys to set up a PLC controller as a CANopen slave node on the bus, some global variables are defined as SDO objects in the Parameter Manager. However, when I tried to test it with PCANview by manually sending a 0x601 message (slave node ID = 1, first byte = 0x40, followed by index and sub-index of the SDO object I wanted to read), I always got a reply 0x581 message with the first byte as 0x80, which is a slave abort message. I want to know what was wrong, I guess the SDO reply message should be automatically handled by CoDeSys library as long as the SDO object is defined, is it true? Do I need to call CanOpenSendSDO function in the program to manually send out the reply every time after receiving a request? Thank you for your help.&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>