{"action":"created","issue":{"url":"https://api.github.com/repos/grbl/grbl/issues/651","labels_url":"https://api.github.com/repos/grbl/grbl/issues/651/labels{/name}","comments_url":"https://api.github.com/repos/grbl/grbl/issues/651/comments","events_url":"https://api.github.com/repos/grbl/grbl/issues/651/events","html_url":"https://github.com/grbl/grbl/issues/651","id":67583479,"number":651,"title":"STEP and DIR at different ports","user":{"login":"sebbra","id":2807504,"avatar_url":"https://avatars.githubusercontent.com/u/2807504?v=3","gravatar_id":"","url":"https://api.github.com/users/sebbra","html_url":"https://github.com/sebbra","followers_url":"https://api.github.com/users/sebbra/followers","following_url":"https://api.github.com/users/sebbra/following{/other_user}","gists_url":"https://api.github.com/users/sebbra/gists{/gist_id}","starred_url":"https://api.github.com/users/sebbra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sebbra/subscriptions","organizations_url":"https://api.github.com/users/sebbra/orgs","repos_url":"https://api.github.com/users/sebbra/repos","events_url":"https://api.github.com/users/sebbra/events{/privacy}","received_events_url":"https://api.github.com/users/sebbra/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-04-10T12:26:55Z","updated_at":"2015-04-10T15:09:46Z","closed_at":"2015-04-10T15:09:46Z","body":"Is it possible to have the STEP and DIR pins for x, y and z at different ports?\r\n\r\nThe advantage is that you have more flexibility for different arduino shields, \r\ne.g. [X-NUCLEO-IHM01A1](http://www.st.com/web/en/catalog/tools/PF260715) with L6474.\r\nThe disadvantage is that the pins are not set at the exact same time,\r\nthey have some cycles between the axes.\r\n\r\n\r\nMaybe we can have a compiletime option for alternate pin-mappings.\r\n\r\n**Example for X_STEP:**\r\n*CPU_map.h*\r\n```C\r\n[..]\r\n  #define X_STEP_DDR        DDRD\r\n  #define X_STEP_PORT      PORTD\r\n  #define X_STEP_BIT           2  // Uno Digital Pin 2\r\n[..]\r\n```\r\n*Stepper.c*\r\n```C\r\n[..]\r\n  if (st.counter_x > st.exec_block->step_event_count) {\r\n    st.step_outbits |= (1<<X_AXIS);\r\n    st.counter_x -= st.exec_block->step_event_count;\r\n    if (st.exec_block->direction_bits & (1<<X_AXIS)) { sys.position[X_AXIS]--; }\r\n    else { sys.position[X_AXIS]++; }\r\n  }\r\n\r\n[..]\r\n\r\n   X_STEP_PORT = (X_STEP_PORT & ~X_STEP_BIT ) |\r\n                                 ((st.step_outbits >> X_AXIS) << X_STEP_BIT );\r\n[..]\r\n\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/grbl/grbl/issues/comments/91587737","html_url":"https://github.com/grbl/grbl/issues/651#issuecomment-91587737","issue_url":"https://api.github.com/repos/grbl/grbl/issues/651","id":91587737,"user":{"login":"chamnit","id":948029,"avatar_url":"https://avatars.githubusercontent.com/u/948029?v=3","gravatar_id":"","url":"https://api.github.com/users/chamnit","html_url":"https://github.com/chamnit","followers_url":"https://api.github.com/users/chamnit/followers","following_url":"https://api.github.com/users/chamnit/following{/other_user}","gists_url":"https://api.github.com/users/chamnit/gists{/gist_id}","starred_url":"https://api.github.com/users/chamnit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chamnit/subscriptions","organizations_url":"https://api.github.com/users/chamnit/orgs","repos_url":"https://api.github.com/users/chamnit/repos","events_url":"https://api.github.com/users/chamnit/events{/privacy}","received_events_url":"https://api.github.com/users/chamnit/received_events","type":"User","site_admin":false},"created_at":"2015-04-10T15:09:46Z","updated_at":"2015-04-10T15:09:46Z","body":"@sebbra : Yes it's possible to separate them, but I don't plan on installing this or have to support it. It's fairly easy to do yourself."}}