{"action":"reopened","number":139,"pull_request":{"url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/139","id":222659050,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIyNjU5MDUw","html_url":"https://github.com/ROBOTIS-GIT/OpenCR/pull/139","diff_url":"https://github.com/ROBOTIS-GIT/OpenCR/pull/139.diff","patch_url":"https://github.com/ROBOTIS-GIT/OpenCR/pull/139.patch","issue_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues/139","number":139,"state":"open","locked":false,"title":"Workbench get servo info","user":{"login":"KurtE","id":1558080,"node_id":"MDQ6VXNlcjE1NTgwODA=","avatar_url":"https://avatars0.githubusercontent.com/u/1558080?v=4","gravatar_id":"","url":"https://api.github.com/users/KurtE","html_url":"https://github.com/KurtE","followers_url":"https://api.github.com/users/KurtE/followers","following_url":"https://api.github.com/users/KurtE/following{/other_user}","gists_url":"https://api.github.com/users/KurtE/gists{/gist_id}","starred_url":"https://api.github.com/users/KurtE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KurtE/subscriptions","organizations_url":"https://api.github.com/users/KurtE/orgs","repos_url":"https://api.github.com/users/KurtE/repos","events_url":"https://api.github.com/users/KurtE/events{/privacy}","received_events_url":"https://api.github.com/users/KurtE/received_events","type":"User","site_admin":false},"body":"@OpusK and @routiful - My guess is more for @routiful \r\n\r\nThis is sort of a reasonably major change to the items info stuff and how it works.\r\n\r\nBefore there was a static item[] table defined that when it sees a new servo with a different type, it fills in this static array with list of name, register, size info, which then the tool object then copied this array into it's own array. \r\n\r\nAs memory on the OpenCR and more particular OpenCM9.04 is limited.  They only allowed a sub-set of the items, which has come up many times on forum. \r\n\r\nThis update creates static const arrays for each of the servo types.  This leaves all of the memory associated with the list in program memory and does not use up the RAM memory.   So I did it with the full list.  I also removed the array in the tools objects so again saves memory.  Also changed all references to these items to be const.  \r\n\r\nI still like the idea of allowing the user see what is a list of valid address names, so started this change in this branch which has the code for the \"info\" command as mentioned in issue #136 \r\n\r\nSo far I have only tested with the updated program mentioned in issue #136 \r\nIt compiles with several warnings on the OpenCR, which I think we should address (note current released version does as well).\r\n\r\nAlso if the changes here are accepted, it should also be applied to the OpenCM code base and probably the main Dynamixel Workbench project as well. \r\n\r\nThis would also address other issues example from OPenCM9.04: https://github.com/ROBOTIS-GIT/OpenCM9.04/issues/43\r\n\r\nLet me know what you think... \r\n","created_at":"2018-10-13T16:06:35Z","updated_at":"2018-10-18T02:43:49Z","closed_at":null,"merged_at":null,"merge_commit_sha":"2f53ee21ae025b98ba7a2bae7aaaf79b49b5e7d6","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},{"login":"OpusK","id":18085958,"node_id":"MDQ6VXNlcjE4MDg1OTU4","avatar_url":"https://avatars3.githubusercontent.com/u/18085958?v=4","gravatar_id":"","url":"https://api.github.com/users/OpusK","html_url":"https://github.com/OpusK","followers_url":"https://api.github.com/users/OpusK/followers","following_url":"https://api.github.com/users/OpusK/following{/other_user}","gists_url":"https://api.github.com/users/OpusK/gists{/gist_id}","starred_url":"https://api.github.com/users/OpusK/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OpusK/subscriptions","organizations_url":"https://api.github.com/users/OpusK/orgs","repos_url":"https://api.github.com/users/OpusK/repos","events_url":"https://api.github.com/users/OpusK/events{/privacy}","received_events_url":"https://api.github.com/users/OpusK/received_events","type":"User","site_admin":false}],"requested_reviewers":[{"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},{"login":"OpusK","id":18085958,"node_id":"MDQ6VXNlcjE4MDg1OTU4","avatar_url":"https://avatars3.githubusercontent.com/u/18085958?v=4","gravatar_id":"","url":"https://api.github.com/users/OpusK","html_url":"https://github.com/OpusK","followers_url":"https://api.github.com/users/OpusK/followers","following_url":"https://api.github.com/users/OpusK/following{/other_user}","gists_url":"https://api.github.com/users/OpusK/gists{/gist_id}","starred_url":"https://api.github.com/users/OpusK/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OpusK/subscriptions","organizations_url":"https://api.github.com/users/OpusK/orgs","repos_url":"https://api.github.com/users/OpusK/repos","events_url":"https://api.github.com/users/OpusK/events{/privacy}","received_events_url":"https://api.github.com/users/OpusK/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":364702293,"node_id":"MDU6TGFiZWwzNjQ3MDIyOTM=","url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/labels/enhancement","name":"enhancement","color":"1d76db","default":true}],"milestone":null,"commits_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/139/commits","review_comments_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/139/comments","review_comment_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues/139/comments","statuses_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/statuses/2f9e106f97fa91a3a401bed9f44c896dc244bbf8","head":{"label":"KurtE:Workbench_get_servo_info","ref":"Workbench_get_servo_info","sha":"2f9e106f97fa91a3a401bed9f44c896dc244bbf8","user":{"login":"KurtE","id":1558080,"node_id":"MDQ6VXNlcjE1NTgwODA=","avatar_url":"https://avatars0.githubusercontent.com/u/1558080?v=4","gravatar_id":"","url":"https://api.github.com/users/KurtE","html_url":"https://github.com/KurtE","followers_url":"https://api.github.com/users/KurtE/followers","following_url":"https://api.github.com/users/KurtE/following{/other_user}","gists_url":"https://api.github.com/users/KurtE/gists{/gist_id}","starred_url":"https://api.github.com/users/KurtE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KurtE/subscriptions","organizations_url":"https://api.github.com/users/KurtE/orgs","repos_url":"https://api.github.com/users/KurtE/repos","events_url":"https://api.github.com/users/KurtE/events{/privacy}","received_events_url":"https://api.github.com/users/KurtE/received_events","type":"User","site_admin":false},"repo":{"id":132158825,"node_id":"MDEwOlJlcG9zaXRvcnkxMzIxNTg4MjU=","name":"OpenCR","full_name":"KurtE/OpenCR","private":false,"owner":{"login":"KurtE","id":1558080,"node_id":"MDQ6VXNlcjE1NTgwODA=","avatar_url":"https://avatars0.githubusercontent.com/u/1558080?v=4","gravatar_id":"","url":"https://api.github.com/users/KurtE","html_url":"https://github.com/KurtE","followers_url":"https://api.github.com/users/KurtE/followers","following_url":"https://api.github.com/users/KurtE/following{/other_user}","gists_url":"https://api.github.com/users/KurtE/gists{/gist_id}","starred_url":"https://api.github.com/users/KurtE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KurtE/subscriptions","organizations_url":"https://api.github.com/users/KurtE/orgs","repos_url":"https://api.github.com/users/KurtE/repos","events_url":"https://api.github.com/users/KurtE/events{/privacy}","received_events_url":"https://api.github.com/users/KurtE/received_events","type":"User","site_admin":false},"html_url":"https://github.com/KurtE/OpenCR","description":"Software for ROS Embedded board (a.k.a. OpenCR). OpenCR means Open-source Control Module for ROS.","fork":true,"url":"https://api.github.com/repos/KurtE/OpenCR","forks_url":"https://api.github.com/repos/KurtE/OpenCR/forks","keys_url":"https://api.github.com/repos/KurtE/OpenCR/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KurtE/OpenCR/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KurtE/OpenCR/teams","hooks_url":"https://api.github.com/repos/KurtE/OpenCR/hooks","issue_events_url":"https://api.github.com/repos/KurtE/OpenCR/issues/events{/number}","events_url":"https://api.github.com/repos/KurtE/OpenCR/events","assignees_url":"https://api.github.com/repos/KurtE/OpenCR/assignees{/user}","branches_url":"https://api.github.com/repos/KurtE/OpenCR/branches{/branch}","tags_url":"https://api.github.com/repos/KurtE/OpenCR/tags","blobs_url":"https://api.github.com/repos/KurtE/OpenCR/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KurtE/OpenCR/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KurtE/OpenCR/git/refs{/sha}","trees_url":"https://api.github.com/repos/KurtE/OpenCR/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KurtE/OpenCR/statuses/{sha}","languages_url":"https://api.github.com/repos/KurtE/OpenCR/languages","stargazers_url":"https://api.github.com/repos/KurtE/OpenCR/stargazers","contributors_url":"https://api.github.com/repos/KurtE/OpenCR/contributors","subscribers_url":"https://api.github.com/repos/KurtE/OpenCR/subscribers","subscription_url":"https://api.github.com/repos/KurtE/OpenCR/subscription","commits_url":"https://api.github.com/repos/KurtE/OpenCR/commits{/sha}","git_commits_url":"https://api.github.com/repos/KurtE/OpenCR/git/commits{/sha}","comments_url":"https://api.github.com/repos/KurtE/OpenCR/comments{/number}","issue_comment_url":"https://api.github.com/repos/KurtE/OpenCR/issues/comments{/number}","contents_url":"https://api.github.com/repos/KurtE/OpenCR/contents/{+path}","compare_url":"https://api.github.com/repos/KurtE/OpenCR/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KurtE/OpenCR/merges","archive_url":"https://api.github.com/repos/KurtE/OpenCR/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KurtE/OpenCR/downloads","issues_url":"https://api.github.com/repos/KurtE/OpenCR/issues{/number}","pulls_url":"https://api.github.com/repos/KurtE/OpenCR/pulls{/number}","milestones_url":"https://api.github.com/repos/KurtE/OpenCR/milestones{/number}","notifications_url":"https://api.github.com/repos/KurtE/OpenCR/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KurtE/OpenCR/labels{/name}","releases_url":"https://api.github.com/repos/KurtE/OpenCR/releases{/id}","deployments_url":"https://api.github.com/repos/KurtE/OpenCR/deployments","created_at":"2018-05-04T15:39:13Z","updated_at":"2018-10-11T01:50:14Z","pushed_at":"2018-10-14T21:58:26Z","git_url":"git://github.com/KurtE/OpenCR.git","ssh_url":"git@github.com:KurtE/OpenCR.git","clone_url":"https://github.com/KurtE/OpenCR.git","svn_url":"https://github.com/KurtE/OpenCR","homepage":"","size":105344,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":1,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":1,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"ROBOTIS-GIT:develop","ref":"develop","sha":"7404f8005db2c1cd57445dfd7e4f7f8d1e5a4e19","user":{"login":"ROBOTIS-GIT","id":14007947,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE0MDA3OTQ3","avatar_url":"https://avatars1.githubusercontent.com/u/14007947?v=4","gravatar_id":"","url":"https://api.github.com/users/ROBOTIS-GIT","html_url":"https://github.com/ROBOTIS-GIT","followers_url":"https://api.github.com/users/ROBOTIS-GIT/followers","following_url":"https://api.github.com/users/ROBOTIS-GIT/following{/other_user}","gists_url":"https://api.github.com/users/ROBOTIS-GIT/gists{/gist_id}","starred_url":"https://api.github.com/users/ROBOTIS-GIT/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ROBOTIS-GIT/subscriptions","organizations_url":"https://api.github.com/users/ROBOTIS-GIT/orgs","repos_url":"https://api.github.com/users/ROBOTIS-GIT/repos","events_url":"https://api.github.com/users/ROBOTIS-GIT/events{/privacy}","received_events_url":"https://api.github.com/users/ROBOTIS-GIT/received_events","type":"Organization","site_admin":false},"repo":{"id":57167157,"node_id":"MDEwOlJlcG9zaXRvcnk1NzE2NzE1Nw==","name":"OpenCR","full_name":"ROBOTIS-GIT/OpenCR","private":false,"owner":{"login":"ROBOTIS-GIT","id":14007947,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE0MDA3OTQ3","avatar_url":"https://avatars1.githubusercontent.com/u/14007947?v=4","gravatar_id":"","url":"https://api.github.com/users/ROBOTIS-GIT","html_url":"https://github.com/ROBOTIS-GIT","followers_url":"https://api.github.com/users/ROBOTIS-GIT/followers","following_url":"https://api.github.com/users/ROBOTIS-GIT/following{/other_user}","gists_url":"https://api.github.com/users/ROBOTIS-GIT/gists{/gist_id}","starred_url":"https://api.github.com/users/ROBOTIS-GIT/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ROBOTIS-GIT/subscriptions","organizations_url":"https://api.github.com/users/ROBOTIS-GIT/orgs","repos_url":"https://api.github.com/users/ROBOTIS-GIT/repos","events_url":"https://api.github.com/users/ROBOTIS-GIT/events{/privacy}","received_events_url":"https://api.github.com/users/ROBOTIS-GIT/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/ROBOTIS-GIT/OpenCR","description":"Software for ROS Embedded board (a.k.a. OpenCR). OpenCR means Open-source Control Module for ROS.","fork":false,"url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR","forks_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/forks","keys_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/teams","hooks_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/hooks","issue_events_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues/events{/number}","events_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/events","assignees_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/assignees{/user}","branches_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/branches{/branch}","tags_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/tags","blobs_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/git/refs{/sha}","trees_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/statuses/{sha}","languages_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/languages","stargazers_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/stargazers","contributors_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/contributors","subscribers_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/subscribers","subscription_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/subscription","commits_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/commits{/sha}","git_commits_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/git/commits{/sha}","comments_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/comments{/number}","issue_comment_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues/comments{/number}","contents_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/contents/{+path}","compare_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/merges","archive_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/downloads","issues_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues{/number}","pulls_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls{/number}","milestones_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/milestones{/number}","notifications_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/labels{/name}","releases_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/releases{/id}","deployments_url":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/deployments","created_at":"2016-04-26T22:48:46Z","updated_at":"2018-09-24T18:12:34Z","pushed_at":"2018-10-17T01:53:58Z","git_url":"git://github.com/ROBOTIS-GIT/OpenCR.git","ssh_url":"git@github.com:ROBOTIS-GIT/OpenCR.git","clone_url":"https://github.com/ROBOTIS-GIT/OpenCR.git","svn_url":"https://github.com/ROBOTIS-GIT/OpenCR","homepage":"","size":105563,"stargazers_count":110,"watchers_count":110,"language":"C","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":65,"mirror_url":null,"archived":false,"open_issues_count":3,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":65,"open_issues":3,"watchers":110,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/139"},"html":{"href":"https://github.com/ROBOTIS-GIT/OpenCR/pull/139"},"issue":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues/139"},"comments":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/issues/139/comments"},"review_comments":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/139/comments"},"review_comment":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/pulls/139/commits"},"statuses":{"href":"https://api.github.com/repos/ROBOTIS-GIT/OpenCR/statuses/2f9e106f97fa91a3a401bed9f44c896dc244bbf8"}},"author_association":"CONTRIBUTOR","merged":false,"mergeable":null,"rebaseable":null,"mergeable_state":"unknown","merged_by":null,"comments":4,"review_comments":0,"maintainer_can_modify":true,"commits":5,"additions":945,"deletions":1087,"changed_files":11}}
{"actor":{"display_login":"routiful"}}