-
Notifications
You must be signed in to change notification settings - Fork 423
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[read_write_node]: [TxRxResult] There is no status packet! #556
Comments
Hi @Alberto-D
Thanks! |
Already did it, but i get the same error |
Also tried a brand new installation in a raspberry pi 4 4gb and get the same error |
Hi @Alberto-D Could you share the entire code you have tested so that I can try it as well? Thanks! |
Here is all the code, i don think i have any non default configuration, i just got them out of the box and tried the tutorial, but the motors are AX-18A no AX-12 // Copyright 2021 ROBOTIS CO., LTD. /******************************************************************************* #include #include "dynamixel_sdk/dynamixel_sdk.h" #include "read_write_node.hpp" // Control table address for X series (except XL-320) // Protocol version // Default setting dynamixel::PortHandler * portHandler; uint8_t dxl_error = 0; ReadWriteNode::ReadWriteNode() this->declare_parameter("qos_depth", 10); const auto QOS_RKL10V = set_position_subscriber_ =
auto get_present_position =
get_position_server_ = create_service("get_position", get_present_position); ReadWriteNode::~ReadWriteNode() void setupDynamixel(uint8_t dxl_id) if (dxl_comm_result != COMM_SUCCESS) { // Enable Torque of DYNAMIXEL if (dxl_comm_result != COMM_SUCCESS) { int main(int argc, char * argv[]) // Open Serial Port // Set the baudrate of the serial port (use DYNAMIXEL Baudrate) setupDynamixel(BROADCAST_ID); rclcpp::init(argc, argv); auto readwritenode = std::make_shared(); // Disable Torque of DYNAMIXEL return 0; |
It worked, thanks. |
Hi @Alberto-D You may change the target address from Goal Position to Moving Speed as they have the same size data field. Thanks! |
Hello @Alberto-D Could I know how you resolve this problem? I am stuck in this problem. |
Hello, |
Which DYNAMIXEL SDK version do you use?
3.7.42, just downloaded it from github
Which programming language/tool do you use?
C++ and ROS 2 foxy , just followed this video https://www.youtube.com/watch?v=E8XPqDjof4U&lc=UgzLGFvmiJ2jGCAhF7h4AaABAg.9_CTmLi7sjU9_EBWtxBD9V
Which operating system do you use?
Ubuntu 20.04
Which USB serial converter do you use?
U2D2 from the Dynamixel starter set
Which DYNAMIXEL do you use?
AX-18A
Have you searched the issue from the closed issue threads?
Yes, there are similar results like Why does I get an error #535 , but their solutions did not work,
Please describe the issue in detail
When I try to move the motor using $ ros2 topic pub -1 /set_position dynamixel_sdk_custom_interfaces/msg/SetPosition "{id: 1, position: 2000}"
, the terminal where I launched $ ros2 run dynamixel_sdk_examples read_write_node
gives the next:
[INFO] [1648743728.153716516] [read_write_node]: Succeeded to open the port.
[INFO] [1648743728.154536648] [read_write_node]: Succeeded to set the baudrate.
[INFO] [1648743728.154596555] [read_write_node]: Succeeded to set Position Control Mode.
[INFO] [1648743728.154631328] [read_write_node]: Succeeded to enable torque.
[INFO] [1648743728.179269757] [read_write_node]: Run read write node
[INFO] [1648743820.779849420] [read_write_node]: [TxRxResult] There is no status packet!
I tried changing the baudrate to the required for this model (7343bps ~ 1 Mbps) and got the same error, except if i use 1000000 baudrate i get [read_write_node]: [RxPacketError] Overheat error!, I tried the parameters from the linked issue in section 5 of the post ( baudrate, ADDR_TORQUE_ENABLE, ADDR_GOAL_POSITION and ADDR_PRESENT_POSITION) but got the same result.
The other motor I have is the XL-320, which is the only exception for the X series as said in the github example( https://github.com/ROBOTIS-GIT/DynamixelSDK/blob/foxy-devel/dynamixel_sdk_examples/src/read_write_node.cpp ), so if someone knows the Control table address for this model i wloud apreciate it, i tried using the data from https://emanual.robotis.com/docs/en/dxl/x/xl320/
#define ADDR_OPERATING_MODE 2
#define ADDR_TORQUE_ENABLE 24
#define ADDR_GOAL_POSITION 30
#define ADDR_PRESENT_POSITION 37
but didn't work either.
Using the same hardware should give the same result.
The text was updated successfully, but these errors were encountered: