{"action":"created","issue":{"url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/issues/340","repository_url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3","labels_url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/issues/340/labels{/name}","comments_url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/issues/340/comments","events_url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/issues/340/events","html_url":"https://github.com/ROBOTIS-GIT/turtlebot3/issues/340","id":375616476,"node_id":"MDU6SXNzdWUzNzU2MTY0NzY=","number":340,"title":"Turtlebot3_core doesn't grab the NAMESPACE configuration","user":{"login":"brusangel","id":24450311,"node_id":"MDQ6VXNlcjI0NDUwMzEx","avatar_url":"https://avatars0.githubusercontent.com/u/24450311?v=4","gravatar_id":"","url":"https://api.github.com/users/brusangel","html_url":"https://github.com/brusangel","followers_url":"https://api.github.com/users/brusangel/followers","following_url":"https://api.github.com/users/brusangel/following{/other_user}","gists_url":"https://api.github.com/users/brusangel/gists{/gist_id}","starred_url":"https://api.github.com/users/brusangel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brusangel/subscriptions","organizations_url":"https://api.github.com/users/brusangel/orgs","repos_url":"https://api.github.com/users/brusangel/repos","events_url":"https://api.github.com/users/brusangel/events{/privacy}","received_events_url":"https://api.github.com/users/brusangel/received_events","type":"User","site_admin":false},"labels":[{"id":395999124,"node_id":"MDU6TGFiZWwzOTU5OTkxMjQ=","url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/labels/bug","name":"bug","color":"d93f0b","default":true},{"id":716196367,"node_id":"MDU6TGFiZWw3MTYxOTYzNjc=","url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/labels/in%20progress","name":"in progress","color":"0e8a16","default":false},{"id":395999129,"node_id":"MDU6TGFiZWwzOTU5OTkxMjk=","url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/labels/question","name":"question","color":"fbca04","default":true}],"state":"open","locked":false,"assignee":{"login":"routiful","id":7092473,"node_id":"MDQ6VXNlcjcwOTI0NzM=","avatar_url":"https://avatars1.githubusercontent.com/u/7092473?v=4","gravatar_id":"","url":"https://api.github.com/users/routiful","html_url":"https://github.com/routiful","followers_url":"https://api.github.com/users/routiful/followers","following_url":"https://api.github.com/users/routiful/following{/other_user}","gists_url":"https://api.github.com/users/routiful/gists{/gist_id}","starred_url":"https://api.github.com/users/routiful/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/routiful/subscriptions","organizations_url":"https://api.github.com/users/routiful/orgs","repos_url":"https://api.github.com/users/routiful/repos","events_url":"https://api.github.com/users/routiful/events{/privacy}","received_events_url":"https://api.github.com/users/routiful/received_events","type":"User","site_admin":false},"assignees":[{"login":"routiful","id":7092473,"node_id":"MDQ6VXNlcjcwOTI0NzM=","avatar_url":"https://avatars1.githubusercontent.com/u/7092473?v=4","gravatar_id":"","url":"https://api.github.com/users/routiful","html_url":"https://github.com/routiful","followers_url":"https://api.github.com/users/routiful/followers","following_url":"https://api.github.com/users/routiful/following{/other_user}","gists_url":"https://api.github.com/users/routiful/gists{/gist_id}","starred_url":"https://api.github.com/users/routiful/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/routiful/subscriptions","organizations_url":"https://api.github.com/users/routiful/orgs","repos_url":"https://api.github.com/users/routiful/repos","events_url":"https://api.github.com/users/routiful/events{/privacy}","received_events_url":"https://api.github.com/users/routiful/received_events","type":"User","site_admin":false}],"milestone":null,"comments":7,"created_at":"2018-10-30T17:49:34Z","updated_at":"2018-11-22T11:09:58Z","closed_at":null,"author_association":"NONE","body":"Hello, I'm working with multiple **turtlebot3**.\r\n\r\n1. Which TurtleBot3 you have?\r\n\r\n    - Burger\r\n  \r\n2. Which SBC(Single Board Computer) is working on TurtleBot3?\r\n\r\n    - Raspberry Pi 3\r\n  \r\n3. Which OS you installed in SBC?\r\n\r\n    - Ubuntu MATE 16.04 or later\r\n   \r\n4. Which OS you installed in Remote PC?\r\n\r\n    - Ubuntu 16.04 LTS (Xenial Xerus)\r\n\r\n5. Write down software version and firmware version\r\n\r\n    - Software version: [1.12.14]\r\n    - Firmware version: [1.2.3]\r\n\r\n**turtlebot3_robot.launch**\r\n```\r\n<launch>\r\n  <arg name=\"multi_robot_name\" default=\"\"/>\r\n  <arg name=\"set_lidar_frame_id\" default=\"base_scan\"/>\r\n\r\n  <include file=\"$(find turtlebot3_bringup)/launch/turtlebot3_core.launch\">\r\n    <arg name=\"multi_robot_name\" value=\"$(arg multi_robot_name)\"/>\r\n  </include>\r\n  <include file=\"$(find turtlebot3_bringup)/launch/turtlebot3_lidar.launch\">\r\n    <arg name=\"set_frame_id\" value=\"$(arg set_lidar_frame_id)\"/>\r\n  </include>\r\n\r\n  <node pkg=\"turtlebot3_bringup\" type=\"turtlebot3_diagnostics\" name=\"turtlebot3_diagnostics\" output=\"screen\"/>\r\n</launch>\r\n```\r\n\r\nwhich launches: **turtlebot3_core.launch**\r\n```\r\n<launch>\r\n  <arg name=\"multi_robot_name\" default=\"\"/>\r\n\r\n  <node pkg=\"rosserial_python\" type=\"serial_node.py\" name=\"turtlebot3_core\" output=\"screen\">\r\n    <param name=\"port\" value=\"/dev/ttyACM0\"/>\r\n    <param name=\"baud\" value=\"115200\"/>\r\n    <param name=\"tf_prefix\" value=\"$(arg multi_robot_name)\"/>\r\n  </node>\r\n</launch>\r\n```\r\nThe former is being run using this params:\r\n`ROS_NAMESPACE=tb3_1 roslaunch turtlebot3_bringup turtlebot3_robot.launch multi_robot_name:=\"tb3_1\" set_lidar_frame_id:=\"tb3_1/base_scan\"`\r\n\r\nbut the TF tree doesn't successfully grab the namespace configuration for the `odom` and `base_footprint`: [TF Tree here](https://imgur.com/a/RG4MiWe)\r\n\r\nI'm getting this warning on the console when launching (not sure if it has relation or not): [Here](https://imgur.com/a/uYud34B)\r\n\r\nI've gone through the source code for both the `serial_node.py` and `SerialClient.py`, and effectively there's no room in the code to grab the namespace for the frames (`odom` & `base_footprint`), I've added the simple fix for the former source file:\r\n`tf_prefix = rospy.get_param('~tf_prefix','')  #line 53`\r\n`client = SerialClient(port_name, baud, tf_prefix=tf_prefix, fix_pyserial_for_test=fix_pyserial_for_test) #line 90`\r\n\r\nbut for the `SerialClient.py` the patching becomes a bit tricky (posted the same issue at the rosserial_python git but seems like it's not actively maintained, so hope over here I'd get some support)\r\n\r\n```\r\ndef __init__(self, port=None, baud=57600, tf_prefix=None, timeout=5.0, fix_pyserial_for_test=False): #line 324\r\n# fix for grabbing namespace configurations (line 336)\r\n        if tf_prefix== None:\r\n            # namespace was not initialized\r\n            pass\r\n        else:\r\n            # setting the argument var to class var\r\n            self.tf_prefix=tf_prefix\r\n```\r\n(this was the easy part)\r\n\r\nafter these come `setupPublisher(self, data):` & `setupSubscriber(self, data):`, and here becomes tricky, I've been spending the last couple of hours working the code, but the debugging gets a bit complex since we're working directly over the robot and the battery runs out very fast. So that's the reason I dare to ask for help from you guys.\r\n\r\n(Read the two previous closed issues about this, however, it seems like the fix in the firmware wasn't yet added to the mainstream??)\r\n\r\nIs it my guess that the problem can be fixed by changing this code correct? please advice otherwise.\r\n\r\nThanks\r\n"},"comment":{"url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/issues/comments/440996578","html_url":"https://github.com/ROBOTIS-GIT/turtlebot3/issues/340#issuecomment-440996578","issue_url":"https://api.github.com/repos/ROBOTIS-GIT/turtlebot3/issues/340","id":440996578,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0MDk5NjU3OA==","user":{"login":"brusangel","id":24450311,"node_id":"MDQ6VXNlcjI0NDUwMzEx","avatar_url":"https://avatars0.githubusercontent.com/u/24450311?v=4","gravatar_id":"","url":"https://api.github.com/users/brusangel","html_url":"https://github.com/brusangel","followers_url":"https://api.github.com/users/brusangel/followers","following_url":"https://api.github.com/users/brusangel/following{/other_user}","gists_url":"https://api.github.com/users/brusangel/gists{/gist_id}","starred_url":"https://api.github.com/users/brusangel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brusangel/subscriptions","organizations_url":"https://api.github.com/users/brusangel/orgs","repos_url":"https://api.github.com/users/brusangel/repos","events_url":"https://api.github.com/users/brusangel/events{/privacy}","received_events_url":"https://api.github.com/users/brusangel/received_events","type":"User","site_admin":false},"created_at":"2018-11-22T11:09:58Z","updated_at":"2018-11-22T11:09:58Z","author_association":"NONE","body":"it seems under some wifi environments if the AP is with traffic (means an AP deployed under a normal environment but testing), the latency on the network introduces a delay on the ROS messages, and the ends cannot grab the params before the timeout is reached. What I did to solve the issue was to increase both the buffer size and the timeout limit, recompiled and the problem was solved."}}
{"actor":{"display_login":"brusangel"}}