#emc-devel | Logs for 2006-06-29

[13:42:52] <jepler> since it's actually been used now, I'm thinking about checking in hal_dpp. I was also thinking about checking in the "C" source for the program I put on the microcontroller (it's very simple, turning 7 or 14 digital inputs into 2-byte serial packets whenver an input changes).
[13:43:43] <jepler> does anyone have feelings on the matter? should hal_dpp go in hal/drivers or hal/user_comps? where would the source for the microcontroller go?
[13:44:28] <jepler> er, "turning 7 or 14 digital inputs into 1- or 2-byte serial packets"
[13:49:29] <cradek> I'm not sure I understand the distinction, but maybe dpp is a driver, and the microcontroller stuff is a user_comp?
[13:50:30] <jepler> hm, I notice hal_joystick (userspace hal driver) is in user_comps/devices
[13:50:35] <jepler> that's the thing that's most like "hal_dpp"
[13:53:16] <cradek> oh, I thought of user as "human interface", not userland
[13:53:44] <cradek> I guess only jmk would know
[13:57:59] <jepler> ugh. axis bug: while emc is starting up, grab another window by the title bar and move it around until axis dies with the error: _tkinter.TclError: grab failed: another application has grab
[13:58:22] <cradek> oh good grief
[13:58:33] <cradek> doctor, doctor!
[14:00:25] <cradek> (I'm not serious)
[14:02:00] <cradek> but thanks for fixing the one that happens when there's a pending error when axis starts
[16:08:10] <alex_joni> yeah, same here (thanks)
[17:00:48] <skunkworks> sorry - what was axis mostly written in? p....
[17:02:22] <skunkworks> python
[17:02:29] <skunkworks> could not think of irt
[17:02:30] <skunkworks> it
[19:52:39] <alex_joni> question..
[19:52:51] <alex_joni> is it bad to switch the spindle brake on, while the spindle is rotating?
[19:53:08] <jepler> you'd have to talk to someone with a spindle brake
[19:53:10] <SWPadnos> causes more wear on the brake, but otherwise, I think it should be OK
[19:53:19] <cradek> while it's powered, or while it's rotating?
[19:53:23] <SWPadnos> you don't want to run it that way for long though
[19:53:29] <alex_joni> rotating
[19:53:31] <cradek> IMO powered=yes, rotating=probably not
[19:53:51] <alex_joni> then probably iocontrol is busted
[19:54:10] <alex_joni> but.. I think people can file a bug-report if they feel like it
[19:54:43] <jepler> We (used to?) have a delay between spindle on/off and brake on/off: http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?SectionIo
[19:54:46] <jepler> SPINDLE_OFF_WAIT = 1.0
[19:54:48] <jepler> How long, in seconds, to wait after the spindle has been turned off before applying the brake.
[19:54:52] <jepler> SPINDLE_ON_WAIT = 1.5
[19:54:54] <jepler> How long, in seconds, to wait after the spindle brake has been released before turning the spindle on.
[19:55:02] <alex_joni> yeah, that was in emc1
[19:55:04] <cradek> classicladder!
[19:55:51] <SWPadnos> or just have brake_off and brake_engaged inputs, and feed them from a delay (or CL if you want to do that)
[19:56:07] <SWPadnos> err - just one input: brake_sense
[19:56:14] <jepler> yeah, if we are no longer observing those delays inside the IO controller, then do something about it in CL
[20:32:18] <alex_joni> cradek: there is a EMC Status page/script in AXIS
[20:33:07] <alex_joni> I noticed it doesn't get killed when you exit AXIS and emc2
[20:33:20] <jepler> yeah, I've noticed that too
[20:33:42] <alex_joni> didn't try to relaunch emc.. maybe it reconnects? :D
[20:33:59] <jepler> I think it actually may
[20:34:11] <jepler> it looks like it's intended to exit, though.
[20:34:11] <jepler> try:
[20:34:11] <jepler> s.poll()
[20:34:11] <jepler> except emc.error: raise SystemExit
[20:34:50] <alex_joni> I LOVE how it selects in red the things that change
[20:34:56] <alex_joni> s/selects/highlights/
[20:38:10] <alex_joni> it does reconnect by itself
[20:38:45] <jepler> I don't understand how 's.poll()' (poll the stat buffer) succeeds after emc has completely exited..
[20:41:24] <alex_joni> this is fubared
[20:45:06] <jepler> hm .. something in axis.py between CVS version 1.205 and 1.207 now makes the feed override start at 0%!
[20:46:24] <alex_joni> jepler: something else..
[20:46:34] <alex_joni> there is no Hal_Configurator anymore
[20:46:40] <alex_joni> it's halshow.tcl now
[20:50:56] <jepler> hm, I can't get halshow.tcl to run anyway
[20:51:06] <jepler> I mean, the process starts, but it never shows any window
[20:52:18] <alex_joni> you need to run it with proper envs
[20:52:28] <alex_joni> look at tkemc I think
[20:52:47] <alex_joni> jepler: one question.. how did you get the spindle_speed in "EMC Status" ?
[20:53:02] <alex_joni> because it's borked..
[20:53:17] <jepler> from the stat buffer
[20:54:02] <jepler> alex_joni: does "halshow.tcl" work for you?
[20:54:07] <alex_joni> hang on
[20:54:41] <alex_joni> not really :(
[20:54:45] <alex_joni> but I know it used to
[20:54:55] <jepler> it's the field 'io.spindle.speed' in the stat buffer
[20:55:06] <alex_joni> yeah.. that's where it should be
[20:55:10] <alex_joni> but it's always at 1.0
[20:56:58] <jepler> doesn't hal have an "out" and an "in"?
[20:57:24] <jepler> for spindle speed
[20:57:33] <alex_joni> oh.. it does
[20:58:21] <alex_joni> but I never coded to use that..
[20:58:48] <alex_joni> I always used emcioStatus.spindle.speed
[20:59:19] <jepler> oh, what I meant was maybe you have to connect something to spindle-speed-in, and that number gets put in the stat buffer
[20:59:28] <jepler> but that doesn't seem to be true
[21:00:41] <alex_joni> no.. I meant to but never coded it like that
[21:00:55] <alex_joni> emcioStatus.spindle.speed always has the commanded speed
[21:01:06] <alex_joni> but it seems to be always 1.0.. for some strange reason
[21:01:13] <alex_joni> I suspect this happens in task somewhere
[21:04:28] <alex_joni> hmm.. there is some suspicious stuff..
[21:04:51] <alex_joni> in iotaskintf.cc (a global spindleSpeed).. any idea what that's about?
[21:07:15] <alex_joni> ok.. that's a BUG
[21:07:32] <alex_joni> no idea what that is doing in there.. but it seems to be working OK without that