#emc | Logs for 2006-06-07

[12:46:37] <CIA-8> 03alex_joni 07HEAD * 10documents/lyx/emc2/introduction.lyx: small typo reported by anders wallin
[14:08:17] <etla> hi all
[14:08:25] <etla> how do I create a thread in HAL ?
[14:09:38] <SWPadnos> halcmd loadrt threads name1=thread_name period1=period_in_ns
[14:10:02] <SWPadnos> up to 3 of them (name1/period1, name2/period2 ...)
[14:10:21] <SWPadnos> then you can unloadrt threads, the threads themselves are persistent
[14:11:06] <etla> ok, I'm trying to test my 5i20 card, but the driver itself does not start or create a thread when it is laoded...
[14:11:08] <etla> loaded
[14:11:17] <SWPadnos> nope
[14:11:31] <SWPadnos> so you
[14:11:50] <etla> can I use emctop or something similar to view all HAL pins at once ?
[14:11:51] <SWPadnos> so you'll want to create a thread with the m5i20 read functions, then the write functions in it
[14:12:05] <SWPadnos> not all of them - there are quite a lot of them
[14:12:25] <SWPadnos> (well over 120 pins/params for the mesa(
[14:12:25] <etla> yes, I just want the update functions for now to see that my optoisolator board is working
[14:12:28] <SWPadnos> )
[14:13:21] <SWPadnos> ok. you may be able to get away with no read functions then - just connect some parameters to the output pins (or a freqgen)
[14:13:46] <etla> nope, need to run the m5i20 drivers update function for anything to happen
[14:14:01] <etla> at least I'm hoping so, otherwise something is wrong or my optoiso card is dead...
[14:14:22] <SWPadnos> sure - but there should be a read function, and a write function
[14:14:29] <SWPadnos> it can't be done with only one of them
[14:14:44] <SWPadnos> (ie - the driver isn't any good if there's only one funct for both read and write)
[14:15:03] <etla> what would be a good period for reading a jogwheel, 100ppr
[14:15:21] <SWPadnos> almost anything would work. try 1 ms
[14:16:19] <SWPadnos> you need to use the digital-in-read and digital-out-write functions
[14:16:41] <SWPadnos> or encoder-read if you connected the handwheel to an encoder input
[14:16:41] <etla> ok, now I have the thread - now for addf
[14:17:08] <SWPadnos> how are you running halcmd? (interactive or typed on the command line every time)
[14:17:33] <etla> type in command line
[14:18:00] <SWPadnos> ok. you may be able to save some typing if you run it interactively - halcmd -kf
[14:18:16] <SWPadnos> though it may not work out that way, because it doesn't have history or command editing like the shell ;)
[14:18:43] <SWPadnos> anyway - you'll need to issue a halcmd start command to get the threads running
[14:19:35] <etla> would be nice if the pinout was documented better, now I need to guess where the in-XX pins are...
[14:20:06] <etla> so with the update hooked to the thread and the thread started, halmeter should show the status on say in-00 ?
[14:20:36] <SWPadnos> that is a problem. the pinout is in the m5i20/HOSTM54E.PIN file, I believe
[14:20:43] <SWPadnos> yep
[14:20:48] <alex_joni> etla: halcmd start (not to be forgotten)
[14:20:58] <SWPadnos> ... and the thread started ...
[14:21:16] <etla> they are two different things ?
[14:21:34] <SWPadnos> no - I was pointing out that you mentioned that you had started the threads ;)
[14:22:08] <SWPadnos> and also assuming that you used the m5i20.0.digital-in-read function
[14:22:32] <SWPadnos> the update-misc function only updates the onboard LEDs and that kind of thing
[14:22:36] <etla> yes, is digital-in-read the only one needed ?
[14:22:53] <SWPadnos> if all you want to do is look at inputs with halmeter/halscope, yes
[14:23:31] <etla> still no great success...
[14:23:37] <SWPadnos> (unless there is some requirement to "prep" the board before reading, which I'm not aware of)
[14:24:16] <SWPadnos> can you pastebin the output of halcmd save?
[14:24:33] <SWPadnos> err - without all the parameters :)
[14:24:36] <etla> at least everything reads true now - so the pullup resistors are OK :)
[14:24:40] <SWPadnos> heh
[14:25:01] <etla> how does save work
[14:25:14] <SWPadnos> it prints the HAL state to the shell
[14:25:30] <SWPadnos> you can pipe it to a file though
[14:25:45] <etla> I have, components:
[14:25:51] <etla> loadrt threads name1=tt period1=1000000
[14:25:52] <etla> loadrt hal_m5i20 loadFpga=1
[14:26:02] <etla> # realtime thread/function links
[14:26:02] <etla> addf m5i20.0.digital-in-read tt
[14:26:18] <etla> and lots of parameters
[14:26:41] <etla> what about watchdog, is that killing me ?
[14:26:44] <SWPadnos> ok. you can stick those commands into a file, if you want to make it eaasier to do this testing ;)
[14:26:59] <SWPadnos> that could be, but the normal servo period is 1 ms
[14:27:13] <etla> wait, now I get something !
[14:27:25] <etla> in-31 is on my pin15....
[14:27:54] <etla> thanks for the help!
[14:27:59] <SWPadnos> sure
[14:28:08] <SWPadnos> you probably have a cable backwards or something
[14:28:08] <etla> now I want to hook up the jogwheel and try the encoder HAL component
[14:28:44] <etla> it's probably just the fpga config which has 16 inputs and 8 outputs per 24 pin cable
[14:29:26] <SWPadnos> right. though in-31 should be on pin 31 of P4
[14:29:39] <SWPadnos> pin 15 should be in-23
[14:30:20] <etla> I don't think it is that way in reality
[14:30:46] <etla> in-30 is pin 14 on P4
[14:31:04] <SWPadnos> hmmm.
[14:31:19] <SWPadnos> they shouldn't be on successive pins
[14:31:28] <etla> pin 16-24 on P4 are probably the 8 outputs from this cable
[14:31:32] <SWPadnos> how is your numbering done? (zig-zag, or columns)
[14:32:12] <etla> I'm pretty sure It's correct since every second pin is GND and 49 is +5V and those are correct on my board
[14:32:22] <SWPadnos> on the mesa card, the numbers should be zig-zag, so one column is all ground (the even numbers), and the other column is all the signals (the odd numbered pins)
[14:32:32] <etla> yep
[14:32:46] <SWPadnos> ok, but pin 14 shouldn't be connected to any signal - all the evens are GND
[14:33:05] <SWPadnos> but anyway - if you can figure out the pattern, all is well :)
[14:33:13] <etla> ok so the 14th signal pin on this connector
[14:33:22] <SWPadnos> ah - great! ;)
[14:34:23] <etla> the pinout should maybe be in the manual ?
[14:36:49] <alex_joni> SWPadnos: know anything about grippers?
[14:37:56] <SWPadnos> err - robotic things that grab stuff?
[14:38:22] <alex_joni> yeah
[14:38:25] <SWPadnos> etla, I agree. I had a discussion with Roguish about it as well - that's the only reason I knew where to look
[14:38:38] <SWPadnos> I don't know much, except that they're cool ;)
[14:40:39] <etla> why is bin/halcmd linksp m5i20-0.in-31 encoder.0.phase-A
[14:40:40] <etla> no good ?
[14:40:57] <etla> do I need to create a dummy signal name everytime ?
[14:41:12] <SWPadnos> you can do linkpp instead - you're trying to connect two pins
[14:41:17] <SWPadnos> it
[14:41:34] <SWPadnos> it'll create a signal with the same name as the first pin specified
[14:41:49] <etla> ok
[14:45:23] <etla> If anyone is interested in patching the manual, in Hal_Introduction 3.4 Parameters section it shoudl probably be update-counters and not count-pulses ??
[14:45:25] <SWPadnos> incidentally, are you doing this so you can use a handwheel with the mesa card, or just to test the I/O?
[14:45:36] <etla> for a handwheel
[14:45:52] <SWPadnos> ok. I only ask because the mesa card has 8 encoder inputs (I think)
[14:46:25] <SWPadnos> it might be easier to use hardware ;)
[14:46:31] <etla> the config that comes with emc2 has 4 axes of motion, 4 encoder counters
[14:46:35] <etla> I think ;)
[14:46:48] <SWPadnos> it has "secondary encoders" for the 4 motion axes
[14:47:11] <SWPadnos> those are the SA0 / SB0 etc
[14:47:27] <etla> but I don't know how they work.
[14:47:38] <etla> can I enable them with a driver funtion ?
[14:47:53] <SWPadnos> well - I'd have to look at the code to find that out ;)
[14:47:56] <etla> or is it another fpga config to load on the fpga
[14:48:22] <SWPadnos> no. there is a new 8 axis config, but I haven't checked it out (or into CVS)
[14:48:50] <etla> I dont want 8 axis since I need the I/O pins that would be taken up by the extra axes
[14:49:06] <etla> I want 4 axes with maybe a fifth as a spare (rotary table sometime in the future)
[14:49:26] <SWPadnos> yep. I think Pete W was talking about changing the way I/O works so you can more easily use most/all of the pins as I/O instead of the advanced functions
[14:49:47] <SWPadnos> this card is fast enough to do spindle as well, so a sixth could be useful for you
[14:50:02] <etla> the 4 I want now are XYZ + spindle
[14:50:07] <SWPadnos> ah
[14:50:31] <etla> yeah ! now I see encoder.0.rawcounts changing as I spin the wheel
[14:50:44] <etla> next up must be halui !
[14:51:04] <cradek> cool
[14:51:06] <SWPadnos> cool
[14:51:34] <SWPadnos> use halscope - you can track changes
[14:51:37] <cradek> I don't think anyone has tried the jogwheel yet
[14:51:59] <giacus`> giacus` is now known as giacus
[14:52:06] <etla> hmm... it works in 4x mode evethough my wheel has 100 detents (no idea to count 400ppr)
[14:52:25] <SWPadnos> are you getting 400 counts per rev?
[14:52:37] <etla> yes
[14:52:43] <SWPadnos> interesting
[14:53:07] <cradek> I think jmk's jogwheel did that too
[14:53:12] <etla> I should mention that the jogwheel has differential signals and I am using only A+ and B+
[14:53:27] <etla> if that matters - I don't think
[14:53:28] <SWPadnos> that's fine - you have single-ended inputs
[14:53:43] <etla> I might put a rs422 receiver in the final version
[14:53:59] <SWPadnos> it certainly wouldn't hurt noise immunity
[14:54:27] <etla> with a 1ms thread, spinning the wheel aggressively looses position
[14:55:01] <SWPadnos> 400 ppr = 2.5 RPS at 1000 counts / sec
[14:55:25] <etla> can the thread speed be changed on the fly ? or do I need to halcmd restart and do the config again ?
[14:55:26] <SWPadnos> I think you want ~1.5:1 to 2:1 sample rate, so that seems plausible
[14:55:37] <SWPadnos> restart and do it again
[14:55:40] <alex_joni> etla: halcmd save first
[14:55:55] <alex_joni> then simply halcmd -kf < foo.hal
[14:55:58] <alex_joni> I think
[14:56:00] <SWPadnos> yep - that'll do everything except the halcmd start
[14:56:17] <etla> a restart will clear everything ?
[14:57:52] <etla> apparently not... got a whole bunch of error msgs
[14:59:11] <etla> etla@ubuntu:~/emc2$ bin/halcmd -f jog.hal
[14:59:12] <etla> insmod: error inserting '/home/etla/emc2/rtlib/encoder.ko': -1 File exists
[14:59:12] <etla> HAL:2: ERROR: insmod failed, returned 1
[15:00:04] <SWPadnos> you did scripts/realtime restart?
[15:00:28] <etla> er... bin/halcmd restart ;)
[15:00:43] <SWPadnos> hmm. didn't know there was one ;)
[15:01:48] <etla> ERROR: Module hal_lib is in use by encoder,threads,hal_m5i20
[15:01:58] <etla> I need to wipe clean HAL first somehow...
[15:01:59] <SWPadnos> I'd do halcmd save / realtime stop / (edit the thread period in the saved file) / realtime start / halcmd -kf saved.hal / halcmd start
[15:02:45] <SWPadnos> you can also add the "start" command to the saved file
[15:03:01] <etla> realtime stop gives me ERROR: Module hal_lib is in use by encoder,threads,hal_m5i20
[15:03:26] <SWPadnos> oops - halcmd unloadrt all
[15:04:16] <etla> why is rawcounts a parameter ?? sounds more like a pin.
[15:04:40] <SWPadnos> because it isn't expected to be used for control purposes - the scaled "value" is the intended output
[15:05:32] <etla> ok, now with a 10x faster thread, i.e. 100us I cannot get it to loose steps
[15:05:40] <etla> will a 100us thread hurt my emc performance ??
[15:05:56] <SWPadnos> I wouldn't think so
[15:06:03] <etla> great.
[15:06:09] <SWPadnos> the stepgen thread often runs at ~15-20 uS
[15:06:41] <etla> now I need to call the other function to get encoder.0.counts
[15:07:12] <skunkworks> jepler: jog override speed is very cool. Nice job
[15:07:28] <jepler> skunkworks: you mean the new slider in axis? Thanks, I am pleased with how it turned out.
[15:07:47] <SWPadnos> your thread should look something like m5i20.0.digital-in-read / encoder.0.count-pulses (or whetever it was)
[15:08:05] <SWPadnos> err - update-counters
[15:08:20] <etla> I have that now, but that updates only the raw value
[15:08:29] <etla> then I need capture position to get the scaled output pin
[15:08:37] <skunkworks> jepler: yes the slider
[15:08:48] <SWPadnos> etla, is the scale parameter nonzero?
[15:09:41] <etla> yes, I tried to put 0.25 but it does not seem to have an effect. now that I added capture-position to the thread I get counts to update but it's still 4x mode
[15:09:57] <etla> wait... it might be encoder.0.position that is scaled
[15:10:20] <SWPadnos> yes - position is the float output, counts is the raw count
[15:10:29] <etla> oh and the scale works backwards... now I get +16 for each pulse :)
[15:10:33] <SWPadnos> and position-scale is the scale factor
[15:10:45] <SWPadnos> yep - it's the number of steps per user unit (or revolution, I think)
[15:10:57] <etla> ok, now with scale 4 it works right.
[15:11:09] <Lerneaen_Hydra> hi
[15:11:18] <etla> but for interfacing with halui and jogging I'm not sure which output would be more useful
[15:11:42] <SWPadnos> that's a good question, which I don't have the answer to
[15:11:50] <cradek> halui wants integer counts, not float position
[15:12:12] <etla> that is what I thought
[15:12:25] <SWPadnos> hmmm - that could be a problem, with the counts being a parameter, and the position being a float
[15:12:39] <etla> now I need to dig up the halui documentation - was it in the wiki ?
[15:12:54] <SWPadnos> hold on - counts is a pin, it's rawcounts that's the parameter
[15:12:57] <cradek> SWPadnos: I know I hooked it up...?
[15:13:01] <cradek> yeah that's the ticket
[15:13:17] <SWPadnos> so there are 3 position outputs ;)
[15:13:47] <skunkworks> http://www.linuxcnc.org/Hal_Documentation.pdf
[15:13:50] <cradek> you won't find any halui jogwheel documentation
[15:14:06] <etla> do I need to have both capture-position and update-counters running in the thread ?
[15:14:42] <etla> probably yes...
[15:14:43] <jepler> you can update-counters in a slower thread if you prefer
[15:17:54] <cradek> I wonder what AXIS version 1.2.1-3 is (on the new bdi disk)
[15:18:04] <SWPadnos> old
[15:19:11] <jepler> 1.2.1 is the last "released" version
[15:19:16] <jepler> I should get off my ass and do something about 1.3 and/or 1.4.
[15:19:20] <SWPadnos> ok. in that case, not so old ;)
[15:19:29] <cradek> "This release is intended to be the last for six months or so until emc2 stabilises"
[15:19:33] <cradek> heh.
[15:20:22] <jepler> after giving paul a hard time for picking random CVS versions of emc2 for his packages, I don't intend to criticize him for choosing a released version of axis.
[15:20:25] <jepler> cradek: I missed that little snark
[15:20:39] <cradek> right, that's fine
[15:20:46] <cradek> he doesn't say what emc2 source he put on there
[15:21:16] <cradek> no matter, we have public cvs so people can get whatever they want.
[15:21:55] <jepler> Filename: pool/extras/e/emc2/emc2_2.0.0-alpha4.2_i386.deb
[15:21:56] <alex_joni> hi guys
[15:22:02] <jepler> looks like "some random version"
[15:22:09] <alex_joni> and not even source
[15:22:34] <SWPadnos> the email says emc2 is provided in source form
[15:22:35] <etla> the halui stuff is not in Hal_Documentation.pdf ? I remember reading somewhere about it, maybe the wiki ?
[15:23:05] <alex_joni> jepler: where do you see that?
[15:24:18] <jepler> alex_joni: I did 'apt-get update; apt-cache show emc2' but the binary .deb is 404'd
[15:24:25] <jepler> so it must be old information
[15:24:28] <cradek> that's better than cvs head from during cnc workshop, like last time
[15:24:29] <etla> yep, its in the wiki
[15:24:48] <cradek> using 2.0.1 would have been nice though (maybe it was too late)
[15:25:42] <jepler> cradek: I was confused earlier --- there aren't actually any emc2 debs on the bdi4emc deb repository.
[15:26:02] <cradek> oh
[15:26:24] <jepler> cradek: that "2.0.0-alpha4.2" is the set from may 23
[15:26:37] <cradek> ok
[15:27:07] <jepler> no idea why apt-cache still shows information about it---I suppose apt probably wasn't designed for removing packages once they've been published
[15:27:42] <cradek> I'm sure that's true
[15:27:54] <jepler> if I wanted to be a prick I suppose I'd say something about an offer, valid for at least 3 years
[15:28:45] <cradek> well, I was thinking about that too.
[15:29:20] <jepler> "the dog ate my .tar.gz"
[15:33:33] <etla> is halui supposed to work with run-in-place ?
[15:33:40] <cradek> yes
[15:33:41] <etla> first it can't find emc.ini
[15:33:49] <etla> then it complains about emc.nml
[15:33:58] <etla> I'm trying bin/halui
[15:34:50] <cradek> you have to put something in the ini file to start it
[15:34:55] <cradek> I'm looking now for it
[15:35:07] <alex_joni> HALUI=halui under [HAK]
[15:35:09] <alex_joni> HALUI=halui under [HAL]
[15:35:17] <cradek> yeah that
[15:35:24] <etla> ok...
[15:35:28] <alex_joni> etla: then simply start emc like usually, and halui will start in the background
[15:39:00] <etla> I'm not getting any halui pins with halcmd show pin
[15:40:08] <etla> I'm using TESTING-2006-05-02
[15:40:08] <etla> , does it matter ?
[15:40:51] <cradek> you'll have to use cvs head to get halui's jogwheel
[15:41:05] <cradek> it is not in any release (it's brand new)
[15:41:16] <etla> oh !
[15:41:28] <cradek> I just wrote it one day at cnc workshop, you're the first who will be using it seriously
[15:41:33] <etla> do you remember the cvs command by heart - please ;)
[15:42:16] <etla> oh well I can look in the wiki
[15:42:24] <cradek> http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl/emcinfo.pl?Installing_EMC2#Preparing_Ubuntu_to_compile_emc2
[15:43:19] <etla> so 2.0.1 or HEAD ?
[15:43:32] <cradek> you want HEAD so leave out the -rRELEASE_2_0_1
[15:43:54] <etla> and I should probably be in my home-dir, not emc2 ?
[15:44:40] <cradek> you can do it in any directory, your home dir is a good place
[15:44:47] <cradek> do NOT use sudo except where specified
[15:45:23] <etla> should I stop halcmd and realtime while I compile and install ? probably a good idea.
[15:45:39] <cradek> sure it'll compile faster.
[15:51:13] <etla> hmm... I'm not sure my cvs checkout worked, should the VERSION file contain HEAD and a date ?
[15:51:38] <cradek> VERSION might say something odd in head, not sure
[15:51:53] <etla> so should it be -rHEAD in the cvs command ?
[15:52:01] <cradek> no, you did it right
[15:52:10] <etla> you can see that ??
[15:52:19] <cradek> http://cvs.linuxcnc.org/cvs/emc2/VERSION?rev=1.13
[15:52:20] <alex_joni> etla: we can see verything
[15:52:28] <etla> no doubt...
[15:52:31] <cradek> VERSIONS says "Prerelease CVS HEAD"
[15:52:53] <alex_joni> so kinda like NECK
[15:53:19] <cradek> bbl
[15:53:40] <etla> hmmm... after cvs -z5 -d:ext:anon@cvs.linuxcnc.org:/cvs co emc2
[15:53:40] <etla> I still get TESTING-2006-05-02 in VERSION
[15:53:57] <alex_joni> oh.. that means you already had one
[15:54:03] <skunkworks> jepler: how is the on screen actual feedrate calculated - just a distance/time type of thing?
[15:54:15] <skunkworks> or some sort of fancy dirivitive
[15:54:26] <alex_joni> etla: cvs up -A
[15:54:29] <alex_joni> I think?
[15:55:41] <etla> no CVSROOT specified...
[15:57:53] <etla> rm -R emc2
[16:03:02] <alex_joni> etla: enter the emc2 dir, then cvs up -A
[16:03:08] <alex_joni> or remove it and check out again
[16:03:25] <etla> yeah I removed the old one, now compiling HEAD
[16:03:42] <alex_joni> ok
[16:04:17] <etla> and thinking about how I'm going to get the halui.jog.0.minus /plus signals from the jogwheel encoder counter
[16:05:02] <alex_joni> the halui has quadrature input
[16:05:07] <alex_joni> I think?
[16:05:16] <alex_joni> ask cradek.. he should know
[16:05:22] <etla> I'm looking at http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl/emcinfo.pl?Halui
[16:05:33] <etla> looks like one bit for plus and one bit for minus jog
[16:05:33] <alex_joni> etla: seriously doubtfull..
[16:05:48] <alex_joni> better look at emc2/src/emc/usr_intf/halui.cc
[16:05:51] <etla> just like a graphical UI
[16:07:23] <alex_joni> * alex_joni runs home
[16:07:23] <alex_joni> later
[16:07:30] <etla> bye
[16:10:34] <etla> how do I unzip a bz2 file ??
[16:14:50] <etla> damn...
[16:14:57] <etla> Starting emc...
[16:14:57] <etla> Traceback (most recent call last):
[16:14:57] <etla> File "/home/etla/emc2/bin/axis", line 61, in ?
[16:14:57] <etla> import gcode
[16:14:57] <etla> ImportError: /home/etla/emc2/lib/librs274.so: undefined symbol: _Z18STOP_ADAPTIVE_FEEDv
[16:14:57] <etla> Shutting down and cleaning up EMC...
[16:14:59] <etla> Cleanup done
[16:15:10] <etla> anyone know what is going on ?
[16:15:19] <SWPadnos> you need an updated axis, I think
[16:15:31] <SWPadnos> there were some G-codes and supporting messages added
[16:16:17] <etla> I have 1.3a2 but maybe I need a CVS version of that too : |
[16:17:03] <SWPadnos> I'm not sure exactly which one you need, but I do know that it should be recompiled against the new emc2 checkout
[16:18:26] <Bo^Dick> is this one referred to as the "tait parallel" or "tait serial" interface? http://www.nomad.ee/PIC/parpic.gif
[16:18:55] <SWPadnos> probably, since it says "(c) David Tait" at the bottom
[16:19:28] <SWPadnos> whether it's serial or parallel, I'm not sure. It uses the parallel port, but does serial programming
[16:19:52] <etla> ok now I'm compiling HEAD with axis-latest ... wish me luck :)
[16:20:31] <SWPadnos> good luck ;)
[16:26:53] <giacus`> :)
[16:34:57] <skunkworks> giacus: how is the video coming?
[16:36:52] <anonimasu> etla: how does the jogwheel work?
[16:37:03] <etla> still work in progress
[16:37:08] <etla> I got it connected to HAL
[16:37:14] <etla> and just now I got halui running
[16:37:20] <anonimasu> I'm very curious about it :
[16:37:20] <anonimasu> :)
[16:37:43] <etla> any idea how to get a 1-bit jog command from the encoder counter ?
[16:37:53] <etla> 1-bit for plus and 1-bit for minus
[16:38:03] <anonimasu> yeah..
[16:38:20] <etla> wait... there are undocumented pins in there!
[16:38:22] <anonimasu> or well, if you are processing the input of the encoder..
[16:38:32] <anonimasu> a b / b a
[16:38:47] <anonimasu> hm, ok
[16:38:55] <Lerneaen_Hydra> etla: how is the jogwheel code coming?
[16:39:02] <anonimasu> I have no real idea how it looks since I havent been playing with hal at all
[16:39:03] <anonimasu> :)
[16:39:22] <anonimasu> my mill computer/devel box is still offline
[16:39:28] <etla> It's about finding the right HAL components and hooking it all up - shouldn't be too hard...
[16:39:41] <etla> except these are brand new features so they are not documented :)
[16:40:12] <skunkworks> well - I think you should document it while it is fresh in your mind :)
[16:40:15] <Lerneaen_Hydra> etla: they can't be completely undocumented, can they?
[16:40:25] <anonimasu> hm, maybe I should go and machine some parts
[16:40:28] <anonimasu> bbl
[16:40:44] <SWPadnos> I don't see anything that would be useful as an up or down bit
[16:41:41] <SWPadnos> you could use a comp block, and probably a mux block (updated after the comp, to act as a 1-clock delay line)
[16:41:47] <etla> SWP: there are new undocumented pins
[16:42:00] <etla> halui.jog-wheel.counts
[16:42:14] <SWPadnos> ah - in halui, not in encoder.c
[16:42:32] <SWPadnos> (I'm using the source for my documentation, so I figured there weren't any undocumented pins in there ;) )
[16:42:42] <giacus`> skunkworks: working on it, attempting to listen about 2000 audio effects to find out the best to use.. it will take a bit of time :(
[16:43:19] <etla> SWP: well the comments at the beginning of the halui file do not contain these pins
[16:43:52] <SWPadnos> right. I look at the export_(whatever) functions
[16:47:55] <etla> hmm... do I need to do scripts/realtime start eventhough I have EMC running ?
[16:48:03] <SWPadnos> nope
[16:48:19] <etla> the HAL that worked before seems not to work now that EMC is running
[16:48:29] <etla> I see the pins with show pin
[16:48:36] <etla> but nothing updates while I jog
[16:49:03] <etla> hm.... rawcounts works
[16:49:10] <SWPadnos> hmmm
[16:50:25] <etla> my bad... I didn't save my latest HAL config...
[16:50:42] <SWPadnos> oops
[16:51:32] <etla> yeah, now it works
[16:52:03] <etla> now we'll see what halui.jog-wheel.counts does
[16:52:42] <SWPadnos> from the code, it'll issue a jog command of (delta counts * jog_increment)
[16:53:49] <etla> ok... I still need to set jog-wheel.scale and jog-wheel.speed probably ?
[16:54:25] <etla> do you know how to create a constant signal ?
[16:55:58] <SWPadnos> you can just make a signal, and assign it a value with sets
[16:56:21] <SWPadnos> there's also a constant block, that takes a float parameter and outptus it as a float pin
[16:58:09] <etla> thanks I'll try that
[16:58:55] <skunkworks> can't wait to play with hal
[16:59:58] <SWPadnos> it's pretty cool stuff
[17:00:16] <etla> hey! guess what, I can jog EMC in sim mode with my jogwheel !
[17:00:24] <skunkworks> great job
[17:00:46] <SWPadnos> good deal
[17:00:54] <etla> hmm. each click produces 4" of movement...
[17:01:01] <etla> needs some tweaking still
[17:01:55] <SWPadnos> what's the jog increment?
[17:02:22] <etla> in axis I have 0.1, but that does not seem to apply for the jogwheel
[17:02:48] <etla> nope, no effect at all when changing jog increment in axis
[17:03:04] <etla> it's all set by halui.jog-wheel.scale
[17:03:05] <SWPadnos> ok. there may be a separate one for halui (not sure)
[17:03:14] <SWPadnos> that makes sense
[17:03:38] <SWPadnos> you could conceivably have multiple haluis, jogging with independent scales
[17:03:57] <etla> well... ok
[17:04:28] <Lerneaen_Hydra> different scales for different wheels?
[17:04:42] <SWPadnos> sure, or multiple computers with halui running
[17:04:58] <SWPadnos> (like on a big lathe, where there may be acontrol panel in the front and another in the back
[17:05:00] <SWPadnos> )
[17:05:54] <etla> but it can be confusing, I can set axis' jog mode to Z-axis and 0.1 increment, and my jogwheel still acts on X with increment 1
[17:06:21] <SWPadnos> remember - you're running two separate UIs
[17:06:36] <SWPadnos> halui is like running another copy of AXIS
[17:07:04] <etla> yes, but for feed override, feed hold, cycle start etc. I would like AXIS to be in sync with the external control panel
[17:07:27] <SWPadnos> that would make sense, though I'm not sure how to do that at this point.
[17:07:49] <SWPadnos> actually, it doesn't necessarily make sense, thinking about it.
[17:08:07] <davidf> hi
[17:08:08] <SWPadnos> you'd want buttons or other controls on the panel itself to set the scale when using the jogwheel
[17:08:21] <SWPadnos> hi davidf - how goes coolcnc?
[17:08:52] <etla> SWP: yes, but for example when pressing pause or cycle start from the external control panel I'd want axis to notice
[17:09:01] <davidf> hi SWPadnos. One trouble after another. I need 2 new computers, actually
[17:09:05] <SWPadnos> it will notice that kind of thing
[17:09:23] <etla> ok
[17:09:46] <SWPadnos> but the settings on the axis display set the functions of the axis jog controls - it wouldn't make sense for them to set the jog scale for e.g. a remote tkemc
[17:09:55] <SWPadnos> davidf, bummer :(
[17:10:16] <skunkworks> what is the command that reconfigures the video card?
[17:11:04] <davidf> The HD on my online box is developing bad sectors. When creating an image disk it gets half-way thru and I get a data read error & nero burning rom halts.
[17:11:10] <etla> SWP: ok, so you said axis will notice the play, step, pause, and stop buttons. What about coolant, spindle on/off, feed override, and spindle rpm ?
[17:11:54] <SWPadnos> all of that information should be in the emc status struct - that's how axis would notice that the program is paused as well
[17:12:01] <etla> great
[17:12:24] <SWPadnos> axis isn't doing any control at that point, it's just sshowing the satatus of emc
[17:13:25] <etla> do you have a feature wish list somewhere ?
[17:13:28] <davidf> When somebody gets time please tell me if 450 MHz processor is fast enough for emc2? The specs call for 500 MHz, but I'm hoping that 450 will be fast enough. Thanks.
[17:13:58] <SWPadnos> etla, I have a list in my head - the best place may be the sourceforge bug / feature tracker system
[17:14:22] <etla> OK, I might add some stuff there when I get inspired
[17:14:28] <SWPadnos> davidf, will you be generating step pulses with the PC, or using external hardware (step generator or analog/PWM servo)?
[17:14:51] <SWPadnos> of course, the items on my list are just the things I'd personally like to see ;)
[17:15:38] <etla> davidf: I'm running it now on a 400MHz P2, 792 bogomips. but this is probably not the machine I will use for my mill
[17:15:43] <davidf> Pulses. I have 5 very nice Parker drives. They are step/dir. Configureable from 200 to 50,000 steps per rev.
[17:16:18] <SWPadnos> well. the spec is a recommendation - you can run the software on lower performance machines, you'll just have lower performance limits
[17:16:48] <skunkworks> I am running a 450 on our gantry - it runs quite well
[17:16:51] <SWPadnos> I have a 500 MHz celeron that can comfortably run a 15-20 uS base period (~25-33k steps/sec)
[17:16:56] <skunkworks> 450mhz
[17:17:08] <davidf> Great. So that's a box I can start with. It is a Pentium III.
[17:17:15] <davidf> Thanks.
[17:17:26] <SWPadnos> so you probably wouldn't want to use the parker drives in 50000 step/rev mode, but 1000 or so would likely be fine ;)
[17:18:08] <skunkworks> exactly - we use them in 1000 steps per rev - works great
[17:19:29] <skunkworks> our scale for z is 10000 pulses per inch - gives us a max of about 50ipm on z with a period of .00005 - could go a little lower - maybe
[17:20:15] <SWPadnos> heh - that's why I got a USC - 40k counts/inch would make for very slow rapids
[17:20:15] <skunkworks> our other 2 axis's have a scale of 2540 - and gives us a max of around 200 ipm
[17:22:56] <davidf> Right! Right now I'm running at 8000 steps/second with the drives set at 400 / rev. With windows freeware controller. I have gotten as much as about 40 - 60 ipm that way, but with 2-axis trajectories, (causing slower steps on one or the other axis at certain angles, I run into low freq. resonance that plagues me. So the higher speed of emc2 will be great and plenty fast for my little micro mill. 30 - 60 is as fast as I'll ever want.
[17:23:34] <davidf> ipm that is.
[17:24:00] <SWPadnos> yep. you should be able to get around 3x the pulse rate out of that 450 Mz machine
[17:24:14] <SWPadnos> can the parker drives be set for quadrature step input?
[17:24:31] <davidf> Thanks for the help. I'll check back in when I get something together that can give me a good Ubuntu image.
[17:24:40] <davidf> SWPadnos: hold on a sec.
[17:25:01] <skunkworks> we have compumotor - I really don't think so (s6 and oem650)
[17:25:57] <skunkworks> SWPadnos: why would that be better?
[17:26:00] <SWPadnos> that would double the step rate
[17:26:10] <skunkworks> really
[17:26:11] <davidf> No I don't think so, but I'm not sure what you mean. like 800 steps for a 200 step motor? 1/4 step?
[17:26:13] <SWPadnos> you get one step per BASE_PERIOD, instead of every two (minimum)
[17:26:27] <skunkworks> ah
[17:26:32] <SWPadnos> no, I mean two phase gray code input instead of step and direction
[17:26:49] <SWPadnos> the same signals that an encoder puts out
[17:26:58] <skunkworks> wouldn't it be easy to make a quaduatur to step and direction circuit then?
[17:27:24] <SWPadnos> sure - you can add some simple external hardware to allow the PC to use quadrature
[17:27:32] <SWPadnos> I think 3 XOR gates does it
[17:27:38] <SWPadnos> plus a cap or two
[17:27:38] <skunkworks> hmm - interesting.
[17:28:05] <SWPadnos> there's a circuit in the files section of either the geckodrive or CCED Yaho group
[17:28:07] <SWPadnos> Yahoo
[17:29:07] <SWPadnos> that would be a good little board to market for $25-$50 or so (for a 3-4 axis board) :)
[17:29:37] <davidf> SWPadnos & skunkworks: Is quadrature that much of an improvement, or what?
[17:29:58] <SWPadnos> it doubles the step rate the PC can output
[17:30:14] <Lerneaen_Hydra> etla: what will one be able to control with your jogwheel patch? jog, spindle speed (maybe surface speed later on if CSS is added), spindle on/off, feedrate when running a program...
[17:30:37] <davidf> Oh, like a frequency multiplier I guess?
[17:30:40] <SWPadnos> Lerneaen_Hydra, it's not a patch - he's configuring a mesa / jogwheel / halui system, not writing code
[17:31:09] <SWPadnos> davidf, no - it can just output a step every period, instead of one every two periods (up then down)
[17:31:25] <Lerneaen_Hydra> SWPadnos: oh, so the jogwheel support is already there?
[17:31:33] <etla> L_H: right now I can jog axis 0
[17:31:36] <skunkworks> cool - I will have to look at that.
[17:31:50] <etla> the plan is to be able to jog XYZ, change spindle RPM and change feed override
[17:31:54] <SWPadnos> Lerneaen_Hydra, yep, it's just a matter of configuring it (not that you can do everything with it)
[17:32:09] <etla> but I don't have all the pusbuttons yet so it will take some time
[17:32:36] <etla> XYZ, RPM and FO would be with the wheel. Then I will have buttons for play, pause, coolant and spindle on/off + E-STOP
[17:32:59] <Lerneaen_Hydra> etla: sounds promising. how does axis act when changing that? does it update the display to reflect the changes?
[17:33:05] <SWPadnos> herh
[17:33:07] <SWPadnos> heh
[17:33:12] <etla> yes ofcourse
[17:34:23] <davidf> Thanks everyone for the help.
[17:34:29] <davidf> Anyway I still need to get a linux system up, then emc2 working, etc. That's the first step, and plenty to keep me busy for a while I'm afraid.
[17:34:34] <SWPadnos> sure - good luck
[17:34:42] <etla> ok guys, I need to go now. thanks to everyone for the help with HAL and HALUI
[17:34:52] <SWPadnos> I'd suggest ubuntu 5.10 + emc2 packages at this point - don't use dapper yer
[17:34:58] <SWPadnos> sure - good luck
[17:34:59] <SWPadnos> :)
[17:35:16] <etla> bye
[17:35:33] <davidf> I'll check in later after I get Ubuntu on a CD somehow & try to install it.
[17:35:47] <davidf> Thanks again. Bye...
[17:36:15] <skunkworks> well thats that :)
[17:37:46] <Lerneaen_Hydra> what is the idea/goal/point of bdi and coolcnc? (IIRC they were live-cd's of emc)
[17:38:04] <SWPadnos> BDI isn't a liveCD
[17:38:11] <skunkworks> I should be able to install head from cvs and and do a run in place - without it screwing up my installed emc - correct?
[17:38:12] <SWPadnos> it's just an easy way to install emc
[17:38:19] <SWPadnos> skunkworks, correct
[17:38:32] <SWPadnos> just run configure --enable-run-in-place
[17:38:36] <skunkworks> SWPadnos: thanks
[17:40:03] <Lerneaen_Hydra> how does it get much easier than install ubuntu and then apt-get install emc2-axis?
[17:40:19] <skunkworks> SWPadnos: did you see this? http://www.electronicsam.com/images/KandT/cncworkshop/cncworkshopemc.jpg
[17:40:35] <SWPadnos> ugh :)
[17:40:47] <SWPadnos> I always look like a drig addict or something
[17:41:03] <skunkworks> Thats ok. we don't hold it against you.
[17:41:04] <SWPadnos> Lerneaen_Hydra, it's easier to just install linux, and have emc there, which is how it works with the BDI
[17:41:06] <SWPadnos> heh
[17:41:35] <SWPadnos> but I think the ubuntu system is better, with the auto-update stuff and all
[17:42:01] <skunkworks> installing ubuntu + cradeks emc2 install script is painless.
[17:42:01] <Lerneaen_Hydra> yes it seems to me with the current speed of development that the image would get outdated very quickly
[17:42:26] <skunkworks> then when there are updates to emc - the update manager tells you.
[17:42:34] <SWPadnos> you can still update emc on BDI, it's just .debs. it's just not semi-automatic
[17:42:56] <Lerneaen_Hydra> oh, ok.
[17:43:09] <Lerneaen_Hydra> .deb is a file that you can install with apt?
[17:43:16] <Lerneaen_Hydra> apt-install something or other?
[17:43:24] <SWPadnos> yep, or synaptic, or the KDE equivalent
[17:49:19] <skunkworks> we still don't know who the second person over from the left is.
[17:49:27] <skunkworks> rigth I mean
[17:49:59] <SWPadnos> "Scott Hamilton" - he's a guy who knows a lot about threading (and bought my Tapmatic 90 TC/DC)
[17:50:50] <skunkworks> really - cool
[17:51:06] <skunkworks> i think your the first person to know.
[17:52:06] <skunkworks> everyone was saying "he had a southern accent and knows a lot about mazaks."
[17:55:51] <jepler> skunkworks: the "speed" calculation is a moving average of the difference between successive positions divided by the time between the samples. axis samples the position at about 100Hz (.01 second) if I read the source right.
[17:56:38] <jepler> skunkworks: there's a hard-coded smoothing constant, so that the speed is composed 90% of the old speed estimate and 10% of the new speed estimate
[17:57:08] <skunkworks> ok - it seemed to bounce around a bit for a strait line move. (I don't have a problem with it - just wondering) It was a 5ipm - and it would jump around above and below
[17:57:55] <jepler> yeah, I was also surprised that it moved around so much. you don't see that much variation when you look at the axis velocities in halscope.
[17:58:12] <jepler> I wouldn't rule out that there's a bug, for instance in the way the time delta is calculated
[17:58:38] <skunkworks> it seems close - well as much as I could tell - within 1 ipm anyways
[17:58:45] <skunkworks> +/-
[18:02:17] <jepler> you can make the estimate smoother by changing this constant in emcmodule.cc:
[18:02:17] <jepler> const double weight_factor = .9;
[18:02:32] <jepler> make it bigger (closer to 1) to increase the smoothing
[18:02:42] <jepler> make it smaller (closer to 0) to increase the weight of the most recent sample
[18:02:58] <skunkworks> it seems to get a little worse the faster you go - but still - very cool
[18:03:38] <skunkworks> when you highlight a line in the mdi history and hit copy - it pastes it into the mid window - is that by design?
[18:04:05] <skunkworks> in axis
[18:05:28] <jepler> "hit copy"?
[18:05:50] <skunkworks> ctrl insert
[18:06:28] <skunkworks> sorry
[18:06:48] <jepler> must be
[18:07:04] <cradek> I guess I didn't know about that feature
[18:07:12] <cradek> "feature"
[18:07:14] <jepler> I didn't either; shift-insert seems to be a standard Tk binding
[18:07:28] <cradek> huh
[18:07:46] <jepler> # On Windows, paste is done using Shift-Insert. Shift-Insert already
[18:07:46] <jepler> # generates the <<Paste>> event, so we don't need to do anything here.
[18:07:46] <jepler> if {[string compare $tcl_platform(platform) "windows"]} {
[18:07:46] <jepler> bind Entry <Insert> {
[18:07:46] <jepler> catch {tkEntryInsert %W [selection get -displayof %W]}
[18:07:49] <jepler> }
[18:07:51] <jepler> }
[18:07:54] <jepler> ^^^ tk source code
[18:08:02] <jepler> so this is the intended behavior of Tk
[18:08:25] <cradek> I guess it's a feature then
[18:08:56] <jepler> it inserts into the MDI field because that's where the keyboard focus is
[18:09:11] <skunkworks> I it comes in handy :) - kinda wondering if you guys had thought about being able to up arrow (like linux command line) to go through the last mdi commands
[18:09:16] <skunkworks> just insert works I guess
[18:09:22] <skunkworks> "insert"
[18:09:46] <jepler> I hardly use mdi, and rarely to repeat commands from this session
[18:09:58] <jepler> though it would have come in handy when testing cradek's motors and the quadrature divider
[18:10:15] <skunkworks> right right :)
[18:10:39] <jepler> I say that not to diagree that it could be improved, but to explain why I haven't improved it
[18:14:52] <skunkworks> biab
[19:33:18] <alex_joni> etla: still around?
[19:34:04] <etla> yeah, now at home, no hardware/emc to play with
[19:34:52] <alex_joni> no problem.. wanted to talk mainly ;)
[19:35:06] <etla> can do
[19:35:07] <alex_joni> otoh, you don't need hardware to play with emc2 ;)
[19:35:16] <alex_joni> sim should do it nicely
[19:35:35] <etla> well the home computer only has this other OS on it...
[19:35:37] <alex_joni> etla: I've read back that you started to use halui
[19:36:00] <etla> yes, playing around with it.
[19:36:14] <alex_joni> that's good
[19:36:31] <alex_joni> * alex_joni wrote a big part of it, so any feedback is appreciated ;)
[19:36:39] <Jymmm> it sucks.
[19:36:51] <Jymmm> now, what the hell is it? =)
[19:37:07] <alex_joni> cradek did the quadrature input, so I don't know about that.. didn't look at it yet :)
[19:37:13] <etla> a hal component for hardware user interfaces
[19:37:29] <etla> like pushbuttons, jogwheels etc that make emc do stuff
[19:37:31] <alex_joni> etla: seen you had some questions about multiple UI's
[19:37:36] <Jymmm> ah, ok.
[19:37:58] <etla> yes, multiple uis can be tricky
[19:38:05] <alex_joni> the basic idea is this: there is a thing called the NIST principle ;) (the thing NIST had in mind when designing emc in the beginning)
[19:38:17] <alex_joni> and the idea is that any control is done by using momentary buttons
[19:38:59] <alex_joni> so instead of having a button for cooland on/off, we have a button for coolan on, one for coolant off, and a bulb for coolant status
[19:39:21] <alex_joni> that way you can start coolant from one place, stop it from another, and see the status in the third place
[19:39:29] <Jymmm> couldn't the momentary button toggle?
[19:39:30] <alex_joni> all UI's playing nicely together
[19:39:38] <SWPadnos> that may be better worded as "there's no switch for coolant, just two momentary buttons"
[19:39:51] <etla> yes that's good. I'll have momentary on pushbuttons in my control panel
[19:39:53] <alex_joni> SWPadnos: right, sounds better
[19:40:17] <alex_joni> Jymmm: yes it can be one for toggle, just use a flip-flop ;)
[19:40:17] <etla> but some kind sould had added halui.jogwheel to make it a bit easier
[19:40:22] <SWPadnos> and then you can have 10 panels with 2 buttons and a light on each, and you can control and see the status of coolant on all of them
[19:40:43] <SWPadnos> (without needing cool motorized switches ;) )
[19:40:57] <alex_joni> jogging is a tricky thing, and I fear it's far from beeing 100% done
[19:41:18] <etla> well my jog-selector (X,Y,Z and so on) is going to be a rotary switch that will sit in one place once it's set there
[19:41:31] <alex_joni> halui needs to take care of selecting the axis to jog, speed to use (unless it uses the speed from the knob)
[19:41:40] <alex_joni> etla: that's OK, because that's halui internal
[19:41:49] <etla> but as discussed earlier it seems that jog-pendant jogging is separate from axis jogging
[19:41:54] <alex_joni> there is no general emc axis jog selector
[19:42:07] <SWPadnos> (axis in hte context of a UI, not a machine joint)
[19:42:08] <alex_joni> each GUI/UI needs to take care of that
[19:42:10] <etla> right.
[19:42:40] <alex_joni> SWPadnos: not in what I said ;)
[19:42:55] <alex_joni> etla: please use AXIS when referring to the GUI, not to cause any confusions
[19:42:59] <etla> but you think axis(the ui) will display spindle rpm and feed override correctly (i.e. they are general emc variables)
[19:43:01] <alex_joni> this is quite complicated as it is..
[19:43:13] <alex_joni> etla: indeed
[19:43:19] <etla> good.
[19:44:39] <alex_joni> etla: most the halui pins are that way (estop, lube, coolant, flood, spindle, machine on/off, mode auto/manual/mdi)
[19:44:55] <etla> I will probably need to look at the decoders/multiplexers for jog axis selection
[19:45:14] <cradek> there's a halui input pin for jogwheel axis
[19:45:15] <alex_joni> etla: I think that needs some code in halui
[19:45:22] <alex_joni> oh, there is?
[19:45:23] <Jymmm> etla Why a pot for jogging? speed control?
[19:45:29] <alex_joni> cradek: int?
[19:45:38] <cradek> yes
[19:45:43] <alex_joni> nice
[19:45:45] <etla> Jymm: i have a jogwheel that gives out quadrature encoder pulses
[19:45:52] <Jymmm> etla ah
[19:46:06] <cradek> etla: did you get it to jog in one axis with the wheel?
[19:46:14] <etla> cradek: yep, but I need to generate that int from two or three bit inputs
[19:46:25] <cradek> oh I see what you mean
[19:46:41] <etla> cradek: yes, I didn't try setting another jog-wheel.axis value...
[19:46:42] <cradek> there are modules for that but it sounds a bit clunky.
[19:46:47] <SWPadnos> use the weighted_sum component for that
[19:46:52] <etla> I did try jog-wheel.scale and it seems to work
[19:47:09] <alex_joni> etla: I noticed your email
[19:47:10] <SWPadnos> or a mux -which may be a better idea
[19:47:20] <alex_joni> "Just setting encoder.scale to 4 is not good either because then one
[19:47:22] <alex_joni> jog-count is split up into 4 substeps"
[19:47:23] <etla> alex: yeah, 1x mode is better for jogwheels
[19:47:28] <alex_joni> didn't quite get that..
[19:47:59] <etla> well, if I now set jogwheel.scale so that one click of my jogwheel equals 1 unit of jogging on the X axis
[19:48:28] <etla> then when I click forward my jogwheel I will actually see it going very briefly 0->0.25->0.5->0.75->1
[19:48:40] <etla> and not 0->1 as I expect
[19:48:44] <cradek> I don't understand why that's a bother
[19:48:52] <etla> the numbers would be X axis positions in AXIS
[19:49:11] <cradek> the wheel will only come to rest at the detents right?
[19:49:58] <etla> cradek: yes, but it's not super accurate all the time, sometime it might stop 5 counts from the last position and then when you lightly touch it it goes back to 4
[19:50:09] <cradek> oh, yuck
[19:50:11] <Jymmm> question... if you have a jogwheel that gives out quadrature encoder pulses does that mean to jog 6 inches you have to keep turning the wheel till you get to the desitnation?
[19:50:20] <alex_joni> Jymmm: yes
[19:50:24] <Jymmm> ewwwwwwwww
[19:50:27] <etla> so at least I'd like to try a 1x encoder component if that's not too hard to modify in the HAL code
[19:50:33] <alex_joni> and ideally it will move just as fast as you turn it
[19:50:38] <cradek> you might turn it 6 times if it's 1inch/turn
[19:50:48] <alex_joni> just like machining on a manual mill
[19:51:05] <cradek> except you can change the scale of the handwheels
[19:51:05] <alex_joni> Jymmm: you could even use that to mill something by hand
[19:51:08] <etla> it's a much better HMI than a button on the screen or on the keyboard
[19:51:27] <cradek> yes it definitely seems like a superior way to jog
[19:51:31] <Jymmm> alex_joni That I could understand (I guess), but some alternative method too.
[19:51:52] <alex_joni> yeah, I used a rotary knob with springs in it once
[19:52:00] <alex_joni> idle it would sit int he middle
[19:52:13] <alex_joni> then turning one way or the other it would select different speeds
[19:52:22] <Jymmm> alex_joni That's what I was thinking... to more you turn it, the faster it jogs
[19:52:32] <alex_joni> Jymmm: right, that's another way
[19:52:39] <alex_joni> but that's not position accurate
[19:52:56] <etla> I use microscope stages at work and the joystick ones suck, the jogwheel ones are great to use.
[19:53:01] <Jymmm> different strokes
[19:53:23] <alex_joni> Jymmm: it's easier to move a marked jogwheel to position accurately
[19:54:00] <Jymmm> maybe a dual mode jogwheel... push in to have spring laod center, pull to 1 turn == 1"
[19:54:24] <Jymmm> reverse that =)
[19:54:47] <alex_joni> I would rather use a 6-DOF mouse ;)
[19:55:21] <SWPadnos> speed control (with return-to-center) is usually called shuttle (on a VCR at least)
[19:55:44] <alex_joni> SWPadnos: yeah.. that's where I#ve seen them
[19:57:02] <Jymmm> pull to shuttle, push to jog... I like it. Now, what about axis selection
[19:58:29] <alex_joni> Jymmm: it should have those OLED's you like so much in the middle of the knob
[19:58:45] <Jymmm> alex_joni that might get scarry during joggin =)
[19:59:07] <alex_joni> Jymmm: during jogging they would change to some whirlwind picture
[19:59:17] <alex_joni> and when you stop they should always face up
[19:59:19] <Jymmm> alex_joni like the kybd
[19:59:33] <Jymmm> that $4000 kybd
[20:05:00] <etla> alex: what about controlling spindle speed with halui
[20:05:23] <etla> right now there are only the NIST-button inputs in halui
[20:05:37] <alex_joni> etla: right
[20:05:46] <etla> how would I hook up the jogwheel to that ?
[20:05:53] <alex_joni> because I could do them right even without hardware
[20:06:26] <alex_joni> etla: hmm.. do you really want to control spindle speed with an encoder?
[20:06:38] <alex_joni> sounds like not a bad idea afterall
[20:06:42] <etla> a component that would take the jogwheel count as input and produce two bit outputs, either + or -, would seem useful
[20:06:51] <Lerneaen_Hydra> cradek: if/when CSS is added to emc, I take it there will be pins for a jogwheel to adjust that (CSS values would replace RPM values)
[20:07:04] <etla> CSS?
[20:07:31] <Lerneaen_Hydra> etla: for lathes, so the surface speed is constant (lower rpm with large diameter, higher with smaller dia material)
[20:07:48] <Lerneaen_Hydra> not css as in cascading style sheet ;)
[20:08:37] <etla> if/when there is css I can't imagine that it would be very hard to add a ui function that adjust the css value
[20:09:46] <etla> alex: what about that +/- monostable component ? could be used for jogging, spindle control, maybe feed override control
[20:10:01] <alex_joni> css doesn't make sense from the UI imo, it's best to come from g-code
[20:10:14] <alex_joni> etla: right
[20:10:16] <etla> oh.. feed_override is a float, why no NIST +/-
[20:10:27] <Lerneaen_Hydra> if you want to change the speed while running if it's too fast/slow
[20:10:46] <alex_joni> etla: feed_override isn't implemented
[20:11:00] <etla> yet ?
[20:11:06] <alex_joni> etla: sure, yet
[20:11:13] <alex_joni> halui is planned for 2.1.x
[20:11:20] <alex_joni> who knows when ;)
[20:11:22] <Lerneaen_Hydra> alex_joni: having a rpm override would pretty much entail having a css override
[20:11:32] <Lerneaen_Hydra> alex_joni: as they are so closely linked
[20:12:04] <alex_joni> Lerneaen_Hydra: patches happily accepted
[20:12:31] <Lerneaen_Hydra> alex_joni: I'm not coder (at least, not yet, maybe in a couple years or so)
[20:12:32] <etla> alex: are the version numbers anyhow linked to stable/unstable releases ? or is RELEASED always 'stable' regardless of number ?
[20:12:55] <alex_joni> Lerneaen_Hydra: I really am known for having a LOT of patience, so a few years is ok
[20:13:06] <alex_joni> etla: any 2.x.y is stable
[20:13:18] <etla> ok
[20:13:40] <alex_joni> etla: there are TESTING releases once in a while
[20:13:53] <alex_joni> and there's HEAD, which can be severe broken at random times ;)
[20:14:02] <alex_joni> etla: usually it's very good though
[20:14:03] <K4ts> hello
[20:14:23] <etla> yeah, it just seems that always HEAD has all the cool features that I want :)
[20:14:52] <alex_joni> etla: to bring out a stable release, we need to stop adding functionality
[20:14:58] <alex_joni> that's why there is a 2.0 branch
[20:15:31] <giacus`> giacus` is now known as giacus
[20:18:06] <etla> alex: how hard is it for someone who knows C to write HAL components ?
[20:18:28] <alex_joni> easy
[20:18:31] <alex_joni> it's all C
[20:18:58] <etla> do you need to recompile the whole of emc then or how does it work ?
[20:19:19] <etla> for a HAL component
[20:19:26] <jepler> right now all the hal modules are built in the emc2 source tree
[20:20:00] <jepler> personally I'd like to support building them outside the source tree, but I think we may fail to include some needed headers in the emc2-dev package
[20:21:09] <jepler> also, in 2.0.0 and 2.0.1, each realtime module must be known at the time emc_module_helper is compiled, so the value of compiling a driver separately is pretty low.
[20:28:43] <alex_joni> jepler: any way to compile userspace stuff with module_assist ?
[20:33:21] <jepler> alex_joni: btfoom
[20:33:36] <jepler> (beats the **** out of me, I don't know)
[20:33:46] <alex_joni> oh, thanks for the explanation :D
[20:33:58] <alex_joni> jepler: bet it could be done given enough interest
[20:41:42] <Jymmm> alex_joni: Not to be a smartass, but EVERYTHING could be done with enough interest, even reviving CP/M =)
[20:45:48] <alex_joni> night all
[20:46:05] <etla> night, thanks for the help, I learned a lot today
[21:02:02] <anonimasu> hm
[21:02:45] <skunkworks> 42
[21:02:51] <anonimasu> what's up?
[21:03:16] <skunkworks> nothing - big descusions of hal.
[21:03:23] <skunkworks> discusions?
[21:03:33] <anonimasu> I'm connectionless
[21:03:34] <anonimasu> almost
[21:03:47] <anonimasu> gprs works and my backup isdn router
[21:03:48] <skunkworks> seems to be working :)
[21:04:10] <anonimasu> working on tracing a bug in my work project
[21:04:31] <skunkworks> be happy you didn't have to deal with 2 way satellite interent :)
[21:04:38] <skunkworks> internet
[21:04:52] <anonimasu> that's probably faster then this
[21:04:54] <anonimasu> ;)
[21:05:15] <skunkworks> wasn't bad - depended on the time of the day.
[21:05:26] <anonimasu> just more latency
[21:05:27] <skunkworks> and hope it didn't rain or snow too hard
[21:05:41] <skunkworks> right - a good second on a good day
[21:06:38] <anonimasu> less nice
[21:08:27] <Bo^Dick> finally managed to get xchat working
[21:09:21] <anonimasu> congratulations
[21:09:27] <Bo^Dick> those dependency issues seems to have disappeard since i reinstalled debian
[21:09:41] <anonimasu> heh
[21:09:43] <anonimasu> I hate apt.
[21:09:58] <Bo^Dick> this feels slightly more high-tech than mIRC under windows
[21:10:44] <Bo^Dick> now all i have to do is to find a software for the "tait-style" programmer
[21:11:47] <SWPadnos> Bo^Dick, there was a company called hopco that had PIC programmers (like 10-12 years ago)
[21:12:03] <SWPadnos> you may be able to find the software still, and the hardware was pretty similar
[21:12:06] <Bo^Dick> really
[21:12:11] <anonimasu> :)
[21:12:25] <Bo^Dick> well my pic is probably broke anyway
[21:12:37] <anonimasu> hm, no spares?
[21:12:48] <Bo^Dick> i strongly assume the 2 amps through it was more than it could handle
[21:13:22] <SWPadnos> probably a bit over the limit
[21:13:24] <Bo^Dick> and unfortunately it was the only one i had
[21:14:43] <Bo^Dick> stop me if you've heard this one, the software i tried under win 98 was pretty freaky
[21:14:59] <anonimasu> stop :)
[21:15:03] <anonimasu> ^_^
[21:15:10] <SWPadnos> err - BTDT
[21:15:12] <anonimasu> seems similiar to all my win-experience
[21:15:23] <SWPadnos> (have I mentioned recently that I hate LabView? ;) )
[21:16:35] <anonimasu> ^_^
[21:16:40] <Bo^Dick> have you guys heard about "odyssey"?
[21:16:54] <SWPadnos> yeah - it's an old story by Homer ;)
[21:17:54] <Bo^Dick> yeah, but most intresting in this context is the software of course
[21:18:05] <SWPadnos> oh. haven't heard of that then
[21:18:20] <SWPadnos> there was the Odyssey computer back in the '70s though
[21:18:45] <Bo^Dick> i'd need some advices on software for pic programming here in the linux environment
[21:18:47] <skunkworks> isnt there an odssey minivan?
[21:18:59] <SWPadnos> Honda, I believe
[21:19:06] <skunkworks> there you go.
[21:19:32] <bill203> I had an Oddsey
[21:19:35] <bill203> the game system
[21:19:45] <bill203> only spelled better.
[21:19:57] <SWPadnos> heh
[21:21:03] <Bo^Dick> so no clues about any good pic-programming software then
[21:21:15] <SWPadnos> not for the last 5-10 years, no
[21:21:48] <SWPadnos> I may be able to find the code I wrote to do PIC programming under Linux, but I don't know if I have it here
[21:22:36] <Bo^Dick> so now suddenly it feels like windows has a lot stronger support for programming microcontrollers
[21:22:48] <Bo^Dick> what was i thinking
[21:23:09] <SWPadnos> all the vendors write Windows software, and not Linux software. so your statement is correct
[21:23:33] <SWPadnos> but it's not that Windows has any better support for it, it's just that all the software gets written for windows
[21:23:46] <Bo^Dick> well, i'm talking about the tait-programmer right now and not commersial overpriced ones
[21:24:34] <SWPadnos> have you looked at ponyprog?
[21:25:54] <davidf> Hi
[21:25:59] <SWPadnos> hi
[21:26:19] <Bo^Dick> ponyprog huh
[21:27:04] <SWPadnos> yep. works with PIC or AVR (or some others), you can download the software, and the schematics for the boards are on the web
[21:27:05] <davidf> I got a Ubuntu disc from a local computer shop. The dist with Live and HD install discs. I also bought a P3 box 733 MHz or thereabouts.
[21:27:19] <SWPadnos> cool. is it ubuntu 5.10 or 6.06?
[21:27:29] <davidf> 5.1
[21:27:32] <SWPadnos> good
[21:27:43] <Bo^Dick> is unbuntu better than debian?
[21:27:56] <SWPadnos> Ubuntu is based on Debian
[21:28:01] <Bo^Dick> ok
[21:28:13] <SWPadnos> but it has extra "polish" that debian lacks
[21:28:29] <Bo^Dick> such as bugfixes and stuff then...
[21:28:33] <SWPadnos> it seems a lot easier to use, and a lot more stuff (hardware) seems to just work
[21:28:40] <davidf> The box has a win 2000 license & they gave me the installation disk for it. I thought I'd go ahead and put both on, but was wondering...
[21:29:11] <SWPadnos> I've plugged in a firewire video camera, several digital still cameras, and the card reader in my Dell monitor, and all work flawlessly (in addition to my SATA DVD recorder, etc)
[21:29:11] <davidf> Is it better to install Ubuntu first, then Windows, or vice cersa.
[21:29:19] <davidf> versa
[21:29:19] <SWPadnos> Windows first, always
[21:29:27] <fenn> commercial overpriced programmers will always be better supported under commercial overpriced operating systems
[21:29:31] <SWPadnos> just don't use the whole disk
[21:29:48] <fenn> by the companies that wrote them, at least
[21:29:50] <SWPadnos> davidf, why install windows on this machine, out of curiosity?
[21:29:59] <davidf> Disk is 20 Gig.
[21:29:59] <Bo^Dick> does ponyprog support hardware through the parallel port?
[21:30:09] <CIA-8> 03jepler 07HEAD * 10emc2/src/hal/utils/Submakefile: make all of halscope depend on makefile.inc, because the gtk version affects it
[21:30:10] <SWPadnos> they used to, not sure about now
[21:30:13] <SWPadnos> http://home3.inet.tele.dk/frda/picasm/prog.html
[21:30:32] <CIA-8> 03jepler 07HEAD * 10emc2/src/hal/utils/miscgtk.c: provide stubs for additional gtk2-only functions
[21:30:36] <SWPadnos> that may be what I based my software on
[21:30:39] <A-L-P-H-A> SWPadnos, have you tried to install xorg 7.1?
[21:30:48] <SWPadnos> A-L-P-H-A, nope - have you?
[21:30:54] <CIA-8> 03jepler 07HEAD * 10emc2/src/hal/utils/scope_disp.c: make wheel zoom keep the same part of the trace under the cursor
[21:31:02] <A-L-P-H-A> SWPadnos I don't know how. hehe
[21:31:10] <SWPadnos> I see ... ;)
[21:31:39] <davidf> SWPadnos: Oh, just because it is licensed for it, and I may use this box for online routine stuff, & I'm used to win.
[21:31:41] <CIA-8> 03jepler 07HEAD * 10emc2/src/hal/utils/scope.c: make the task bar entry for the window flash when a new trace is captured and it wasn't focused already.
[21:32:21] <SWPadnos> davidf, ah, ok. I'd probably use the license to upgrade another machine, and keep this one on Linux only ;)
[21:32:22] <Bo^Dick> all i want to do is to compile a hex-file and send it through the parallel port through my "tait-hardware"
[21:32:34] <SWPadnos> what about the tait software?
[21:33:06] <davidf> I may never use it, but in case I want it, I thought it might be better to put it on first rather than later
[21:33:13] <Bo^Dick> it didn't work i'm afraid
[21:33:29] <davidf> SWPadnos: re your last. Forgot I could do that! Good idea.
[21:33:33] <fenn> hmm i always thought the module_helper whitelist was in a file, from the way you guys talk about it
[21:33:39] <SWPadnos> Bo^Dick, what speed is the CPU in the machine you used?
[21:33:43] <jepler> fenn: no, it's hardcoded in the source
[21:33:46] <fenn> any particular reason its in an array in the code? (besides laziness)
[21:34:06] <SWPadnos> so you can't twiddle the list after compilation?
[21:34:06] <Bo^Dick> it was 600Mhz i think
[21:34:06] <jepler> fenn: yes, to keep the code as simple as possible (i.e., easy to audit for security)
[21:34:29] <jepler> I complicated it with the "whitelist a whole directory" code, though
[21:35:00] <fenn> why does it matter what the file extension is?
[21:35:06] <SWPadnos> Bo^Dick, I think that code was written for 486'es. as I recall, we had problems when we went to 486 DX/4-120 chips, because the software is timed with loops
[21:35:55] <SWPadnos> in fact, my old company only retired their 386 DX/40 programming machine last year (I think - they may still use it)
[21:36:40] <fenn> jepler: looks like very clean code
[21:36:54] <jepler> fenn: maybe it doesn't. the idea was to forbid everything that didn't match "the pattern"
[21:36:59] <jepler> and the extension is part of the pattern
[21:37:38] <fenn> i'm afraid i dont know anythin about security auditing
[21:38:33] <jepler> me either, but I hear it has something to do with making the code so obvious, even the bad guys think it can't possibly be wrong.
[21:38:45] <fenn> lol
[21:38:46] <Bo^Dick> wonder if "prog84" could be something for me
[21:39:40] <fenn> why are you messing with those dirty pics?
[21:39:46] <Bo^Dick> yepp
[21:40:39] <fenn> no, i want to know _why_ you are messing with them, when you could be programming by now with an AVR
[21:40:59] <fenn> instead you are fretting about which expensive programmer to buy
[21:42:27] <fenn> ok so prog84 looks like a reasonable DIY project
[21:42:28] <Bo^Dick> well all i wanna do is to try if it still works
[21:42:53] <Bo^Dick> aha, "prog84" isn't a stand-alone application?
[21:43:43] <Bo^Dick> or is it?
[21:44:00] <fenn> um, no, it's not a DIY circuit. google images has failed me
[21:44:35] <fenn> i dont know what it is, you're the one who brought it up!
[21:44:53] <Bo^Dick> someone gave me a link to it
[21:47:34] <Bo^Dick> how do i remove a directory together with it's subdirectories?
[21:47:36] <fenn> amanita virosa?
[21:47:46] <Bo^Dick> no
[21:47:52] <fenn> she is suspciously high in the search results
[21:48:06] <fenn> in linux you mean?
[21:48:09] <Bo^Dick> y
[21:48:14] <fenn> rm -rf
[21:48:18] <Bo^Dick> thx
[21:48:20] <fenn> be careful with it
[21:48:32] <Bo^Dick> :)
[21:48:37] <Bo^Dick> good idea!
[21:48:43] <fenn> there's not "are you sure you want to delete your entire hard disk?" dialog
[21:48:55] <Bo^Dick> i've heard stories about it
[21:48:58] <Bo^Dick> :)
[21:48:59] <bill203> only a "ha ha ha will you be suprised" kind of silence.
[21:49:56] <fenn> "rm -rf directory/ *" will have unexpected results
[21:50:14] <bill203> tab-completion will hurt you.
[21:50:25] <fenn> naw tab completion is the best thing since sliced tofurkey
[21:50:37] <bill203> I just mean in that context
[21:54:42] <Bo^Dick> what i'd like to know about is a program that reminds of mplab under windows
[21:56:16] <bill203> what do you use for avr programming under linux?
[21:56:32] <bill203> the actual programing hardware.
[21:56:38] <fenn> Bo^Dick: i'll tell you if you dont bother me about installing it
[21:56:50] <fenn> oregano is very much like what you want i think
[21:57:27] <Jymmm> anyone else got their google spreadhseet invite yet?
[21:57:50] <fenn> ah not mplab, i thought you meant multisim
[21:59:06] <fenn> i guess the equivalent would be ddd
[21:59:19] <fenn> but ddd is "unix style" not 'windows style"
[21:59:45] <fenn> Jymmm: google spreadsheet?? wth is that?
[21:59:54] <bill203> I want to get set up for avi programming.
[22:00:02] <Jymmm> http://spreadsheets.google.com/
[22:00:22] <fenn> yes, i can find that myself, but wth is google doing in the spreadsheet business i mean
[22:01:47] <Bo^Dick> must log now
[22:02:16] <fenn> bill203: http://electrons.psychogenic.com/modules/arms/art/1/IntroToAVRMicrocontrollers.php
[22:03:10] <bill203> I was more asking what hardware you yourself use for the programmer.
[22:03:21] <fenn> go to the bottom of the article and click on "programmer"
[22:03:40] <bill203> ok
[22:03:42] <fenn> actually that one is kinda goofy
[22:03:43] <bill203> thanks.
[22:06:23] <fenn> bill203: http://fenn.dyndns.org/pub/irc/avrisp-unbuffered.gif or, if you dont feel lucky http://fenn.dyndns.org/pub/irc/avrisp-buffered.gif
[22:06:52] <fenn> the second circuit provides some protection against noise and static discharge
[22:06:56] <bill203> this is all complicated by the fact that I foolishly bought a PC with no parallel port.
[22:07:01] <fenn> you FOOL!!
[22:07:01] <bill203> and all my PCI slots are full.
[22:07:05] <bill203> I know, I know.
[22:07:13] <fenn> you have a junk pc around?
[22:07:21] <fenn> it would be the easiest solution
[22:07:36] <fenn> what are you going to use for emc?
[22:08:11] <bill203> another machine, that doesn't exist yet.
[22:09:04] <fenn> better make space for it
[22:09:13] <fenn> so when you find it you'll know where to put it
[22:09:23] <bill203> yep
[22:09:35] <bill203> plenty of space in the garage.
[22:10:47] <CIA-8> 03compile-farm 07BDI-Live rc46 (2.4.25-adeos) * 10emc2head/: build FAILED ; see http://linuxcnc.org/compile_farm/emc2head_slot4_log.txt
[22:11:45] <fenn> well? what are you waiting for? *whipcrack*
[22:12:33] <bill203> * bill203 runs
[22:22:54] <K4ts> hello
[22:25:30] <cradek> jepler: these halscope changes look wonderful
[22:26:59] <jepler> cradek: you've always been my greatest fan
[22:28:40] <Jymmm> even more than your mommy?
[22:32:10] <george_> HI TOOD
[22:33:54] <giacus> HELLO :)
[22:35:20] <giacus> should be the topic EMC2.0.1 is out, instead ?
[22:40:44] <george_> hi everybody, I have a dell laptop inspiron 7500 I installed ubuntu however i have a problem i can not be connected to internet I use the 3com 3ccfem556 card .any tips?
[22:41:56] <giacus> george_: lot of info are needed ..
[22:42:19] <george_> Like what?
[22:42:47] <giacus> connecting internet by a router or ethernet modem ?
[22:43:03] <george_> by a router
[22:43:37] <giacus> already tried ifconfig eth0 ?
[22:44:02] <george_> no i did not
[22:44:19] <giacus> try it, see what it tell you
[22:44:41] <giacus> /sbin/ifconfig eth0
[22:44:49] <giacus> or sudo ifconfig eth0
[22:45:05] <george_> ok i will do that when igo to home. thanks
[22:45:06] <giacus> i'm not sure how ubuntu accept that command
[22:46:07] <giacus> george_: if your router has dchp server enabled should be very simple
[22:46:23] <george_> I don't either.See i tried to install emc2 but because of this problem i can not anything
[22:46:38] <giacus> probably, adding auto eth0
[22:46:38] <giacus> iface eth0 inet dhcp
[22:46:51] <giacus> to /etc/network/interfaces
[22:46:53] <george_> I believe it has that
[22:48:51] <george_> well giasus i will try to apply your recomentations
[22:49:02] <giacus> ;)
[22:49:57] <george_> thank's
[22:50:08] <giacus> you're welcome
[22:50:48] <george_> I will try to talk to you tomorow
[22:53:00] <george_> todd are you there?
[22:53:57] <giacus> here we are
[22:54:10] <giacus> every day :)
[22:54:44] <giacus> todd has left I guess
[22:54:52] <george_> Again thank's for the info
[22:54:55] <giacus> [00:42]*** todd (n=todd@adsl-69-211-79-220.dsl.milwwi.ameritech.net) has quit:
[22:55:47] <george_> good noght :)
[22:55:50] <giacus> freenode seems having connection issue today
[22:55:58] <giacus> G'Night george_
[22:57:02] <fenn> that means todd quit his irc client
[23:10:23] <K4ts> night
[23:39:37] <fenn> http://public.idealab.com/~goncalves/fun/psycho/
[23:39:47] <fenn> gotta love that URL if nothing else
[23:48:34] <skunkworks> :)