#emc-devel | Logs for 2008-06-07

[00:29:14] <fenn_> fenn_ is now known as fenn
[05:19:08] <cradek> did you guys ever narrow down the problem with rotaries on trunk that you saw?
[05:19:19] <cradek> oops, too late for emc work, goodnight
[14:29:24] <jmkasunich> cradek: I was working on something else last night - I'm gonna tackle it again this afternoon I think
[14:29:46] <jmkasunich> gotta mow the grass and run some other errands before it gets too hot
[18:03:30] <SWPadnos> too late. it's already too hot
[18:15:11] <jmkasunich> tell me about it
[18:15:16] <jmkasunich> just finishe
[18:15:17] <jmkasunich> d
[18:15:35] <SWPadnos> heh
[21:29:37] <jmkasunich> hmm, I think somebody is sending XYZUVWABC instead of XYZABCUVW
[21:31:20] <jmkasunich> the first time I issue G0B10, I get this:
[21:31:27] <jmkasunich> Issuing EMC_TRAJ_LINEAR_MOVE -- (+220,+116, +0,0.000000,-0.000000,0.000000,0.000000,0.000000,0.000000,0.000000,10.000000,0.000000, +1,45.000000,45.000000,225.000000, +0,)
[21:31:34] <jmkasunich> the second time I get this:
[21:31:42] <jmkasunich> Issuing EMC_TRAJ_LINEAR_MOVE -- (+220,+116, +0,0.000000,-0.000000,0.000000,0.000000,10.000000,0.000000,0.000000,10.000000,0.000000, +1,45.000000,45.000000,225.000000, +0,)
[21:37:06] <jepler> ouch
[21:37:33] <jmkasunich> trying to find the code that makes those calls
[21:45:24] <jmkasunich> ah-ha!
[21:45:42] <jmkasunich> emccanon.cc line 912: linearMoveMsg.end = to_ext_pose(x,y,z,u,v,w,a,b,c);
[21:50:20] <SWPadnos> oh funny - so it gets ping-ponged back and forth
[21:51:53] <jmkasunich> that works much better ;-)
[21:53:11] <jmkasunich> the bug only affects rapids - probably one reason it wasn't noticed earlier
[21:53:19] <CIA-32> EMC: 03jmkasunich 07TRUNK * 10emc2/src/emc/task/emccanon.cc: fix bug that screws up abcuvw rapids
[21:54:59] <jmkasunich> and 2.2 implements that canon call totally differently
[21:56:52] <jmkasunich> that turned out to be remarkably easy - wish all bugs were like that
[21:56:57] <SWPadnos> heh
[21:57:09] <SWPadnos> the hardest part is finding the file to modify
[21:57:29] <jmkasunich> yeah
[21:58:30] <skunkworks> some people like watching football...
[21:59:04] <SWPadnos> I haven't figured out why yet
[21:59:05] <skunkworks> * skunkworks likes watching software troubleshooting/debugging
[21:59:38] <SWPadnos> it's kind of like tennis. looks easy when people who are really good at it are doing it
[21:59:54] <SWPadnos> but it's a lot harder when you try it for yourself
[22:00:00] <jmkasunich> or when they get lucky
[22:00:34] <SWPadnos> well, sometimes it turns out to actually be easy :)
[22:02:50] <jmkasunich> I think I'll celebrate by having dinner
[22:03:05] <SWPadnos> good plan. I think we'll do the same
[22:03:09] <SWPadnos> (but not for the same reason)
[22:03:36] <skunkworks> I think it's a pancake night tonight.
[22:17:40] <cradek> dang, good job jmkasunich
[22:55:48] <jmkasunich> I'm guessing that might have been you? ;-)
[22:56:25] <cradek> I'm sure it was jepler
[22:56:35] <cradek> he rewrote some stuff that was working, to clean it up :-)
[22:56:48] <jmkasunich> ah
[22:57:12] <cradek> what a wild behavior that one caused
[23:17:00] <jepler> * jepler hides
[23:17:02] <jepler> yeah that was certainly me
[23:18:10] <cradek> :-)
[23:18:27] <cradek> really, I'm glad you cleaned that all up. we'll find all the bugs and it'll be fine.
[23:22:26] <jmkasunich> if we could only make EmcPose be sane
[23:22:42] <jmkasunich> typedef struct EmcPose {
[23:22:42] <jmkasunich> PmCartesian tran;
[23:22:42] <jmkasunich> double a, b, c;
[23:22:42] <jmkasunich> double u, v, w;
[23:22:42] <jmkasunich> } EmcPose;
[23:23:12] <jmkasunich> they should either all be PmCartesian, or none of them should be PmCartesian
[23:29:37] <jmkasunich> btw, I grepped for any other cases of that particular reversal, none found