{"push_id":2891238546,"size":1,"distinct_size":1,"ref":"refs/heads/Add-Joint-6-7-to-move-all-joints","head":"ca0a7fda435b692425ee30251a451b1f848ccfd8","before":"b2934ea4ff8d3cdb2441f4334788892b5d36940d","commits":[{"sha":"ca0a7fda435b692425ee30251a451b1f848ccfd8","author":{"name":"JamesNewton","email":"dc469ad7b1e1441d314e32bd948f5f5ebd1a1418@massmind.org"},"message":"Add check for 'x' on J6/7 as \"do not change\"\n\nThis allows the special case where you want to move J7 and NOT affect J6. \r\n\r\nBackground:\r\nFor J1-5, it knows where it last sent them, and if a programmer doesn't want to change or specify the desired joint angle (just wants it to stay the same) then DDE can just send the last commanded joint angle.  E.g. move_all_joints( 10, 20, [0], 40, 50) would move joints 1, 2, 4, and 5, but not affect joint 3. \r\n\r\nSince DDE doesn't really know for sure where these Dynamixel joints, J6 and J7, are (because EERoll and EESpan could be used to update their position) it can't reliably track the last commanded joint angle for these joints. The better solution is not just not send a value for those joints when they are not specified. If you move_all_joints with 5 numbers, DexRun (on this branch) will not pass on anything for Roll or Span. If you send 6 numbers, it will set Roll (treating it as a joint), but not Span. If you send 7 numbers it will set all 7 joints, including Roll and Span (as joints). But what if you want to change 7 and not 6? This update supports that by looking for an \"angle\" of \"x\" (lower case x). \r\n\r\nWe can't just send \"nothing\" because adjacent delimiters are treated as a single delimiter by strtok. \r\n\r\nhttp://www.cplusplus.com/reference/cstring/strtok/\r\n\r\ne.g. if your delimiters are space and comma (as ours are) and you send in \"1, 2, 3, 4, 5, , 7\" it will produce 1 2 3 4 5 7. Meaning 7 is considered the sixth value. \r\n\r\nIt is easy enough to just check for 'x' as well as null when deciding if the Roll or Span should be updated.","distinct":true,"url":"https://api.github.com/repos/HaddingtonDynamics/Dexter/commits/ca0a7fda435b692425ee30251a451b1f848ccfd8"}]}
{"actor":{"display_login":"JamesNewton"}}