SpaceLogic KNX Forum
Schneider Electric SpaceLogic KNX forum to get support and share knowledge including selection, installation and troubleshooting for spaceLYnk, Wiser for KNX, eConfigure KNX, SpaceLogic KNX Hybrid module and other topics.
Link copied. Please paste this link to share this article on your social media post.
Has anyone encountered a similar problem?
I have a problem with the control of a Haier air conditioning system. This system is controlled using the SpaceLYnk controller and the YCJ-A002 adapter (Haier) via the Modbus RTU protocol and also separately from another wired remote control. The problem is that when controlling the air conditioner from the remote control, no state change is registered in the SpaceLYnk controller. That is, if you turn on the air conditioner from the remote control (“ON/1” mode), the register of the YCJ-A002 adapter (Haier) responsible for the state of the air conditioner changes, but in the SpaceLYnk controller it remains in “OFF/0” mode.
I also attach a file with Modbus mapping for the YCJ-A002 adapter (Haier) for a more complete picture.
Link copied. Please paste this link to share this article on your social media post.
Hello Yevhenii_Kuz!
Would it be possible to create a little video which shows in detail what you are doing and the dedicated results?
Link copied. Please paste this link to share this article on your social media post.
Good day!
Sorry for not responding for a long time. Unfortunately, until yesterday we were not able to visit the site to clarify the situation. Preliminarily, I think that the problem with Modbus in the spaceLynk controller. I am attaching a video and log from the program for reading Modbus signals for better understanding.
What is on the video:
Video 1. We disconnected the Modbus bus from the controller and connected to it directly using a special RS485 to USB adapter. Using the SimpleTester program, we tried to read the status from the air conditioner and then change it. The video shows that the status (register 0) is read and changed correctly, and the air conditioner was physically turned on and off (this is not visible in the video because the air conditioner is in another room). We also tried to read and change the temperature setpoint register and it worked too. From all of the above, we concluded that Modbus on the Haier board is working correctly.
Video 2: In the second video, we try to connect the air conditioners via Modbus to the spaceLynk controller. In the video, you can see that the controller finds three devices on the Modbus bus (there are three such air conditioners with ID 2, 3, 4 at the site). After adding one of these air conditioners (we tested the air conditioner with ID 2), we tried to read its status using the Read test and got “Operation time out”, which seems to indicate that the device has lost connection. As far as we understood, the controller establishes communication with the device for a short period of time and then loses it.
I'll attach the second video with the next message as sending two videos at the same time exceeds the 143 MB limit
Kind regards
Yevhenii
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Hello Yevhenii_Kuz!
Thank you for the videos 🙂
Did you tried with 2 Stopbits-Setting. Couldnt see which one was set within the USB-SW on the PC.
Please correct your json-profile and make a test with it instead of using the read-test function.
Of course, both should work. But I would give it a try.
Link copied. Please paste this link to share this article on your social media post.
Hello Thomas!
Thank you for your reply!
We will try to change the parameter to “None (2 stop bit)” and let you know if it worked, thanks!
About the json-profile. As far as I understood, you propose to change the addresses of the registers you selected so that they do not match? I'm not sure that there is a mistake here, since these addresses refer to different memory locations and this json-profile was made according to the mapping provided by haier (I will attach a photo of the mapping table to this message), as well as following the example of the built-in mapping on TC900 (I will also attach it). I would be very grateful for a response and additional explanations if I misunderstood you!
Best regards
Yevhenii
Link copied. Please paste this link to share this article on your social media post.
Hello Yevhenii_Kuz!
I looked to the Haier_Mapping which you provided.
I guess it is a question how you read it.
Could it be that we have only 3 addresses (01, 03, 04) here?
And that in address 03 you will find several information.
With code number 0 you will get the temperature.
With code number 1 the machine running code.
And with code 2 the Fan speed etc.?
It looks like that addresses are written here with a starting "0"?!
I can be wrong, so please get me in the correct way.
Link copied. Please paste this link to share this article on your social media post.
Hello Thomas!
Thank you for your reply!
I understand this as function codes that are responsible for accessing certain memory areas defined by the Modbus protocol. That is, for example, the function code “01-Read Coils” is used to read one register from the “Coil” memory area and this means that the addresses that are in the table after this code refer to the “Coil” memory area. As far as I understand, the addressing of each memory location can contain addresses from 0 to n-1. I am attaching photos with visual information for better understanding and links to their source. I would be grateful for your answer and your thoughts on this subject!
link to the source of the images
Best regards
Yevhenii
Link copied. Please paste this link to share this article on your social media post.
Hello Yevhenii_Kuz!
Many THANKS for the clarification with the memory. You are fully right, it should work like this.
Did you checked if it made a difference with the parity setting?
Can you try to implement the following by each register line within your profile "read_delay": 1 (which includes a break of one second) to slow down the communication process?
Link copied. Please paste this link to share this article on your social media post.
Hello Thomas!
Thank you for your reply!
We tried to change the “Parity” parameter to “None (2 stop bits)” and unfortunately it didn't work. At the “RTU scan” stage, the devices were not found at all.
I'll try to make changes to the json-profile according to your recommendations (I'm attaching the file with the changes) and try to start the system. As soon as I get the results, I'll get back to you. Thank you!
Best regards
Yevhenii
Link copied. Please paste this link to share this article on your social media post.
Unfortunately, the changes made did not lead to a positive result. We got the same result as in video 2.
Link copied. Please paste this link to share this article on your social media post.
Hello @Thomas_Rohde !
We have the ability to provide remote access to the controller's web interface, for example, through the AnyDesk program. Can you connect to us and help us solve this issue?
Best regards
Yevhenii
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.