#emc-devel | Logs for 2008-12-14

[08:43:19] <Lerman_______> Lerman_______ is now known as Lerman
[08:58:09] <tomaw> [Global Notice] Hi all. One of our larger client servers just dropped off the network for a few minutes. It's back now and hopefully stable, sorry for the downtime and thanks for using freenode!
[14:21:09] <alex_joni> jepler: any plans for 2.2.8 today?
[14:21:33] <alex_joni> * alex_joni wants to plan his next 8 available hours
[14:24:48] <jepler> alex_joni: yeah, definitely today
[14:25:22] <jepler> umm, if I have it tagged in about 2.5h will that give you time to build the hardy/i386 packages?
[14:27:51] <alex_joni> I'll be back in 2h or so, so that would be perfect
[14:28:14] <alex_joni> I'll start then on hardy/i386, SF and linuxcnc stuff, but we'll sync then
[14:28:40] <jepler> ok sounds good
[15:19:15] <mshaver> 2.2.8 this weekend? Just curious...
[15:22:15] <SWPadnos> that's what I'm hearing :)
[15:27:27] <jepler> mshaver: yeah, alex and I are going to work on it a little later
[15:38:18] <mshaver> jepler: just wondering. I'm sending a some hard drives out tomorrow and I wanted to include 2.2.8 if it was ready. Not a "must have", but a "nice to have"!
[16:03:41] <micges> hello all
[16:04:25] <micges> jepler: emc reset blending mode to G64 after errors ?
[16:08:38] <micges> jepler: I've added RS274NGC_STARTUP_CODE = G61 to axis_mm.ini [RS274NGC] and after that your test from friday will show what I've seen (I think it's error)
[16:16:12] <jepler> treat all modal codes as undefined after errors. if your programs are to run in g61 mode, place that modal setting in the part program. If you believe there's an error, please provide a step-by-step way for me to reproduce it and see it for myself
[16:17:00] <micges> undefined ?
[16:19:12] <jepler> that means, after you get an error do not assume that the path control mode is still G61, even if it was G61 at the time of the error.
[16:48:46] <cradek> RS274NGC_STARTUP_CODE does not run at the beginning of every program, only at EMC startup
[16:51:40] <cradek> that might be contrary to what people expect, I don't know
[16:54:07] <cradek> but, like jepler says, if your programs requires G61 behavior, put G61 in your program
[16:58:25] <micges> could be RS274NGC_AFTER_ERROR_CODE
[17:16:59] <CIA-42> EMC: 03jepler 07v2_2_branch * 10emc2/VERSION: bump version for release
[17:16:59] <CIA-42> EMC: 03jepler 07v2_2_branch * 10emc2/src/configure: bump version for release
[17:17:09] <CIA-42> EMC: 03jepler 07v2_2_branch * 10emc2/debian/changelog: bump version for release
[17:21:40] <jepler> alex_joni: 2.2.8 is tagged and I'm building the packages I'm in charge of
[17:42:25] <jepler> packages built, preparing to upload
[17:45:27] <alex_joni> jepler: I'm home now
[17:45:30] <jepler> alex_joni: welcome
[17:45:35] <alex_joni> checking out 2.2.8 now
[17:45:53] <jepler> I hear you checking i tuot
[17:46:01] <alex_joni> crap.. need to take care of some diskspace first
[17:46:09] <jepler> or something is making that machine make noise anyway
[17:46:09] <alex_joni> /dev/sda7 8.7G 8.2G 19M 100% /
[17:46:17] <alex_joni> * alex_joni hasn't started
[17:47:07] <alex_joni> do you use cvs co or cvs export ?
[17:47:32] <jepler> yes
[17:47:39] <alex_joni> I meant which one :P
[17:47:50] <jepler> on my two machines (hardy and dapper) I have two different scripts written at two different times
[17:47:57] <jepler> one uses cvs co, the other uses cvs export
[17:48:00] <alex_joni> or should I rather grab the tgz and build from that?
[17:48:08] <alex_joni> the one you uploaded to hardy
[17:48:18] <jepler> sure, that one will be there soon
[17:48:38] <alex_joni> should be the same with cvs checkout.. but still (feels more correct this way)
[17:48:42] <jepler> running repo_put.sh for hardy now
[17:48:43] <alex_joni> don't rebuild the repo yet
[17:48:52] <jepler> oops, too late
[17:49:05] <alex_joni> ok, nm it then
[17:49:14] <jepler> shouldn't be too important
[17:49:27] <jepler> I'll let you know when it gets done, it'll be a few minutes at least
[17:49:27] <alex_joni> but I think (for the future) it's better to finish uploading all packages, then rebuild the repo and upload the new index files
[17:49:31] <alex_joni> ok
[17:49:39] <alex_joni> let me know when the tgz is there
[17:49:50] <jepler> I agree, you're right -- I was not thinking all steps through.
[17:50:34] <alex_joni> as you said.. shouldn't matter with such a small repo as ours :)
[17:51:21] <alex_joni> on that note.. should we build sim for hardy?
[17:56:34] <jepler> .. still uploading the binary package ..
[17:57:50] <alex_joni> ok
[18:01:48] <jmkasunich> jepler: are you busy building, or watching a boring upload?
[18:01:57] <jmkasunich> (I have some questions about PCB milling)
[18:02:20] <jepler> jmkasunich: bored mostly
[18:02:24] <jepler> reading the internets
[18:02:40] <jmkasunich> you have one of those ebay spindles, right? and it has a 1/8" collet?
[18:02:53] <jmkasunich> how do you drill holes? do you get drills that have 1/8" shanks?
[18:03:01] <jepler> yes and yes -- "wolfgang engineering" iirc
[18:03:05] <jepler> yes
[18:03:21] <jepler> precisebits.com has lots of drills with 1/8" shanks
[18:03:26] <jepler> in fact virtually all their tooling is 1/8"
[18:04:05] <jmkasunich> most of the tooling is the same length, right? so you don't wind up needing loads of Z travel?
[18:05:13] <alex_joni> jepler: 2.2.8-amd64 is up
[18:05:19] <jepler> yes. I think that with the depth setting rings all the tools I use extend the same distance from the spindle nose
[18:05:54] <jepler> their website mentions that some of the tools use a different distance from ring to tool tip but I don't have any of those
[18:06:04] <jepler> alex_joni: yep, it's working on the source tarball now
[18:06:10] <jepler> then I need to run one more time to put the -dev deb up
[18:06:14] <alex_joni> cool.. should be slightly faster
[18:07:07] <jmkasunich> darn, looks like wolfgang doesn't have one listed right now (I'm looking at an ended auction)
[18:08:05] <jepler> e-mail him directly, it was the same thing when I wanted mine
[18:08:13] <jmkasunich> I was just about to do that
[18:08:19] <jepler> is his e-mail on the auctions or do I need to give it to you?
[18:08:40] <jmkasunich> ebay has a "contact the seller" thing, but if you have his direct email that would be better
[18:08:47] <jepler> jas
[18:09:36] <jmkasunich> when you get a chance, could you measure the length of the outer housing? the listing says 5" long, but I don't know if that is the housing, or the overall length including pulley and top of drawbar
[18:11:17] <alex_joni> jepler: I didn't notice emc2-dev_2.2.8_amd64.deb (does that come later?)
[18:11:19] <jepler> the pulley is designed to be nonremovable btw
[18:11:29] <jepler> 12:06:07 <jepler> then I need to run one more time to put the -dev deb up
[18:12:44] <jepler> jmkasunich: I forwarded you the e-mail from the wolfgang spindle guy
[18:12:50] <jmkasunich> got it, thanks
[18:12:56] <jepler> jmkasunich: 5" is the full length of the spindle including the pulley
[18:13:03] <jepler> alex_joni: source package done
[18:13:14] <alex_joni> cool, thanks
[18:13:23] <jepler> alex_joni: about to put the -dev package, but I should be well out of your way by the time you want to rebuild the repo
[18:14:01] <alex_joni> got it
[18:14:09] <alex_joni> starting to build stuff now
[18:14:26] <alex_joni> yeah, I want to test them before uploading.. so it's gonna take me 15-20 minutes at least
[18:14:55] <jepler> cradek: I'm starting to put the dapper stuff, so in 20 minutes or so it should be ready for your signature
[18:19:06] <jepler> bbl
[18:21:55] <alex_joni> jepler: let me know when you finished with the hardy repo
[18:23:49] <alex_joni> hi BigJohnT
[18:24:13] <BigJohnT> hi alex_joni
[18:24:24] <jepler> alex_joni: done
[18:24:37] <alex_joni> Preparing to replace emc2 1:2.2.7 (using emc2_2.2.8_i386.deb) ...
[18:26:23] <alex_joni> looking good
[18:26:55] <BigJohnT> atomic power to batteries Robin
[18:30:54] <alex_joni> BigJohnT: do you have your emc2 machine handy?
[18:32:35] <alex_joni> jepler: finished signing the repo, uploading new packages & indexes now
[18:35:29] <alex_joni> ok, done
[18:41:54] <jmkasunich> yay!
[18:42:53] <jmkasunich> jepler: have you poked around in that spindle? removed the collet and/or drawbar, closely examined the pulley attachment, etc?
[18:43:13] <jmkasunich> * jmkasunich wonders how hard it would be to make a longer version
[18:43:21] <jmkasunich> should probalby just ask the maker
[18:43:38] <jmkasunich> probably
[18:53:29] <mshaver> seb_kuzminsky: To answer your question of yesterday (which I saw hours later), yes, hm2 is still working well for me. I do still have the following error problem which I have masked by setting the max ferror to near infinity. I'll have to get you more information on what's happening before I can expect you to help me. I'll try to do this later today (Sunday), or tomorrow.
[18:53:49] <jmkasunich> mshaver: is this stepper or servo?
[18:56:30] <mshaver> stepper, 5i20
[18:58:14] <jmkasunich> I'm interested in that too - one of my goals for the holiday break is to convert my shoptask from software stepping to 5i20 stepping
[18:59:00] <mshaver> It _is_ smooth as silk, and I can easily max out my drives 200kHz max step rate.
[18:59:06] <jmkasunich> I'll be reviewing the 5i20 stepper stuff, both firmware and driver, since I have strong opinions on how it should work
[19:00:42] <mshaver> Good! If I halscop ferror during a move, it increases a tiny amount each servo cycle (linear ramp), then gains it back at the end of the move (linear ramp).
[19:01:19] <mshaver> If the move is too long, and max ferror is too small (like 1.0"), then I die on a following error.
[19:01:59] <mshaver> It's probably wrong to have to set max ferror to 100.0" ;)
[19:04:52] <jmkasunich> it sounds like there isn't any headroom
[19:04:58] <jmkasunich> this happens during rapids only?
[19:05:33] <alex_joni> jepler: should I start doing SF and linuxcnc.org ?
[19:05:39] <mshaver> No, any fast move. The faster you go, the more profound the effect.
[19:05:48] <jmkasunich> hmm
[19:06:01] <alex_joni> sounds like an max_vel/max_accel issue
[19:06:13] <alex_joni> I think you are supposed to run hm2 without setting an max_vel
[19:06:16] <jmkasunich> alex_joni: not if it happens for moves below the limits
[19:07:07] <jmkasunich> if the machine is configured for 100 ipm, and you get gradually increasing errors on a 50 ipm cut, it isn't a limit issue
[19:07:28] <alex_joni> unless it happens duing the accel/decel phase
[19:07:36] <mshaver> I can certainly try it. Do you mean [AXIS]MAX_VEL, or [TRAJ]MAX_VEL?
[19:07:37] <alex_joni> iirc you always accel at max_accel
[19:07:58] <jmkasunich> it sounds like the driver is running open loop, sending a frequency to the FPGA and not adjusting that as the actual position falls behind (or gets ahead)
[19:08:05] <jmkasunich> mshaver: both
[19:08:06] <alex_joni> mshaver: ask seb for more efficient advice .. I'm just thinking I heard something along the lines
[19:08:33] <jmkasunich> I normally set traj and axis values the same, or similar - make sure that your move is well below both limits
[19:09:09] <jmkasunich> as alex says, the accel will be at the limit, but if it is a long move, you should be able to tell if the error is increasing during the cruise portion, or only during the ramps
[19:09:32] <alex_joni> I think the hm2 driver has a way to set accel too, so maybe set that higher than the [AXIS] and [TRAJ] values
[19:09:33] <jmkasunich> paste your halscope pics somewhere, imagebin or whatever
[19:09:44] <mshaver> I think I'll get some info & scope pictures for this.
[19:09:52] <mshaver> like you just said :)
[19:10:13] <jmkasunich> IMO, the 5i20 stepgen should work exactly like the software stepgen, but with a multi-megahertz base thread
[19:10:30] <jepler> alex_joni: sure, that should be fine
[19:10:46] <alex_joni> ok, doing now
[19:11:23] <jepler> jmkasunich: no, I wouldn't really know what to look for. cradek has the identical spindle but more knowledge, he's probably a better one to answer your questions
[19:11:39] <jepler> * jepler leaves again
[19:12:10] <mshaver> yep! so I'm sure it's not a case of not being able to clock the step lines fast enough.
[19:12:33] <mshaver> I'll go fire up this machine & see what info I can gather up.
[19:13:26] <jmkasunich> it was non-trivial to get the stepgen module to work correctly, that is one reason why I think 5i20 stepgen should duplicate it as much as possible - this is a solved problem, don't re-solve it
[19:36:47] <alex_joni> jepler: did SF, linuxcnc.org and wiki (hope I didn't miss anything :)
[20:01:06] <seb_kuzminsky> hi guys
[20:01:35] <seb_kuzminsky> hm2 stepgen has both maxaccel and maxvel (independently settable for each stepgen instance)
[20:02:00] <seb_kuzminsky> but i think normally they'd all be set to 0, meaning dont limit vel or accel
[20:02:05] <seb_kuzminsky> traj takes care of that
[20:02:15] <seb_kuzminsky> (i may be misunderstanding how this is supposed to work)
[20:02:51] <seb_kuzminsky> i'd expect during the accel phase the ferror increases, and the traj moves the target point further away from the current point
[20:03:13] <seb_kuzminsky> during cruise it should be constant, and during decel it should drop linearly, back to zero at the destination
[20:03:55] <jmkasunich> seb_kuzminsky: what happens if the position command makes a step change and the driver limts are at zero?
[20:03:58] <cradek> iirc, the software stepgen HAS to limit accel otherwise it steps between vels, one step per servo cycle
[20:04:47] <seb_kuzminsky> jmkasunich: hm, in that case it will start stepping at the max allowed by its four timing parameters, until it gets to the dest, then "stop on a dime"
[20:04:55] <seb_kuzminsky> so maybe stepgen.maxaccel is needed
[20:05:09] <jmkasunich> the software stepgen applied both kinds of limits, _and_ it looks at the actual position and adjusts accordingly
[20:05:34] <jmkasunich> since the velocity command to the hardware (or base thread) is quantized, there will be some error, so looking at feedback is needed
[20:06:05] <jepler> alex_joni: thanks!
[20:06:08] <seb_kuzminsky> the hm2 stepgen looks at position feedback from the stepgen module in the fpga
[20:06:23] <seb_kuzminsky> each servo cycle it computes the position error
[20:06:37] <seb_kuzminsky> then it looks at its current (most recent, before this cycle) commanded velocity
[20:06:59] <seb_kuzminsky> if its time to start decelerating, it does that (at maxaccel)
[20:07:10] <seb_kuzminsky> if not, it accelerates, but vel gets clipped by maxvel
[20:07:13] <jmkasunich> how do you define "time to start decelerating"?
[20:07:16] <seb_kuzminsky> then it outputs the new computed vel to the fpga
[20:07:37] <seb_kuzminsky> brb
[20:08:48] <seb_kuzminsky> "if i start decelerating at maxaccel now, will vel=0 before or after the target?"
[20:08:59] <seb_kuzminsky> if it's near the target, it's time to decelerate
[20:09:04] <seb_kuzminsky> if not, keep accelerating
[20:09:54] <jmkasunich> what is the target? the current position command?
[20:10:37] <seb_kuzminsky> jmkasunich: yes
[20:10:49] <jmkasunich> does not compute
[20:10:55] <seb_kuzminsky> heh
[20:10:56] <seb_kuzminsky> well
[20:11:04] <seb_kuzminsky> i dont really know what i'm doing
[20:11:11] <seb_kuzminsky> so your feedback is very welcome ;-)
[20:11:41] <jmkasunich> well, I should get off my duff and actually start studying the code, and testing it on my RT box that has the 5i20 in it
[20:12:12] <jmkasunich> instead of what I am doing now, which is wild speculation about yet another new project
[20:12:22] <seb_kuzminsky> maybe part of my non-computation is because i've been testing with HAL only, not with all of EMC2
[20:12:43] <jmkasunich> what have you been using to generate the position command?
[20:12:48] <seb_kuzminsky> setp
[20:12:54] <jepler> (crazy idea of the day: build a simulation model of hostmot2 with freehdl or ghdl, and run it on emc2/sim)
[20:13:04] <seb_kuzminsky> jepler: yes :-)
[20:13:05] <jmkasunich> so it is a step function
[20:13:16] <seb_kuzminsky> SWPadnos and i talked about this a while back but no code came out of it ;-)
[20:13:20] <seb_kuzminsky> jmkasunich: yes
[20:13:35] <jmkasunich> run that step thru a limit3 block so it actually resembles what comes out of EMC
[20:13:38] <seb_kuzminsky> step from 0 to 1 and see how it moves
[20:13:54] <jmkasunich> ideally, the stepgen will accept both steps and ramps, and do the right thing
[20:13:57] <seb_kuzminsky> another thing i do is get position feedback from an encoder, and net that to the position-cmd of the stepgen
[20:14:10] <seb_kuzminsky> that seems to work too when i twist the shaft of the encoder
[20:14:27] <jmkasunich> a knob chaser
[20:14:42] <seb_kuzminsky> yep
[20:15:00] <seb_kuzminsky> i've got two steppers and three servos, and one servo i just use as an mpg
[20:15:09] <jmkasunich> I should clear some space on my bench and get started
[20:15:09] <seb_kuzminsky> the other four motors try to copy its position
[20:15:24] <jmkasunich> but at the moment I have a feline donut in my lap, and I hate to disturb him
[20:15:31] <seb_kuzminsky> ah yes
[20:17:02] <seb_kuzminsky> jepler: yay, 2.2.8! thanks man :-)
[20:18:06] <jepler> heh I didn't do much for it
[20:20:12] <seb_kuzminsky> does alex_joni do the .deb builds? I dont really know how the release process works
[20:20:47] <seb_kuzminsky> jmk is either stuck under a cat or clearing space on his workbench
[20:21:09] <jmkasunich> the former
[20:21:40] <jmkasunich> 19 year old cat, it would be mean to evict him
[20:22:14] <seb_kuzminsky> wow, that's pretty old
[20:22:22] <jepler> seb_kuzminsky: I build the hardy/amd64 packages and the dapper/i386 packages. alex builds the hardy/i386 packages. alex and I have the signing key for the hardy repository (it's a non-personal key), so whoever uploads last signs the repository. cradek has the dapper signing key (it's his personal key), so he's the one who signs that repo.
[20:22:39] <jepler> seb_kuzminsky: and then there's stuff like uploads to sourceforge, notes on the wiki, and so on
[20:22:48] <jepler> alex's part is probably the least automated
[20:23:25] <seb_kuzminsky> jepler: is there a special blessed build machine for each (distro, arch) pair?
[20:24:05] <jepler> seb_kuzminsky: in principle I believe any machine should give a functionally identical build, but I always build on the same machines
[20:24:17] <jepler> and I don't use pbuilder, though I should..
[20:24:27] <seb_kuzminsky> seems like something the buildbot could help with...
[20:24:45] <seb_kuzminsky> i'd be happy to work on that if you think it'd be useful
[20:25:02] <alex_joni> * alex_joni uses the machine where he built the hardy kernel
[20:25:05] <seb_kuzminsky> i've been meaning to run the deb builds in pbuilder (to vet the build-depends)
[20:25:23] <seb_kuzminsky> hi alex_joni, thanks for your work on 2.2.8 :-)
[20:25:35] <alex_joni> not my work ;)
[20:25:37] <alex_joni> hi seb
[20:27:10] <seb_kuzminsky> well i'm off to go sledding with offspring #1
[20:27:13] <seb_kuzminsky> see y'all later
[20:27:24] <jmkasunich> have fun
[20:51:49] <BigJohnT> hi alex_joni
[20:53:36] <BigJohnT> * BigJohnT wanders off to the store for provisions as the weather looks nasty here for the next few days
[21:01:16] <jepler> Bitstream generation is complete.
[21:01:16] <jepler> created bitfile 5i20_SVST8_4.bit
[21:01:59] <jepler> jmkasunich: hope I didn't step on your toes / got it mostly right in spec2bit.py
[21:02:01] <CIA-42> EMC: 03jepler 07TRUNK * 10emc2/src/hal/drivers/mesa-hostmot2/firmware/src/spec2bit.py: run through to bitfile creation
[21:02:08] <jepler> got a bitfile, but don't have time to test it before I leave .. right now
[21:09:00] <jmkasunich> jepler: my toes are happy
[22:22:56] <CIA-42> EMC: 03bigjohnt 07v2_2_branch * 10emc2/docs/src/hal/basic_hal.lyx: expand on setp a bit
[22:25:14] <CIA-42> EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/hal/basic_hal.lyx: expand setp a bit
[22:27:19] <BigJohnT> before I commit is this correct in trunk? "TLO_IS_ALONG_W = 1 Moves the tool length offset from Z to W."
[22:27:56] <cradek> yes
[22:30:55] <BigJohnT> thanks cradek
[22:32:24] <CIA-42> EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/config/ini_config.lyx: add tlo is along w
[22:33:27] <CIA-42> EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/ (docs.xml index.tmpl): add keystick to html
[22:59:36] <BigJohnT> jepler are you around?
[23:05:30] <cradek> I think he's always away on Sunday afternoons
[23:06:28] <BigJohnT> ok, thanks cradek