Closed oskay closed 10 years ago
So, the issue was fixed?
Well that was weird, no, didn't mean to do that. I blame AJAX! After work tonight I'll be able to look into this more and recompile it on XP. The latest version of robopaint this will be built on upgrades the version of node webkit and the JS serialport "driver" so hopefully good things will come of it.
Cool! I didn't know you got a job again James - the last I heard you were out of work. Congrats! I hope it's something that you enjoy a lot-
*Brian
On Thu, Nov 21, 2013 at 1:28 PM, James T notifications@github.com wrote:
Well that was weird, no, didn't mean to do that. I blame AJAX! After work tonight I'll be able to look into this more and recompile it on XP. The latest version of robopaint this will be built on upgrades the version of node webkit and the JS serialport "driver" so hopefully good things will come of it.
— Reply to this email directly or view it on GitHubhttps://github.com/evil-mad/robopaint/issues/115#issuecomment-29015356 .
Thanks! I can't say it's something I enjoy a lot as it's freelancing and the hours can be torturous, but it's good work with lots of respect that builds my skills. Hopefully one day I can break free and be what I really always wanted.. a _lumberjack!_
Took a minute and grabbed Visual Studio 2010 express for XP, installed it and Node, then recompiled and built node-serialport (Yes, successfully, first time!). And I DO have confirmation that the EXE installer downloaded for the EBB silently fails to install the driver and you have to point windows to the driver dir and it'll grab the cab file and do the rest for you.
Next part: Running RoboPaint This does work, but.. getting 30 errors a second into the console. It's found the port and correctly identified it, but.. nothing is being received. Will debug more later and should have more answers.
And it's painting too. I'm now going to test to see if the XP compiled binaries are compatible with my Win 7 x64 machine, and if they are then I can make that the next build. If not, then I'm going to have to fork the windows build and make a _FOURTH_ release file just for XP :anguished:
Ok so... Good news and bad news:
There's nothing stopping RoboPaint from starting happily and running in Windows XP! I even have a _test only_ release of 0.6.5 for initial use, with caveat of course (see below).
It has to use the latest release (1.2.5) of node-serialport, which is not well tested, and has problems with RoboPaint in windows. It's a real dual-edged sword that RoboPaint sits on such an active (and volatile) project at its core. Luckily if we can describe our problems well, their awesome team (including @giseburt) is sure to be able to help.
Assuming I had made all the right moves with the XP compiled interface, I launched into testing on Win7 x64, only to find that it's horribly broken. Either a bad command is sent, or the write buffer is filled too quickly, or some part of the serial on the EBB shuts down (unlikely), but on windows while doing certain specific movements, it just locks up and I have to completely disconnect the EBB from USB and power, and replug it back in.
Also some part of this new serialport code breaks the previously working windows USB serial disconnect detection. In fact the whole thing is just an unhappy mess and I don't think I can release the next version _at all_ without some serious assistance from the serialport guys.
I'm not sure that I follow all of this.
Intended to link to the 0.6.5 XP Test release here. This has the bug mentioned above, though might require testing to confirm. If run at low buffer latency values and lower speeds this may mitigate the issue.
EDIT: As an addendum, I do in fact plan on bugging their team or opening an issue ASAP, I just need a better handle on what the actual problem is.
Youch. Can somebody someday explain to me why this ancient thing called a serial port is so damn hard to control properly in modern OSes? This would be a lot easier in DOS it sounds like.
Is the "test build" a usable version?
It contains the same issue subtle yet critical currently blocking release for the next windows version, wherein during a print it will suddenly lose communication with the EBB and though the application continues to work, the board will not receive any more commands until the board power is reset and the application closed and reopened. I'd rather not call that a ready release.
I have discussed the issue with @giseburt and he said he'll be taking a look at the issues ASAP, and has already talked to the node-serialport core team and they suggest rolling back to 1.1 as there were LOADS of windows specific changes in the latest point releases. My current issue becomes that 1.1 refuses to compile on XP, though I'd imagine with some goading I can probably get it to work.
It's probably worth it to issue a non-XP release to fix other folk's issues, and work on the XP problem for another future release. While there are people out there using XP, for your audience Win 8 is probably more important than XP.
*Brian
On Sun, Nov 24, 2013 at 3:07 PM, James T notifications@github.com wrote:
It contains the same issue subtle yet critical currently blocking release for the next windows version, wherein during a print it will suddenly lose communication with the EBB and though the application continues to work, the board will not receive any more commands until the board power is reset and the application closed and reopened. I'd rather not call that a ready release.
I have discussed the issue with @giseburt https://github.com/giseburtand he said he'll be taking a look at the issues ASAP, and has already talked to the node-serialport core team and they suggest rolling back to 1.1 as there were LOADS of windows specific changes in the latest point releases. My current issue becomes that 1.1 refuses to compile on XP, though I'd imagine with some goading I can probably get it to work.
— Reply to this email directly or view it on GitHubhttps://github.com/evil-mad/robopaint/issues/115#issuecomment-29166074 .
I agree. This is high priority, but the other is actually critical.
Hmm... reasonably official stats claim XP coverage is still surprisingly high, if you go by those things of course. Honestly considering how niche the bot is at this point, we should just do an OS survey for current or soon to be bot users.
Good news is we've got ~50% of Win users covered (Vista, 7), and add Mac and Linux for an additional 10%!
_Breakthrough:_ Compiling node-serialport v1.1.3 works wonderfully on XP, and it behaves far far better, no sudden stops/EBB death, etc. This should also bring in full Win VIsta/7 compatibility for the NW 0.8.0 upgrade for RoboPaint 0.6.5
Will it work any better on Win8? Not a clue. Will attempt to cobble together a release momentarily for testing.
Turns out the upgrade to NW 0.8.0 is the killer for this working code, but so far, only on Win7. If I need to get the next release out before I get a fix for the lock up error on Win7, I'm going to have to point Win7+ users to the 0.6.4 version instead.
I've sent a new message out to @giseburt detailing my findings and hope to hear back soon.
Believed to be solved in release 0.7.0. Closing now; please re-open this issue if it re-appears.
As reported by Brian on the wcb-discuss mailing list: https://groups.google.com/d/topic/wcb-discuss/cpmuogkylLw/discussion