{"action":"created","issue":{"url":"https://api.github.com/repos/JMRI/JMRI/issues/448","labels_url":"https://api.github.com/repos/JMRI/JMRI/issues/448/labels{/name}","comments_url":"https://api.github.com/repos/JMRI/JMRI/issues/448/comments","events_url":"https://api.github.com/repos/JMRI/JMRI/issues/448/events","html_url":"https://github.com/JMRI/JMRI/issues/448","id":124269323,"number":448,"title":"DCC++ Serial Flow control","user":{"login":"Dwayne75","id":4418115,"avatar_url":"https://avatars.githubusercontent.com/u/4418115?v=3","gravatar_id":"","url":"https://api.github.com/users/Dwayne75","html_url":"https://github.com/Dwayne75","followers_url":"https://api.github.com/users/Dwayne75/followers","following_url":"https://api.github.com/users/Dwayne75/following{/other_user}","gists_url":"https://api.github.com/users/Dwayne75/gists{/gist_id}","starred_url":"https://api.github.com/users/Dwayne75/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dwayne75/subscriptions","organizations_url":"https://api.github.com/users/Dwayne75/orgs","repos_url":"https://api.github.com/users/Dwayne75/repos","events_url":"https://api.github.com/users/Dwayne75/events{/privacy}","received_events_url":"https://api.github.com/users/Dwayne75/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-12-29T21:18:02Z","updated_at":"2016-01-02T18:46:40Z","closed_at":null,"body":"When I enable hardware flow control with DCC++ it breaks in master branch. After receiving the initial message from the Arduino it hangs. Here is a snip from the log\r\n\r\n2015-12-29 15:12:30,585 dccpp.DCCppReply                      DEBUG - DCCppReply.toString(): char i i msg iDCC++ BASE STATION FOR ARDUINO MEGA / ARDUINO MOTOR SHIELD: BUILD Dec 25 2015 12:40:17 [Receive]\r\n2015-12-29 15:12:30,585 jmrix.AbstractMRTrafficController     DEBUG - dispatch reply of length 87 contains iDCC++ BASE STATION FOR ARDUINO MEGA / ARDUINO MOTOR SHIELD: BUILD Dec 25 2015 12:40:17 state 25 [Receive]\r\n2015-12-29 15:12:50,139 dccpp.DCCppSerialPortController       DEBUG - CTS: false [Transmit]\r\n2015-12-29 15:12:50,139 dccpp.DCCppPacketizer                 DEBUG - DCC++ port not ready to receive [Transmit]\r\n2015-12-29 15:12:50,139 jmrix.AbstractMRTrafficController     DEBUG - Retry message: s attempts remaining: 5 [Transmit]\r\n\r\nIn dccpp.DCCppSerialPortController \r\n    public boolean okToSend\r\n\r\nWith flow control enabled it returns activeSerialPort.isCTS() which always stays at false.\r\nWith flow control disabled things work.\r\n\r\nIn Realease-4.2 even with flow control enabled. activeSerialPort.getFlowControlMode() is false. so it never returns activeSerialPort.isCTS().\r\n\r\nI looked at the code on the Arduino and I couldn't see any mention of hardware flow control, so perhaps its off by default or simply not supported?"},"comment":{"url":"https://api.github.com/repos/JMRI/JMRI/issues/comments/168416136","html_url":"https://github.com/JMRI/JMRI/issues/448#issuecomment-168416136","issue_url":"https://api.github.com/repos/JMRI/JMRI/issues/448","id":168416136,"user":{"login":"msunderwd","id":14199712,"avatar_url":"https://avatars.githubusercontent.com/u/14199712?v=3","gravatar_id":"","url":"https://api.github.com/users/msunderwd","html_url":"https://github.com/msunderwd","followers_url":"https://api.github.com/users/msunderwd/followers","following_url":"https://api.github.com/users/msunderwd/following{/other_user}","gists_url":"https://api.github.com/users/msunderwd/gists{/gist_id}","starred_url":"https://api.github.com/users/msunderwd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/msunderwd/subscriptions","organizations_url":"https://api.github.com/users/msunderwd/orgs","repos_url":"https://api.github.com/users/msunderwd/repos","events_url":"https://api.github.com/users/msunderwd/events{/privacy}","received_events_url":"https://api.github.com/users/msunderwd/received_events","type":"User","site_admin":false},"created_at":"2016-01-02T18:46:39Z","updated_at":"2016-01-02T18:46:39Z","body":"Yes, it should. Or at least hardware flow control does work on my Mac (and\ndoes not work on the PC). I will test whether no flow control works on the\nMac this evening and if so I will remove hardware flow control as an option.\n\nAside from possible user confusion, what is the issue with leaving it in as\nan option?\n\n- Mark\nOn Sat, Jan 2, 2016 at 1:34 PM Bob Jacobsen <notifications@github.com>\nwrote:\n\n> @Dwayne75 <https://github.com/Dwayne75> @msunderwd\n> <https://github.com/msunderwd> Could somebody please confirm whether a\n> DCC++ command station should be able to do hardware (CTS) flow control?\n> That's something that has to be built into the command station software,\n> with some kind of controlled input queue.\n>\n> If it's not there, we should remove it from JMRI: Change file\n> java/src/jmri/jmrix/dccpp//serial/DCCppAdapter.java to remove the \"option1\"\n> references at lines 41-42, 296-302, 319-320.\n>\n> —\n> Reply to this email directly or view it on GitHub\n> <https://github.com/JMRI/JMRI/issues/448#issuecomment-168415149>.\n>\n"}}