Skip to content
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

Previously generated INFORM job detected as invalid on next boot #166

Closed
rsaintobert opened this issue Sep 28, 2023 · 10 comments · Fixed by #168
Closed

Previously generated INFORM job detected as invalid on next boot #166

rsaintobert opened this issue Sep 28, 2023 · 10 comments · Fixed by #168
Labels
ros2:humble rv:0.1.1 Reported in MotoROS2 0.1.1 yrc1000u

Comments

@rsaintobert
Copy link

rsaintobert commented Sep 28, 2023

ROS2 Version: Humble
MotoROS2 Version: Latest (0.1.1)
MicroROS Version: Latest
YRC1000u
GP7

Hi. I am having trouble to make the driver work.
I followed the installation procedure and I let MotoROS2 generate the INIT_ROS job.
I started the micro ros agent using the docker image and executed the "ros2 node list" cmd into the container (docker exec -it) but no ros node was visible.
After reboot of the controller, the INIT_ROS job is detected as invalid and the alarm 8014 is raised. No ROS node is visible.

The weird thing is that I turns out to work one time without changing anything apparently. I was able to see the node and listen to the /joint_states topic, but after a reboot the problem appeared again.

Here are the logs of the agent
local-micro-ros-agent-1  | [1695908233.380252] info     | UDPv4AgentLinux.cpp | init                     | running...             | port: 9999
local-micro-ros-agent-1  | [1695908233.380331] info     | Root.cpp           | set_verbose_level        | logger setup           | verbose_level: 4
local-micro-ros-agent-1  | [1695908315.098871] info     | ProxyClient.cpp    | ProxyClient              | session hard timeout enabled | client_key: 0xB5258455, timeout: 10000 ms
local-micro-ros-agent-1  | [1695908315.098906] info     | Root.cpp           | create_client            | create                 | client_key: 0xB5258455, session_id: 0x81
local-micro-ros-agent-1  | [1695908315.098964] info     | SessionManager.hpp | establish_session        | session established    | client_key: 0xB5258455, address: 192.168.255.1:42474
local-micro-ros-agent-1  | [1695908315.110142] info     | ProxyClient.cpp    | create_participant       | participant created    | client_key: 0xB5258455, participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.128229] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0xB5258455, topic_id: 0x000(2), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.129441] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0xB5258455, publisher_id: 0x000(3), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.132151] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0xB5258455, datawriter_id: 0x000(5), publisher_id: 0x000(3)
local-micro-ros-agent-1  | [1695908315.234171] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0xB5258455, topic_id: 0x001(2), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.236989] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0xB5258455, publisher_id: 0x001(3), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.240042] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0xB5258455, datawriter_id: 0x001(5), publisher_id: 0x001(3)
local-micro-ros-agent-1  | [1695908315.245597] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0xB5258455, topic_id: 0x002(2), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.248058] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0xB5258455, publisher_id: 0x002(3), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.250550] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0xB5258455, datawriter_id: 0x002(5), publisher_id: 0x002(3)
local-micro-ros-agent-1  | [1695908315.253837] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0xB5258455, topic_id: 0x003(2), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.256189] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0xB5258455, publisher_id: 0x003(3), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.259048] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0xB5258455, datawriter_id: 0x003(5), publisher_id: 0x003(3)
local-micro-ros-agent-1  | [1695908315.262554] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x000(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.266670] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x001(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.268991] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x002(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.271409] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0xB5258455, topic_id: 0x004(2), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.274315] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0xB5258455, publisher_id: 0x004(3), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.276964] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0xB5258455, datawriter_id: 0x004(5), publisher_id: 0x004(3)
local-micro-ros-agent-1  | [1695908315.279497] info     | ProxyClient.cpp    | create_topic             | topic created          | client_key: 0xB5258455, topic_id: 0x005(2), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.281887] info     | ProxyClient.cpp    | create_publisher         | publisher created      | client_key: 0xB5258455, publisher_id: 0x005(3), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.285010] info     | ProxyClient.cpp    | create_datawriter        | datawriter created     | client_key: 0xB5258455, datawriter_id: 0x005(5), publisher_id: 0x005(3)
local-micro-ros-agent-1  | [1695908315.334888] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x003(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.339744] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x004(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.342384] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x005(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.346158] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x006(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.350938] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x007(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.354202] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x008(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.358204] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x009(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.360912] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x00A(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.363761] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x00B(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.369887] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x00C(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.373540] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x00D(7), participant_id: 0x000(1)
local-micro-ros-agent-1  | [1695908315.376741] info     | ProxyClient.cpp    | create_replier           | replier created        | client_key: 0xB5258455, requester_id: 0x00E(7), participant_id: 0x000(1)
The logs of the debug after first boot
[2023-09-28 15:36:17.904400] [192.168.255.1:57070]: ---
[2023-09-28 15:36:17.904600] [192.168.255.1:57070]: MotoROS2 0.1.1 - boot
[2023-09-28 15:36:17.904600] [192.168.255.1:57070]: M+ libmicroros version: 'humble-20221102-dbg'
[2023-09-28 15:36:17.904800] [192.168.255.1:57070]: PlatformLib version: 0.2.11
[2023-09-28 15:36:17.923200] [192.168.255.1:57070]: No new configuration file found on CN102 USB drive.
[2023-09-28 15:36:17.923200] [192.168.255.1:57070]: Checking configuration file: motoros2_config.yaml
[2023-09-28 15:36:18.072800] [192.168.255.1:57070]: Ros_ConfigFile_HostOnNetworkInterface: checking '192.168.255.20' on iface 1
[2023-09-28 15:36:18.073000] [192.168.255.1:57070]: Ros_ConfigFile_HostOnNetworkInterface: exit: on network: true
[2023-09-28 15:36:18.073000] [192.168.255.1:57070]: UserLan monitor enabled, checking port setting ..
[2023-09-28 15:36:18.073000] [192.168.255.1:57070]: Ros_ConfigFile_HostOnNetworkInterface: checking '192.168.255.20' on iface 1
[2023-09-28 15:36:18.073200] [192.168.255.1:57070]: Ros_ConfigFile_HostOnNetworkInterface: exit: on network: true
[2023-09-28 15:36:18.073200] [192.168.255.1:57070]: UserLan monitor auto-detect port: 1
[2023-09-28 15:36:18.073200] [192.168.255.1:57070]: Config: ros_domain_id = 0
[2023-09-28 15:36:18.073800] [192.168.255.1:57070]: Config: node_name = 'motoman_25_84_55'
[2023-09-28 15:36:18.073800] [192.168.255.1:57070]: Config: node_namespace = ''
[2023-09-28 15:36:18.073800] [192.168.255.1:57070]: Config: remap_rules = ''
[2023-09-28 15:36:18.073800] [192.168.255.1:57070]: Config: agent_ip_address = '192.168.255.20'
[2023-09-28 15:36:18.074600] [192.168.255.1:57070]: Config: agent_port_number = '9999'
[2023-09-28 15:36:18.074600] [192.168.255.1:57070]: Config: sync_timeclock_with_agent = 1
[2023-09-28 15:36:18.074600] [192.168.255.1:57070]: Config: namespace_tf = 1
[2023-09-28 15:36:18.074800] [192.168.255.1:57070]: Config: publish_tf = 0
[2023-09-28 15:36:18.074800] [192.168.255.1:57070]: List of configured joint names:
[2023-09-28 15:36:18.074800] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.074800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075400] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.075600] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.075600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078400] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078400] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.078600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.078800] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.079000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079400] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079800] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.079800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.079800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.080000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.080000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.080000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.080000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082400] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082400] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.082400] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.082800] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.083000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083200] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083600] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083800] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.083800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.083800] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.084000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.084000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.084000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.084000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.087000] [192.168.255.1:57070]: x
[2023-09-28 15:36:18.087000] [192.168.255.1:57070]: ---
[2023-09-28 15:36:18.087000] [192.168.255.1:57070]: Config: logging.log_to_stdout = 0
[2023-09-28 15:36:18.087200] [192.168.255.1:57070]: Config: update_periods.executor_sleep_period = 10
[2023-09-28 15:36:18.087200] [192.168.255.1:57070]: Config: update_periods.action_feedback_publisher_period = 20
[2023-09-28 15:36:18.087400] [192.168.255.1:57070]: Config: update_periods.controller_status_monitor_period = 10
[2023-09-28 15:36:18.087600] [192.168.255.1:57070]: Config: publisher_qos.robot_status = 'sensor_data'
[2023-09-28 15:36:18.087600] [192.168.255.1:57070]: Config: publisher_qos.joint_states = 'sensor_data'
[2023-09-28 15:36:18.088000] [192.168.255.1:57070]: Config: publisher_qos.tf = 'default'
[2023-09-28 15:36:18.088000] [192.168.255.1:57070]: Config: tf_frame_prefix = ''
[2023-09-28 15:36:18.088000] [192.168.255.1:57070]: Config: stop_motion_on_disconnect = 1
[2023-09-28 15:36:18.088000] [192.168.255.1:57070]: Config: inform_job_name = 'INIT_ROS'
[2023-09-28 15:36:18.088200] [192.168.255.1:57070]: Config: allow_custom_inform_job = 0
[2023-09-28 15:36:18.088200] [192.168.255.1:57070]: Config: userlan_monitor_enabled = 1
[2023-09-28 15:36:18.088200] [192.168.255.1:57070]: Config: userlan_monitor_port = 1
[2023-09-28 15:36:18.088400] [192.168.255.1:57070]: Waiting for robot alarms to clear...
[2023-09-28 15:36:20.590400] [192.168.255.1:57070]: RMW settings 1: 1000; 0; 1000; 256; 256; 512
[2023-09-28 15:36:20.590400] [192.168.255.1:57070]: RMW settings 2: 1; 1; 30; 15; 30; 1; -1
[2023-09-28 15:36:20.590400] [192.168.255.1:57070]: RMW settings 3: 60; 120; 100; 100
[2023-09-28 15:36:20.590600] [192.168.255.1:57070]: Using ROS domain ID: 0
[2023-09-28 15:36:20.590600] [192.168.255.1:57070]: Using client key: 0xB5258455
[2023-09-28 15:36:20.590600] [192.168.255.1:57070]: Attempting to connect to micro-ROS PC Agent (at udp://192.168.255.20:9999)
[1970-01-01 00:00:00.000000] [192.168.255.1:57070]: Found micro-ROS PC Agent
[2023-09-28 15:36:21.610000] [192.168.255.1:57070]: rclc_support_init_with_options = 0
[2023-09-28 15:36:21.610200] [192.168.255.1:57070]: remap_rules str: ''
[2023-09-28 15:36:21.610200] [192.168.255.1:57070]: len(remap_rules str): 0
[2023-09-28 15:36:21.610200] [192.168.255.1:57070]: num parsed remap rules: 0
[2023-09-28 15:36:21.610400] [192.168.255.1:57070]: faux argc: 2
[2023-09-28 15:36:21.610400] [192.168.255.1:57070]: rcl_parse_arguments = 0
[2023-09-28 15:36:21.621000] [192.168.255.1:57070]: rclc_node_init_with_options = 0
[2023-09-28 15:36:21.621200] [192.168.255.1:57070]: Ros_Communication_Initialize(..):comm_exec_init: memory free: 1045920 bytes, delta: -776
[2023-09-28 15:36:21.621200] [192.168.255.1:57070]: Initializing controller
[2023-09-28 15:36:21.621200] [192.168.255.1:57070]: Number of motion groups: 1 (max supported: 8)
[2023-09-28 15:36:21.636200] [192.168.255.1:57070]: axisType[0]: Rot	Rot	Rot	Rot	Rot	Rot	---	---	
[2023-09-28 15:36:21.636200] [192.168.255.1:57070]: pulse->unit[0]: 71116.2160	86919.8196	65189.8647	48892.3985	41721.5134	26634.7161	--	--	
[2023-09-28 15:36:21.636400] [192.168.255.1:57070]: maxInc[0] (in motoman joint order): 1861, 1911, 1865, 1877, 1601, 1862, 0
[2023-09-28 15:36:21.636400] [192.168.255.1:57070]: maxSpeed[0] (in ros joint order): 6.542108, 5.496445, 7.152185, 9.597606, 9.593372, 17.477190, 0.000000
[2023-09-28 15:36:21.636400] [192.168.255.1:57070]: Creating new task: Add To Inc Q (Group 1)
[2023-09-28 15:36:21.636600] [192.168.255.1:57070]: Created ctrl group 0, memfree = (1008152) bytes
[2023-09-28 15:36:21.643200] [192.168.255.1:57070]: Creating new task: IncMoveTask
[2023-09-28 15:36:21.643400] [192.168.255.1:57070]: IncMoveTask Started
[2023-09-28 15:36:21.643800] [192.168.255.1:57070]: Eco-mode: enabled
[2023-09-28 15:36:21.644000] [192.168.255.1:57070]: Eco-mode: timeout: 10 min
[2023-09-28 15:36:21.644000] [192.168.255.1:57070]: Ros_Controller_Initialize(..):ctrlr_init: memory free: 1007832 bytes, delta: -38088
[2023-09-28 15:36:21.644000] [192.168.255.1:57070]: Checking validity of robot job: INIT_ROS
[2023-09-28 15:36:21.670000] [192.168.255.1:57070]: Job file doesn't exist
[2023-09-28 15:36:21.670200] [192.168.255.1:57070]: Generating INFORM job in temporary location 'MPRAM1:0\INIT_ROS.JBI'
[2023-09-28 15:36:21.742400] [192.168.255.1:57070]: Generated INFORM job, loaded as 'INIT_ROS'
[2023-09-28 15:36:21.742600] [192.168.255.1:57070]: Initializing PositionMonitor publishers
[2023-09-28 15:36:21.762200] [192.168.255.1:57070]: PositionMonitor: publishing TF to 'tf'
[2023-09-28 15:36:21.770200] [192.168.255.1:57070]: Ros_PositionMonitor_Initialize(..):pos_mon_init: memory free: 1005320 bytes, delta: -2512
[2023-09-28 15:36:21.770400] [192.168.255.1:57070]: Initializing ActionServer FollowJointTrajectory
[2023-09-28 15:36:21.796200] [192.168.255.1:57070]: Allocating FollowJointTrajectory goal request
[2023-09-28 15:36:21.796200] [192.168.255.1:57070]: Maximum length of trajectories: 200 points
[2023-09-28 15:36:21.810000] [192.168.255.1:57070]: g_actionServer_FJT_SendGoal_Request__sizeof = 451008
[2023-09-28 15:36:21.842400] [192.168.255.1:57070]: Ros_ActionServer_FJT_Initialize(..):fjt_init: memory free: 1003464 bytes, delta: -1856
[2023-09-28 15:36:21.847400] [192.168.255.1:57070]: Ros_ServiceQueueTrajPoint_Initialize(..):svc_queue_point_init: memory free: 996216 bytes, delta: -7248
[2023-09-28 15:36:21.869000] [192.168.255.1:57070]: Ros_ServiceReadWriteIO_Initialize(..):svc_rw_io_init: memory free: 994504 bytes, delta: -1712
[2023-09-28 15:36:21.872000] [192.168.255.1:57070]: Ros_ServiceResetError_Initialize(..):svc_reset_error_init: memory free: 994224 bytes, delta: -280
[2023-09-28 15:36:21.874600] [192.168.255.1:57070]: Ros_ServiceStartTrajMode_Initialize(..):svc_start_traj_mode_init: memory free: 993928 bytes, delta: -296
[2023-09-28 15:36:21.881200] [192.168.255.1:57070]: Ros_ServiceStartPointQueueMode_Initialize(..):svc_start_point_queue_mode_init: memory free: 993632 bytes, delta: -296
[2023-09-28 15:36:21.884200] [192.168.255.1:57070]: Ros_ServiceStopTrajMode_Initialize(..):svc_stop_traj_mode_init: memory free: 993344 bytes, delta: -288
[2023-09-28 15:36:21.888600] [192.168.255.1:57070]: Ros_ServiceSelectMotionTool_Initialize(..):svc_select_tool_init: memory free: 993048 bytes, delta: -296
[2023-09-28 15:36:21.888800] [192.168.255.1:57070]: Initialization complete. Memory available: (993048) bytes. Memory in use: (55528) bytes
[2023-09-28 15:36:21.891200] [192.168.255.1:57070]: Starting UserLan link state monitor (port: 1)
The logs of the debug at reboot indicating that the job is invalid
[2023-09-28 15:46:42.143000] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.143200] [192.168.255.1:50187]: MotoROS2 0.1.1 - boot
[2023-09-28 15:46:42.143200] [192.168.255.1:50187]: M+ libmicroros version: 'humble-20221102-dbg'
[2023-09-28 15:46:42.143200] [192.168.255.1:50187]: PlatformLib version: 0.2.11
[2023-09-28 15:46:42.169400] [192.168.255.1:50187]: No new configuration file found on CN102 USB drive.
[2023-09-28 15:46:42.169800] [192.168.255.1:50187]: Checking configuration file: motoros2_config.yaml
[2023-09-28 15:46:42.326000] [192.168.255.1:50187]: Ros_ConfigFile_HostOnNetworkInterface: checking '192.168.255.20' on iface 1
[2023-09-28 15:46:42.326000] [192.168.255.1:50187]: Ros_ConfigFile_HostOnNetworkInterface: exit: on network: true
[2023-09-28 15:46:42.326000] [192.168.255.1:50187]: UserLan monitor enabled, checking port setting ..
[2023-09-28 15:46:42.326600] [192.168.255.1:50187]: Ros_ConfigFile_HostOnNetworkInterface: checking '192.168.255.20' on iface 1
[2023-09-28 15:46:42.326800] [192.168.255.1:50187]: Ros_ConfigFile_HostOnNetworkInterface: exit: on network: true
[2023-09-28 15:46:42.326800] [192.168.255.1:50187]: UserLan monitor auto-detect port: 1
[2023-09-28 15:46:42.326800] [192.168.255.1:50187]: Config: ros_domain_id = 0
[2023-09-28 15:46:42.327000] [192.168.255.1:50187]: Config: node_name = 'motoman_25_84_55'
[2023-09-28 15:46:42.327000] [192.168.255.1:50187]: Config: node_namespace = ''
[2023-09-28 15:46:42.327000] [192.168.255.1:50187]: Config: remap_rules = ''
[2023-09-28 15:46:42.327000] [192.168.255.1:50187]: Config: agent_ip_address = '192.168.255.20'
[2023-09-28 15:46:42.327200] [192.168.255.1:50187]: Config: agent_port_number = '9999'
[2023-09-28 15:46:42.327200] [192.168.255.1:50187]: Config: sync_timeclock_with_agent = 1
[2023-09-28 15:46:42.327200] [192.168.255.1:50187]: Config: namespace_tf = 1
[2023-09-28 15:46:42.327400] [192.168.255.1:50187]: Config: publish_tf = 0
[2023-09-28 15:46:42.327400] [192.168.255.1:50187]: List of configured joint names:
[2023-09-28 15:46:42.327400] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.327800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.327800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.327800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.327800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328200] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.328200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328600] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328600] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328600] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.328600] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.328800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329000] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.329200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.329800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330000] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.330000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.330400] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.332800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.332800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.332800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333200] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.333200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.333800] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334000] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.334000] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334200] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334400] [192.168.255.1:50187]: x
[2023-09-28 15:46:42.334600] [192.168.255.1:50187]: ---
[2023-09-28 15:46:42.334600] [192.168.255.1:50187]: Config: logging.log_to_stdout = 0
[2023-09-28 15:46:42.334600] [192.168.255.1:50187]: Config: update_periods.executor_sleep_period = 10
[2023-09-28 15:46:42.334600] [192.168.255.1:50187]: Config: update_periods.action_feedback_publisher_period = 20
[2023-09-28 15:46:42.334800] [192.168.255.1:50187]: Config: update_periods.controller_status_monitor_period = 10
[2023-09-28 15:46:42.334800] [192.168.255.1:50187]: Config: publisher_qos.robot_status = 'sensor_data'
[2023-09-28 15:46:42.334800] [192.168.255.1:50187]: Config: publisher_qos.joint_states = 'sensor_data'
[2023-09-28 15:46:42.335000] [192.168.255.1:50187]: Config: publisher_qos.tf = 'default'
[2023-09-28 15:46:42.335000] [192.168.255.1:50187]: Config: tf_frame_prefix = ''
[2023-09-28 15:46:42.335000] [192.168.255.1:50187]: Config: stop_motion_on_disconnect = 1
[2023-09-28 15:46:42.335000] [192.168.255.1:50187]: Config: inform_job_name = 'INIT_ROS'
[2023-09-28 15:46:42.335200] [192.168.255.1:50187]: Config: allow_custom_inform_job = 0
[2023-09-28 15:46:42.335400] [192.168.255.1:50187]: Config: userlan_monitor_enabled = 1
[2023-09-28 15:46:42.335400] [192.168.255.1:50187]: Config: userlan_monitor_port = 1
[2023-09-28 15:46:42.335800] [192.168.255.1:50187]: Waiting for robot alarms to clear...
[2023-09-28 15:46:44.837600] [192.168.255.1:50187]: RMW settings 1: 1000; 0; 1000; 256; 256; 512
[2023-09-28 15:46:44.838000] [192.168.255.1:50187]: RMW settings 2: 1; 1; 30; 15; 30; 1; -1
[2023-09-28 15:46:44.838000] [192.168.255.1:50187]: RMW settings 3: 60; 120; 100; 100
[2023-09-28 15:46:44.838400] [192.168.255.1:50187]: Using ROS domain ID: 0
[2023-09-28 15:46:44.838400] [192.168.255.1:50187]: Using client key: 0xB5258455
[2023-09-28 15:46:44.838600] [192.168.255.1:50187]: Attempting to connect to micro-ROS PC Agent (at udp://192.168.255.20:9999)
[1970-01-01 00:00:00.000000] [192.168.255.1:50187]: Found micro-ROS PC Agent
[2023-09-28 15:46:45.861400] [192.168.255.1:50187]: rclc_support_init_with_options = 0
[2023-09-28 15:46:45.864200] [192.168.255.1:50187]: remap_rules str: ''
[2023-09-28 15:46:45.864200] [192.168.255.1:50187]: len(remap_rules str): 0
[2023-09-28 15:46:45.864400] [192.168.255.1:50187]: num parsed remap rules: 0
[2023-09-28 15:46:45.864400] [192.168.255.1:50187]: faux argc: 2
[2023-09-28 15:46:45.864400] [192.168.255.1:50187]: rcl_parse_arguments = 0
[2023-09-28 15:46:45.872400] [192.168.255.1:50187]: rclc_node_init_with_options = 0
[2023-09-28 15:46:45.872600] [192.168.255.1:50187]: Ros_Communication_Initialize(..):comm_exec_init: memory free: 1045920 bytes, delta: -776
[2023-09-28 15:46:45.872600] [192.168.255.1:50187]: Initializing controller
[2023-09-28 15:46:45.872600] [192.168.255.1:50187]: Number of motion groups: 1 (max supported: 8)
[2023-09-28 15:46:45.884400] [192.168.255.1:50187]: axisType[0]: Rot	Rot	Rot	Rot	Rot	Rot	---	---	
[2023-09-28 15:46:45.884600] [192.168.255.1:50187]: pulse->unit[0]: 71116.2160	86919.8196	65189.8647	48892.3985	41721.5134	26634.7161	--	--	
[2023-09-28 15:46:45.884600] [192.168.255.1:50187]: maxInc[0] (in motoman joint order): 1861, 1911, 1865, 1877, 1601, 1862, 0
[2023-09-28 15:46:45.884800] [192.168.255.1:50187]: maxSpeed[0] (in ros joint order): 6.542108, 5.496445, 7.152185, 9.597606, 9.593372, 17.477190, 0.000000
[2023-09-28 15:46:45.884800] [192.168.255.1:50187]: Creating new task: Add To Inc Q (Group 1)
[2023-09-28 15:46:45.885000] [192.168.255.1:50187]: Created ctrl group 0, memfree = (1008152) bytes
[2023-09-28 15:46:45.893600] [192.168.255.1:50187]: Creating new task: IncMoveTask
[2023-09-28 15:46:45.894200] [192.168.255.1:50187]: IncMoveTask Started
[2023-09-28 15:46:45.894200] [192.168.255.1:50187]: Eco-mode: enabled
[2023-09-28 15:46:45.894200] [192.168.255.1:50187]: Eco-mode: timeout: 10 min
[2023-09-28 15:46:45.894400] [192.168.255.1:50187]: Ros_Controller_Initialize(..):ctrlr_init: memory free: 1007832 bytes, delta: -38088
[2023-09-28 15:46:45.894400] [192.168.255.1:50187]: Checking validity of robot job: INIT_ROS
[2023-09-28 15:46:45.950400] [192.168.255.1:50187]: Job has invalid contents
[2023-09-28 15:46:45.950600] [192.168.255.1:50187]: Job exists, but is invalid.
[2023-09-28 15:46:45.972600] [192.168.255.1:50187]: Initializing PositionMonitor publishers
[2023-09-28 15:46:45.990600] [192.168.255.1:50187]: PositionMonitor: publishing TF to 'tf'
[2023-09-28 15:46:46.000400] [192.168.255.1:50187]: Ros_PositionMonitor_Initialize(..):pos_mon_init: memory free: 1005320 bytes, delta: -2512
[2023-09-28 15:46:46.000400] [192.168.255.1:50187]: Initializing ActionServer FollowJointTrajectory
[2023-09-28 15:46:46.027600] [192.168.255.1:50187]: Allocating FollowJointTrajectory goal request
[2023-09-28 15:46:46.028000] [192.168.255.1:50187]: Maximum length of trajectories: 200 points
[2023-09-28 15:46:46.042600] [192.168.255.1:50187]: g_actionServer_FJT_SendGoal_Request__sizeof = 451008
[2023-09-28 15:46:46.074800] [192.168.255.1:50187]: Ros_ActionServer_FJT_Initialize(..):fjt_init: memory free: 1003464 bytes, delta: -1856
[2023-09-28 15:46:46.078000] [192.168.255.1:50187]: Ros_ServiceQueueTrajPoint_Initialize(..):svc_queue_point_init: memory free: 996216 bytes, delta: -7248
[2023-09-28 15:46:46.107600] [192.168.255.1:50187]: Ros_ServiceReadWriteIO_Initialize(..):svc_rw_io_init: memory free: 994504 bytes, delta: -1712
[2023-09-28 15:46:46.112600] [192.168.255.1:50187]: Ros_ServiceResetError_Initialize(..):svc_reset_error_init: memory free: 994224 bytes, delta: -280
[2023-09-28 15:46:46.116800] [192.168.255.1:50187]: Ros_ServiceStartTrajMode_Initialize(..):svc_start_traj_mode_init: memory free: 993928 bytes, delta: -296
[2023-09-28 15:46:46.119400] [192.168.255.1:50187]: Ros_ServiceStartPointQueueMode_Initialize(..):svc_start_point_queue_mode_init: memory free: 993632 bytes, delta: -296
[2023-09-28 15:46:46.122800] [192.168.255.1:50187]: Ros_ServiceStopTrajMode_Initialize(..):svc_stop_traj_mode_init: memory free: 993344 bytes, delta: -288
[2023-09-28 15:46:46.125400] [192.168.255.1:50187]: Ros_ServiceSelectMotionTool_Initialize(..):svc_select_tool_init: memory free: 993048 bytes, delta: -296
[2023-09-28 15:46:46.125600] [192.168.255.1:50187]: Initialization complete. Memory available: (993048) bytes. Memory in use: (55528) bytes
[2023-09-28 15:46:46.128600] [192.168.255.1:50187]: Starting UserLan link state monitor (port: 1)
The config file
---
# SPDX-FileCopyrightText: 2022-2023, Yaskawa America, Inc.
# SPDX-FileCopyrightText: 2022-2023, Delft University of Technology
#
# SPDX-License-Identifier: Apache-2.0


#-----------------------------------------------------------------------------
# REQUIRED
# IP address and UDP port number of the Micro-ROS Agent PC. All communication
# to/from MotoROS2 will route through the Agent application.
# (There is no default value for these fields. They must be specified by
# the user.)
agent_ip_address: "192.168.255.20"
agent_port_number: 9999


# Any settings that are not specified will be set to their DEFAULT value.


#-----------------------------------------------------------------------------
# The (DDS) domain to join
#
# Please refer to the ROS 2 documentation on DDS domain IDs for more
# information. This setting works exactly like its ROS 2 analogue.
#
# DEFAULT: 0 (the default ROS 2 domain ID)
#ros_domain_id: 0

#-----------------------------------------------------------------------------
# Name under which MotoROS2 should register with the ROS 2 node graph.
#
# DEFAULT: "motoman_xx_yy_zz"  (xyz: last three bytes of robot's MAC address)
#node_name: ""

#-----------------------------------------------------------------------------
# Namespace to use for the MotoROS2 node and all topics.
#
# DEFAULT: ""  (empty string)
#node_namespace: ""

#-----------------------------------------------------------------------------
# Remap rules to apply to ROS 2 resource names.
#
# This configures the micro-ROS equivalent of the ROS 2 remap functionality.
#
# The current implementation expects all remap rules as a single,
# space-separated string. Whitespace in resource names is not allowed, so
# this should not pose any issues.
#
# Maximum total length of the remap_rules string: 255 chars. Any characters
# beyond that will be ignored (and likely result in parsing failures).
#
# Please refer to the ROS 2 documentation on remapping for more information
# on syntax and contraints.
#
# Example: the following remaps the 'joint_states' topic to 'my_joint_states',
# and the 'read_single_io' service to 'io/read_single':
#
#   "joint_states:=my_joint_states read_single_io:=io/read_single"
#
# DEFAULT: ""  (empty string)
#remap_rules: ""

#-----------------------------------------------------------------------------
# This will ensure that when timestamps are sampled, they will match the clock
# of the Agent PC. This is useful if the date/time of the robot controller is
# not synchronized.
#
# DEFAULT: true
sync_timeclock_with_agent: true

#-----------------------------------------------------------------------------
# Should MotoROS2 monitor the link state of the ethernet port used to
# communicate with the Agent?
#
# If enabled, this will cause immediate notification of loss-of-connection
# when the link goes down, causing MotoROS2 to activate it's shutdown
# behaviour (ie: stop all motion (if enabled), release resources, wait for
# link up and attempt reconnection with the Agent).
#
# If this is disabled, Agent disconnection detection uses an application
# layer based timeout mechanism which takes longer to detect disconnects (but
# might be more robust against intermittent link-layer disconnects which do not
# cause network disconnections).
#
# DEFAULT: true
#userlan_monitor_enabled: true

#-----------------------------------------------------------------------------
# Which port should MotoROS2 monitor, if 'userlan_monitor_enabled' is 'true'?
#
# If not specified, MotoROS2 will attempt to auto-detect the network port
# that is used to connect to the micro-ROS Agent. It will do this by
# comparing the 'agent_ip_address' setting against the IP addresses (and
# netmasks) of all available network interfaces.
#
# If the Agent can be reached directly over a particular interface, or via a
# configured default gateway on the same interface, the associated port will be
# monitored for link drops.
#
# To disable auto-detection, uncomment 'userlan_monitor_port' below and set
# it to the desired port.
#
# NOTE:   this setting only applies to YRC1000 and YRC1000u controllers.
#         DX200 and FS100 controllers only have a single ethernet port, and any
#         value other than 1 will be ignored.
#
# NOTE 2: auto-detection is not perfect. It can't determine whether the Agent
#         might be reachable using multiple hops. Nor can it determine whether
#         any routers have been configured to forward particular types of
#         traffic or firewalls exist between MotoROS2 and the micro-ROS Agent.
#         For deployments with complex network configurations, disable
#         auto-detection by configuring 'userlan_monitor_port' below.
#
# NOTE 3: the port specified here is NOT checked against 'agent_ip_address'.
#         In other words: if 'agent_ip_address' is on 'USER_LAN1', but
#         'userlan_monitor_port' is set to 'USER_LAN2', MotoROS2 will detect
#         link down events on 'USER_LAN2', whether or not that port is used
#         to communicate with the Agent.
#
# OPTIONS: USER_LAN1, USER_LAN2
# DEFAULT: USER_LAN1
#userlan_monitor_port: USER_LAN1

#-----------------------------------------------------------------------------
# If the Agent PC disconnects from the robot while it is in motion, should the
# robot come to a stop?
#
# DEFAULT: true
stop_motion_on_disconnect: true

#-----------------------------------------------------------------------------
# Should MotoROS2 broadcast transforms on '/tf'? This can be disabled if
# the data will interfere with applications such as robot_state_publisher.
#
# DEFAULT: true
publish_tf: false

#-----------------------------------------------------------------------------
# Should the 'tf' topic be namespaced if 'node_namespace' is configured with a
# non-empty string?
#
# Setting this to 'false' will make MotoROS2 broadcast transforms on the '/tf'
# global topic, which cannot be namespaced (due to being an absolute name).
# Otherwise, it will broadcast on 'tf', which can be namespaced.
#
# DEFAULT: true
namespace_tf: true

#-----------------------------------------------------------------------------
# Similar to the 'frame_prefix' parameter of the ROS 2 'robot_state_publisher'
# node. All published TF frames will be prefixed with this string.
#
# Example: with this parameter set to "left/", the "r1/tool0" frame would be
# published as "left/r1/tool0".
#
# NOTE: the prefix must include a separator (fi: '/') if one should be included
#       in the final name of the TF frames. Such a separator is not added
#       automatically.
#
# DEFAULT: ""  (empty string)
#tf_frame_prefix: ""

#-----------------------------------------------------------------------------
# Joints in this configuration file must be listed in the order of Robots,
# Base-axes, Station-axes.
#
# Example: R1+B1+R2+S1 system
#
# joint_names:
# - [r1_s_axis, r1_l_axis, r1_u_axis, r1_r_axis, r1_b_axis, r1_t_axis]
# - [r2_s_axis, r2_l_axis, r2_u_axis, r2_r_axis, r2_b_axis, r2_t_axis, r2_e_axis]
# - [b1_axis]
# - [s1_axis_1, s1_axis_2]
#
# When using a 7 axis robot arm with an elbow joint (E) in the middle of the
# arm, the elbow axis should be listed last (SLURBTE).
#
# DEFAULT: "group_x/joint_y"
#joint_names:
#- [group_1/joint_1, group_1/joint_2, group_1/joint_3, group_1/joint_4, group_1/joint_5, group_1/joint_6]

#-----------------------------------------------------------------------------
# Logging settings
logging:
  # All log messages are broadcast on the network on port UDP 21789.
  # Additionally, the messages can be printed to the standard output stream of
  # the robot controller. This would be visible over a telnet connection, or by
  # attaching a VGA debug monitor to the robot controller.
  #
  # NOTE: this WILL slow down the application.
  #
  # DEFAULT: false
  log_to_stdout: false

#-----------------------------------------------------------------------------
update_periods:
  # The delay between checks for incoming activity on the network. A lower
  # number will result in quicker responsiveness to received messages.
  # Additionally, it determines the rate at which the feedback_publisher timers
  # are checked.
  # This value should be <= to action_feedback_publisher_period as executor_sleep_period
  # is the rate at which the action-feedback timer is checked. If the value for
  # action_feedback_publisher_period is < executor_sleep_period, it will effectively
  # be treated as having the same value executor_sleep_period at runtime.
  #
  # DEFAULT: 10 milliseconds
  executor_sleep_period: 10

  # The delay between each publish of feedback position and status information.
  # A lower number will publish the feedback data more frequently.
  # This value should be >= to executor_sleep_period and
  # controller_status_monitor_period.
  #
  # DEFAULT: 20 milliseconds
  action_feedback_publisher_period: 20

  # The delay between each poll of the robot I/O and controller status data.
  # This value should be <= to action_feedback_publisher_period.
  #
  # DEFAULT: 10 milliseconds
  controller_status_monitor_period: 10

#-----------------------------------------------------------------------------
# QoS profile to use for various publishers MotoROS2 creates.
# The default values here are based on tests and inspection of the source code
# of typical consumers of messages on these topics.
#
# NOTE : RViz2 expects/requires 'tf' to use the 'default' profile (ie: reliable).
# NOTE2: MoveIt2 expects/requires 'joint_states' to use the 'default' profile.
publisher_qos:
  # DEFAULT: sensor_data
  robot_status: sensor_data

  # DEFAULT: sensor_data
  joint_states: sensor_data

  # DEFAULT: default
  tf: default

#-----------------------------------------------------------------------------
# Name of the INFORM job to be used (and monitored) by MotoROS2.
#
# Maximum length: 32 UTF-8 characters. 16 Japanese (Shift-JIS) characters.
#
# Set this to a custom value when using a custom INFORM job with a different
# name.
#
# NOTE: do NOT include the file extension here (ie: '.JBI'). Only the name
#       of the job should be specified.
#
# DEFAULT: "INIT_ROS"
#inform_job_name: "INIT_ROS"

#-----------------------------------------------------------------------------
# Allow custom INFORM job.
#
# If MotoROS2 detects that the specified INFORM job is not formatted properly
# then an alarm will be raised at startup.
# This flag indicates that the job is intentionally configured and will
# suppress the alarm.
#
# When this flag is set to 'true', then MotoROS2 will not validate whether the
# job is compatible. It is the responsibility of the user to make sure the
# custom job includes the required INFORM statements and in the expected order
# (refer to the provided INFORM job files for the general structure).
#
# DEFAULT: false
#allow_custom_inform: false
@ted-miller
Copy link
Collaborator

Hi @rsaintobert
Could you post a copy of the INIT_ROS.JBI file that was generated? Also, a copy of the PANELBOX.LOG file from your robot would be helpful. I'm wondering if your robot has some additional control group(s) configured.

@gavanderhoorn
Copy link
Collaborator

gavanderhoorn commented Sep 28, 2023

Slightly off-topic, but on the FS100 branch I have gavanderhoorn@578a610 which would print the 'offending' line during the check.

I might cherry-pick that to main and submit a PR. Would make debugging this a bit easier perhaps.


See #167.

@rsaintobert
Copy link
Author

rsaintobert commented Sep 29, 2023

Hi, here are the files.

INIT_ROS.JBI
/JOB
//NAME INIT_ROS
//POS
///NPOS 0,0,0,0,0,0
//INST
///DATE 2023/09/28 15:36
///COMM AUTO-GENERATED BY MotoROS2
///ATTR SC,RW
///GROUP1 RB1
NOP
DOUT OT#(890) OFF
DOUT OT#(889) OFF
TIMER T=0.050
DOUT OT#(889) ON
WAIT OT#(890)=ON
DOUT OT#(890) OFF
DOUT OT#(889) OFF
END

PANELBOX.LOG
/SYSTEM 9
//DATE      : 2023/09/29 09:52:57
//SYSTEM NO : YBS2.46.00A(EN/FR)-00
//PARAM  NO : 1.42/1.42
//APPLI     : GENERAL         
//LANGUAGE  :  2.46-00-00, 2.46-00-00
//REVISION
MAIN     2.46.00,1.02-10
CA      --------,16092200
PP       2.10-00, 2.00-00, 1.07
SAFETY#0 2.23-00/ 2.11-00, 2.23-00/ 2.11-00, 2.00-00, 2.00-00,17021600,17021600
SERVO#0  1.18-00/ 1.18-00, 1.02E00/ 1.02P00, 2.00-00, 1.01-00,19090800,10000002
//ROBOT NAME
R1 : 1-06VX7-A0*(GP7)                             0011_1111
//CONTROL POWER
TOTAL : 2021/06/16 13:56,00718:35'39
//SERVO POWER
TOTAL : 2021/06/16 13:56,00174:03'37
R1    : 2021/06/16 13:56,00173:35'16
//PLAYBACK TIME
TOTAL : 2021/06/16 13:56,00119:30'17
R1    : 2021/06/16 13:56,00119:29'13
//MOVING TIME
TOTAL : 2021/06/16 13:56,00000:23'44
R1    : 2021/06/16 13:56,00000:23'44
//OPERATING TIME
TOOL1 : 2021/06/16 13:56,00000:00'00
//ENERGY TIME
TOTAL : 2021/06/16 13:56,00024:33'21
//MOTOPLUS APP
01: MotoROS2 (humble)                0.1.1            micro-ROS based ROS 2 interface 
//CONTROLLER SETTING
============================================================
LANGUAGE

------------------------------------------------------------
LANGUAGE1           ENGLISH            
LANGUAGE2           FRENCH             
============================================================
CONTROL GROUP                                       
                                                    
------------------------------------------------------------
CONNECT :                             DETAIL        
R1      : 1-06VX7-A0*                               
B1      : NONE                        DETAIL        
R2      : NONE                                      
S1      : NONE                        DETAIL        
============================================================
CONNECT                                             
        -- AXIS --  -- BRK --   -- CV  --  --OT--   
    SV <123456789> <123456789> <123456789>          
------------------------------------------------------------
R1 :#1 [153264---] [123456---] [111111---]  OT1     
============================================================
OPTION BOARD                                        
STANDARD                                            
------------------------------------------------------------
                                                    
#1        NONE                                      
#2        NONE                                      
============================================================
IO MODULE
ST#   DI   DO  AI  AO BOARD               
------------------------------------------------------------
 00 0008 0008   -   - ASF31(PNP)
 01    -    -   -   - NONE
 02    -    -   -   - NONE
 03    -    -   -   - NONE
 04    -    -   -   - NONE
 05    -    -   -   - NONE
 06    -    -   -   - NONE
 07    -    -   -   - NONE
 08    -    -   -   - NONE
 09    -    -   -   - NONE
 10    -    -   -   - NONE
 11    -    -   -   - NONE
 12    -    -   -   - NONE
 13    -    -   -   - NONE
 14    -    -   -   - NONE
 15    -    -   -   - NONE
 16    -    -   -   - NONE
 17    -    -   -   - NONE
 18    -    -   -   - NONE
 19    -    -   -   - NONE
============================================================
EXTERNAL IO SETUP                                   
                                                    
------------------------------------------------------------
ALLOCATION MODE                  AUTO               
EXTERNAL IO ALLOCATION           DETAIL             
============================================================
EXTERNAL IO ALLOCATION(INPUT)                       
        ST#  CH  MAC ID  ADDR  BYTE  NAME           
------------------------------------------------------------
#20010    0   0       0     0     1  ASF31          
============================================================
EXTERNAL IO ALLOCATION(OUTPUT)                      
        ST#  CH  MAC ID  ADDR  BYTE  NAME           
------------------------------------------------------------
#30010    0   0       0     0     1  ASF31          
============================================================
OPTION FUNCTION

------------------------------------------------------------
* 006 VISION FUNCTION                 NOT USED  
* 007 ROBOT DETACHMENT                DETAIL    
* 009 AXES DETACHMENT                 DETAIL    
* 011 LAN INTERFACE SETTING           DETAIL    
* 012 NETWORK FUNCTION SETTING        DETAIL    
* 013 EtherNet/IP(CPU Board)          DETAIL    
* 014 DAYLIGHT SAVING TIME            DETAIL    
* 015 RELATIVE JOB                    USED      
* 016 INTERRUPT JOB                   USED      
* 017 TCP                             USED      
* 018 MACRO INST.                     USED      
* 020 I/F PANEL                       USED      
* 021 LADDER EDITOR                   USED      
* 022 PLAY MODE ENABLE                NOT USED  
* 023 MANUAL BRAKE RELEASE            USED      
* 025 EXTERNAL REFERENCE POINT        NOT USED  
* 026 PARALLEL START INSTRUCTION        5
* 027 COORDINATED INSTRUCTION         USED      
* 028 STATION ANGLE DISPLAY           USED      
* 032 TOOL NO. SWITCHING              USED      
* 033 SI UNIT INDICATION              USED      
* 034 DISPLAY IO NAME IN JOB          USED      
* 036 EXTERNAL IO SETUP               DETAIL    
* 037 VARIABLE ALLOCATION             DETAIL    
* 046 MotoPlus FUNC.                  USED      
* 048 AUTOBACKUP(ACP31)               NOT USED  
* 049 Functional safety               DETAIL    
* 050 MOTOPAL FUNCTION                NOT USED  
* 053 MotoFit                         NOT USED  
* 054 MotoLogix                       DETAIL    
* 055 SAFETY LOGICAL CIRCUIT SETTING  DETAIL    
* 056 SAFETY I/O BOARD SETTING        DETAIL    
* 057 POWER FORCE LIMITING            DETAIL    
* 058 3DGRAPHICS                      USED      
* 059 ENDLESS FUNCTION                DETAIL    
* 060 Search function                 USED      
* 061 Pendant Oscilloscope function   USED      
* 062 I/O OUTPUT CONTROL FUNCTION     NOT USED  
* 064 THERMAL SPRAY SPEED FUNCTION    NOT USED  
* 065 ARM INTERFERE CHECK FUNCTION    USED      
* 066 CUBIC ARM INTERFERENCE CHK FUNC.USED      
* 067 HOVER WEAVING FUNCTION          NOT USED  
* 068 SEARCH FUNCTION IN CONT MOTION  NOT USED  
* 069 PASSWORD PROTECTION FUNCTION    NOT USED  
* 070 ONLINE MANUAL FUNCTION          NOT USED  
* 071 I/O JOG OPERATION FUNCTION      NOT USED  
* 072 Cockpit                         NOT USED  
* 073 MOTOMAN DRIVER                  USED      
* 075 TEACH POINT ADJUST FUNCTION     NOT USED  
* 077 SmartPendant                    NOT USED  
* 079 CONVEYOR COORDINATE             DETAIL    
* 083 MUTUAL WAIT FUNCTION            DETAIL    
============================================================
CMOS MEMORY

------------------------------------------------------------
  USED SIZE           2 MB               
  MOUNTED SIZE        2 MB               
============================================================
------------------------------------------------------------
FILE CREATE DATE             2015/01/01 00:00:55 TEACHING
CMOS.BIN LOADED              ----/--/-- --:--:--
============================================================
CHANGE TRACKING LIST         DATE
  INITIALIZE                 2021/06/16 13:56:28 MAKER
  LANGUAGE                   ----/--/-- --:--:--
  CONTROL GROUP              ----/--/-- --:--:--
  APPLICATION                ----/--/-- --:--:--
  OPTION BOARD               ----/--/-- --:--:--
  IO MODULE                  ----/--/-- --:--:--
  CMOS MEMORY                ----/--/-- --:--:--
  DATE/TIME                  2021/06/16 13:56:00 MAKER
  OPTION FUNCTION            2023/09/28 15:27:29 MANAGEMENT
============================================================
INITIALIZED FILES
  JOB                        2021/06/22 11:51:11 MAKER
  FILE/GENERAL DATA          2021/06/22 11:50:55 MAKER
  PARAMETER                  ----/--/-- --:--:--
  I/O DATA                   ----/--/-- --:--:--
  SYSTEM DATA                2021/06/22 11:50:56 MAKER
  USER DEFINE                2023/09/28 15:27:30 MANAGEMENT
============================================================
INSPECTION AND TEST RECORD   DATE
                             ----/--/-- --:--:--
                             ----/--/-- --:--:--
                             ----/--/-- --:--:--
                             ----/--/-- --:--:--
                             ----/--/-- --:--:--
============================================================
CHANGE TRACKING PARAMETER    DATE
  AMCxG                      ----/--/-- --:--:--
  AxP                        ----/--/-- --:--:--
  CIO                        ----/--/-- --:--:--
  FD                         ----/--/-- --:--:--
  FMSxB                      ----/--/-- --:--:--
  MFxG                       ----/--/-- --:--:--
  RCD                        ----/--/-- --:--:--
  RCxG                       ----/--/-- --:--:--
  RExG                       ----/--/-- --:--:--
  ROxG                       ----/--/-- --:--:--
  RS                         ----/--/-- --:--:--
  SxE                        ----/--/-- --:--:--
  S1CxG                      ----/--/-- --:--:--
  S2C                        ----/--/-- --:--:--
  S3C                        ----/--/-- --:--:--
  S4C                        ----/--/-- --:--:--
  S1D                        ----/--/-- --:--:--
  S2D                        ----/--/-- --:--:--
  S3D                        ----/--/-- --:--:--
  S4D                        ----/--/-- --:--:--
  SVxG                       ----/--/-- --:--:--
  SVCxB                      ----/--/-- --:--:--
  SVD                        ----/--/-- --:--:--
  SVMxG                      ----/--/-- --:--:--
  SVPxG                      ----/--/-- --:--:--
  SVSxB                      ----/--/-- --:--:--

I rebooted the controller several time today and so far I can see the ros node, but the alarm for invalid job still appears.
I still don't know why the ros node is sometimes visible and sometimes not (boot order between agent and controller ?)

@gavanderhoorn
Copy link
Collaborator

There is a difference here:

job MotoROS2 expects/generates:

TIMER T=0.05

job it 'sees' on your YRC1000m @rsaintobert:

TIMER T=0.050

@ted-miller: this is a similar difference to what I saw on the FS100 and I worked around/fixed with gavanderhoorn@6a79f9b. Would something similar be needed for the YRC1000m?

@gavanderhoorn gavanderhoorn changed the title Generated INFORM job detected as invalid Previously generated INFORM job detected as invalid on next boot Sep 29, 2023
@rsaintobert
Copy link
Author

I tried to update the job manually and I confirm the YRC1000m adds a trailing 0 when entering 0.05 value.

@gavanderhoorn
Copy link
Collaborator

Yes, that's also why I didn't suggest editing it. It wouldn't have worked.

@ted-miller
Copy link
Collaborator

this is a similar difference to what I saw on the FS100 and I worked around/fixed with gavanderhoorn@6a79f9b. Would something similar be needed for the YRC1000m?

What if we simply change strncmp to strstr?

if (strncmp(lineBuffer, rosInitJobLines[lineIndex], MAX_JOB_LINE_LENGTH) != 0)

@gavanderhoorn
Copy link
Collaborator

gavanderhoorn commented Sep 29, 2023

Hm, could do that.

It wouldn't be the same though.

I personally like being specific about things.


Edit: but I won't block a PR if you decide to submit one.

@ted-miller
Copy link
Collaborator

@rsaintobert
For an immediate remedy, you can uncomment allow_custom_inform in the config file and set it to true. This will prevent the alarm from occurring.

#allow_custom_inform: false

To update the config file:
https://github.com/Yaskawa-Global/motoros2#updating-the-configuration

@gavanderhoorn
Copy link
Collaborator

Thanks for reporting the issue @rsaintobert 👍

This should be fixed in 0.1.2, which will be released in October.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ros2:humble rv:0.1.1 Reported in MotoROS2 0.1.1 yrc1000u
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants