{"action":"created","issue":{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/7290","repository_url":"https://api.github.com/repos/MarlinFirmware/Marlin","labels_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/7290/labels{/name}","comments_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/7290/comments","events_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/7290/events","html_url":"https://github.com/MarlinFirmware/Marlin/pull/7290","id":242893616,"number":7290,"title":"Low-level integration of MK2 Multiplexer","user":{"login":"tcm0116","id":1868773,"avatar_url":"https://avatars2.githubusercontent.com/u/1868773?v=4","gravatar_id":"","url":"https://api.github.com/users/tcm0116","html_url":"https://github.com/tcm0116","followers_url":"https://api.github.com/users/tcm0116/followers","following_url":"https://api.github.com/users/tcm0116/following{/other_user}","gists_url":"https://api.github.com/users/tcm0116/gists{/gist_id}","starred_url":"https://api.github.com/users/tcm0116/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tcm0116/subscriptions","organizations_url":"https://api.github.com/users/tcm0116/orgs","repos_url":"https://api.github.com/users/tcm0116/repos","events_url":"https://api.github.com/users/tcm0116/events{/privacy}","received_events_url":"https://api.github.com/users/tcm0116/received_events","type":"User","site_admin":false},"labels":[{"id":92052497,"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Improvement","name":"Improvement","color":"009800","default":false},{"id":281783768,"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Status:%20Don't%20Merge","name":"Status: Don't Merge","color":"b60205","default":false},{"id":342950962,"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Status:%20Experimental","name":"Status: Experimental","color":"0e8a16","default":false},{"id":195632380,"url":"https://api.github.com/repos/MarlinFirmware/Marlin/labels/Support:%20Hardware","name":"Support: Hardware","color":"006b75","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":26,"created_at":"2017-07-14T04:21:39Z","updated_at":"2017-09-21T18:48:14Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/pulls/7290","html_url":"https://github.com/MarlinFirmware/Marlin/pull/7290","diff_url":"https://github.com/MarlinFirmware/Marlin/pull/7290.diff","patch_url":"https://github.com/MarlinFirmware/Marlin/pull/7290.patch"},"body":"This PR enhances the initial integration of the MK2 multiplexer by generalizing its use beyond the MK2 multi-material upgrade. Strictly speaking, the MK2 multiplexer could potentially be used in a variety of extruder configurations, not just the single nozzle configuration. As such, this PR aims to accomplish the following:\r\n\r\n1. Provide a low-level integration of the multiplexer control signals, such that the presence of the multiplexer is automatically handled in the `Stepper` class.\r\n2. Eliminate the artificial restrictions on the use of the multiplexer to only the MK2 multi-material configuration.\r\n3. Facilitate the use of 2, 4 or 8 channel MK2 multiplexers.\r\n\r\nI don't have an MK2 multiplexer to test this with, so this PR is pretty much theoretical at this point. If anyone has one, or knows how I could acquire one for testing purposes, that would go a long way in validating this capability.\r\n\r\nOne area of potential improvement is with the ability for the multiplexer to be used in a mixing extruder setup. I believe it's theoretically possible since the extruder steps are generated sequentially in `Stepper::isr`. However, the issue is that the direction lines for each extruder would need to be set in addition to the multiplexer control lines before each individual step pulse is generated, which could potentially overload the capability of the Stepper ISR on the 8-bit processors. This would require some analysis that I'm not very familiar with, and probably some testing with the multiplexer and an oscilloscope. "},"comment":{"url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/comments/331247397","html_url":"https://github.com/MarlinFirmware/Marlin/pull/7290#issuecomment-331247397","issue_url":"https://api.github.com/repos/MarlinFirmware/Marlin/issues/7290","id":331247397,"user":{"login":"pyr0ball","id":8482805,"avatar_url":"https://avatars2.githubusercontent.com/u/8482805?v=4","gravatar_id":"","url":"https://api.github.com/users/pyr0ball","html_url":"https://github.com/pyr0ball","followers_url":"https://api.github.com/users/pyr0ball/followers","following_url":"https://api.github.com/users/pyr0ball/following{/other_user}","gists_url":"https://api.github.com/users/pyr0ball/gists{/gist_id}","starred_url":"https://api.github.com/users/pyr0ball/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyr0ball/subscriptions","organizations_url":"https://api.github.com/users/pyr0ball/orgs","repos_url":"https://api.github.com/users/pyr0ball/repos","events_url":"https://api.github.com/users/pyr0ball/events{/privacy}","received_events_url":"https://api.github.com/users/pyr0ball/received_events","type":"User","site_admin":false},"created_at":"2017-09-21T18:48:14Z","updated_at":"2017-09-21T18:48:14Z","author_association":"NONE","body":"Perhaps that is due to the orientation of the motor and gear, rather than the electronics?"}}
{"actor":{"display_login":"pyr0ball"}}