jmkasunich, would an inverted pyramid of mirrors(say 4 mirrors) give you what you need?.... its pretty easy to cut some mirror stock up
LawrenceG: that would give me four segments with dead zones between
I'm gonna do some testing with this mirror, while looking for something a little more curved
I've also considered conical, or something between conical and spherical
On the off chance that there's an EMC committer here, I've been trying to use a Contour ShuttlePro 2 with EMC, and I've gotten it working, but there are two interesting gotchas:
First, the linux_event.py BTN definitions need to be expanded for BTN_10 to BTN_15 (0x10a to 0x10f), which aren't there. There are 14 buttons on a ShuttlePro 2.
Second, the events generated by the jog disk are signed 8 bit as they leave the kernel. Those by the jog wheel are signed 32 bit. Since the HAL only has S32 these days, the jog disk doesn't work well. I made a userspace python module to sign extend 8 bit signed to 32 bit signed and wired it up, but perhaps some other provision should be made.
I'm not on the mailing lists, etc, but I've been a happy user for years. Hope these notes help.
you could pastebin the code..
bradmc_: the code right after BTN_9 is BTN_LEFT. I could change it to BTN_11 but that would break any existing config that links BTN_LEFT. I think you'll just have to put up with less than ideal names for the buttons after BTN_9.
Actually, there are no defintions for 0x10a to 0x10f. BTN_LEFT is at 0x110. That's the problem!
here's my linux_event.py
HEX, not DEC
now I feel dumb
We all do some days ;)
bradmc_: did you find this? It sounds like we may have been encountering the same thing, though I gave up before getting anything to work: http://article.gmane.org/gmane.linux.distributions.emc.user/2112
(I gave back the device so unfortunately I can't test what you've done against that one)
I didn't, but I have a shuttle pro2,, not an express.
for the buttons, think this'll fix it? http://pastebin.ca/1312994
The shuttlepro2 generates an absolute counter value for both the wheel and the disk. But the wheel is 32 bits worth, and the disk is 8 bits in the low 8 of a 32 bit value.
For the buttons, definitely. That's the code I'm currently running.
on the express, one of the rotating parts went about +-90 degrees and snapped back to the middle when released. are either of the rotating parts like that on the pro?
Yes, the wheel (the outer) does that physically, but the net result is the aforementioned S32 counter in the event stream.
The disk (the inner), just rotates continuously under a single finger, and generates the S8 counter.
EMC: 03jepler 07TRUNK * 10emc2/lib/python/linux_event.py: some device is said to report buttons 0x109 through 0x10f
EMC: 03jepler 07v2_2_branch * 10emc2/lib/python/linux_event.py: from TRUNK: BTN_10..BTN_16
can you show me the 'show pin' and 'show param' for those axes using pastebin.ca or another similar service?
Just a sec. Here's a raw hexdump from the event device: http://pastebin.ca/1313012
[01:48:29] <bradmc_> http://pastebin.ca/1313021
has my test (incomplete, but at least starting to work) hal stuff, and then your requested info.
Hey, thanks for that patch! One less thing for me to remember ;-)
I'm not sure what to do about the other
there's not a way to specify "quirks" in hal_input, it assumes all input devices operate the same way
Understood. That's why I went the route I did with patching up the values in python in HAL. Just figured I'd see if anybody else had a cleverer idea.
how lame would it be to write a component specific to the shuttle
Arguably, it's an awful implementation on the shuttle hardware.
that's what I concluded, though either they're different or you've had an insight I didn't at the time
I'm toying with writing a component, now that I've just learned to write them in a remarkably quick and painless process.
either way -- with the "fix up" component, or a full standalone driver, we'd be happy if you would add it to our wiki's ContributedComponents page
Note that until I sorted out the button stuff, I was getting some random values off uninterpreted events that made it even weirder.
It was after I fixed the buttons that it snapped in.
I'll be happy to add a contrib comp after I've got it working.
I'll bbiab, have to hang some laundry to dryh
Can someone with commit access change the hm2-servo m7i43_th.hal file, uncommenting the watchdog related lines:
-- #setp hm2_7i43.0.watchdog.timeout_ns 10000000
++ setp hm2_7i43.0.watchdog.timeout_ns 10000000
-- #addf hm2_7i43.0.pet_watchdog servo-thread #enable if fw supported
++ #addf hm2_7i43.0.pet_watchdog servo-thread #enable if fw supported
seb isn't handy?
should this be changed in trunk only, or also in the 2.2 branch (so it appears when 2.2.9 comes out)?
I think everywhere
As it is now it simply wont work
ok, I'll do it
how did ted get it to work?
I think older driver
um, last two lines are identical
I suspect he wants me to remove the #
yes forgot to change last one
just going for confirmation ;)
my cvs update is taking a while, some large files were added in the docs tree
or the bits are cold, or something
EMC: 03jmkasunich 07TRUNK * 10emc2/configs/hm2-servo/m7i43_th.hal: from pcw, pet the nice dog so it doesn't bite
EMC: 03jmkasunich 07v2_2_branch * 10emc2/configs/hm2-servo/m7i43_th.hal: from pcw, pet the nice dog so it doesn't bite
did you see the last commits I just did (watchdog stuff)?
yep, thanks :-)
i'll do the same with the hm2-stepper config in a minute
oh nevermind, it's there already
neato - I programmed and set up a lathe job tonight, using the new cutter compensation and tool touch off, and did dry-runs using maxvel override. everything worked perfectly.
well except I need to center drill it first so the crappy drilled hole is in closer to the center :-)
... not an EMC problem
also css facing + at-speed works great (it waits for the spindle to slow down before each pass)
amazingly, all this stuff is new since I last made real parts
jepler, I think you made a mistake on your last commit to emc2/lib/python/linux_event.py. You repeated 0x109 for two buttons. I think you want' BTN_0 - BTN_15 not BTN_0 - BTN_16
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/examples/mpg.lyx: add velocity mode to example
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/ladder/ladder_examples.lyx: fix huge images
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/hal/pyvcp.lyx: fix huge images
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/common/ (Getting_EMC.lyx Linux_FAQ.lyx): spelling errors
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/install/Latency_Test.lyx: spelling errors
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/config/stepconf.lyx: spelling errors
clearly not my finest hour
and my unfinest hour continues for the second straight day
EMC: 03jepler 07TRUNK * 10emc2/lib/python/linux_event.py: fix BTN_10..15
EMC: 03jepler 07v2_2_branch * 10emc2/lib/python/linux_event.py: from TRUNK: fix new button symbols
BigJohnTatWork is now known as BigJohnT
EMC: 03tissf 07TRUNK * 10emc2/docs/src/examples/mpg_fr.lyx: french translation update
EMC: 03tissf 07TRUNK * 10emc2/src/po/ (fr_axis.po fr_rs274_err.po): french translation update
EMC: 03tissf 07TRUNK * 10emc2/docs/src/hal/pyvcp_fr.lyx: french translation update
EMC: 03jepler 07TRUNK * 10emc2/src/emc/motion/motion.c:
EMC: * fix a divide-by-zero during startup
EMC: * agree with milltask on the default shared-memory key
EMC: 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/stepconf/stepconf.py: these items don't need to be specified, defaults are OK
EMC: 03jepler 07v2_2_branch * 10emc2/src/hal/utils/halcmd_commands.c: from TRUNK: direct user to dmesg when loadrt fails
er, how do I make CIA-40 quiet for a little bit? I'm about to do a commit that touches a lot of files again
or, just don't worry about it...
EMC: 03jepler 07TRUNK * 10emc2/configs/boss/ (boss.hal pid_test.hal boss.ini pid_test.ini):
EMC: motion and task now agree on the default shared memory ID so there's no need
EMC: to specify it explicitly
EMC: 03jepler 07TRUNK * 10emc2/configs/5axis/ (5axis_sim.hal 5axis.ini):
EMC: motion and task now agree on the default shared memory ID so there's no need
BigJohnT: this is not right - x4 mode means you get one count per full quadrature cycle, instead of the usual one count per edge. jog wheels often have a full quadrature cycle per "click". Velocity mode is a separate issue and is controlled by the axis.N.jog-vel-mode bit. http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl/emcinfo.pl?action=browse&diff=1&id=Hooking_Up_A_MPG_Pendant
oops I've got x4 mode backward, just read the encoder manpage
x4 true means one count per edge, x4 false means one count per full cycle
Thanks for spotting that cradek wonder what the real problem was with pjm's config?
I didn't hear about this - what problem?
he was having an overrun "I think"
pjm_ today in #emc
fixed the wiki, I'll "fix" the manual this evening when I get home
x4 makes sense to me now :)
EMC: 03jepler 07TRUNK * 10emc2/src/hal/utils/halcmd.c: it's nice to know the variable that could not be found
EMC: 03jepler 07TRUNK * 10emc2/src/hal/utils/halcmd_main.c: files are generally considered to begin at line 1
EMC: 03jepler 07TRUNK * 10emc2/src/hal/utils/halcmd.c: the filename to halcmd_set_filename might be a temporary, so a copy is needed
EMC: 03jepler 07TRUNK * 10emc2/src/hal/utils/halcmd_commands.c: accurate display of filename and line number from source'd files
[15:52:08] <BigJohnT> http://www.cnczone.com/forums/showthread.php?p=554222#post554222
BigJohnT: fixed in emc2.3
also, wrong place to ask a question or report a bug... but you knew that already
hm, I wouldn't go so far as to say "shortly"
how about sometime this year
I think we will be able to stick to the schedule
the older you get the shorter the years get :)
BigJohnT, hmm Ive noticed :)
/net/filesrv1/sd3a/users/jepler/emc2-src/bin/rtapi_app: symbol lookup error: /net/filesrv1/sd3a/users/jepler/emc2-src/rtlib/pumakins.so: undefined symbol: pmHomPoseConvert
looks like operator error on my part, oops
EMC: 03cradek 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: size the dro to the window better
ah that was easier to fix than I thoguht
EMC: 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: make notifications appear above a custom panel
jepler: thanks for writing the email about gdb. I was just about to start.
I hope I didn't get any significant details wrong
I'm surprised you can start rtapi_app before emc
it turns out you can, and now I claim it's a feature
EMC: 03jepler 07TRUNK * 10emc2/configs/Sherline3Axis/ (Sherline3Axis_inch.ini Sherline3Axis_mm.ini): use standard path for PROGRAM_PREFIX
EMC: 03jepler 07TRUNK * 10emc2/configs/Sherline4Axis/ (Sherline4Axis_inch.ini Sherline4Axis_mm.ini): use standard path for PROGRAM_PREFIX
EMC: 03jepler 07TRUNK * 10emc2/configs/SherlineLathe/ (SherlineLathe_inch.ini SherlineLathe_mm.ini): use standard path for PROGRAM_PREFIX
EMC: 03jepler 07v2_2_branch * 10emc2/configs/Sherline3Axis/ (Sherline3Axis_inch.ini Sherline3Axis_mm.ini): use standard path for PROGRAM_PREFIX
EMC: 03jepler 07v2_2_branch * 10emc2/configs/Sherline4Axis/ (Sherline4Axis_inch.ini Sherline4Axis_mm.ini): use standard path for PROGRAM_PREFIX
EMC: 03jepler 07v2_2_branch * 10emc2/configs/SherlineLathe/ (SherlineLathe_inch.ini SherlineLathe_mm.ini): use standard path for PROGRAM_PREFIX
jepler: would adding the tab make the window markedly wider? I noticed my setup doesn't fit across my 1024 screen anymore.
jepler: would adding the tab make the window markedly wider? I noticed my setup doesn't fit across my 1024 screen anymore.
EMC: 03cradek 07TRUNK * 10emc2/src/hal/utils/halcmd_commands.c: fix warning
er, I guess its min size is 835x533
maybe my screen is 800x600
the navi screen on my GoldWing is bigger than that
cradek: good catch, I hadn't even noticed
wonder if there are many people with 800x600 out there
ah, thanks, text widget has a default size?
on machinery, surely people have that size
if you have an unknown (to Ubuntu) video driver you have 800x600
cradek: yes, 80 characters wide
jepler_: that fixed it, thanks
(with a vcp panel)
with a big DRO? :D
[19:26:54] <cradek> http://timeguy.com/cradek-files/emc/hnc-dro.png
that one is 747?
apparently 753x579 with window manager decorations
well.. picture size :)
assuming chris didn't scale it
hm, I don't immediately see why there's a small gap between the toolbar and the old tabs but not the new tabs
cradek: now if only one could select the font and background color
alex_joni: fuck you
* alex_joni quickly runs for cover
yeah, they are different sizes or something
too late :D
alex_joni: you have duck before throwing
well, my internets is shitty
at least do both in one motion
so I can duck with a certain lag
however I did beat you too it http://www.cnczone.com/forums/showthread.php?p=554364#post554364
* alex_joni feels sorry for BigJohnT
at least I did it in the privacy of this channel :D
hmmm I like the dro better with -bd 0 -relief flat -bg #d9d9d9
yea, but I didn't flipped off ... yet
jepler_: d9d9d9 is like the rest of AXIS?
the same background as almost everything but the program area
would make it more uniform
and losing the contour also seems appealing
by all means
OK, I'll check it in in a moment
cradek: was that screenshot done on hardy?
this one: http://timeguy.com/cradek-files/emc/courier-10-pitch.png
I think so
I changed it again though - don't trust any old screen shot
EMC: 03jepler 07TRUNK * 10emc2/share/axis/tcl/axis.tcl: appearance tweaks
cradek: what I was more curious was how you made the outside of the window transparent
last time Iused screenshot it captured black outside teh rounded window corners
I dunno, I used the gnome thingy
ok, nm :)
maybe I was using dapper, and they fixed things
jepler_: much better
example of "black (dark) corners" in a screenshot: http://news.softpedia.com/images/extra/LINUX/large/ubuntu804installationguide-large_010.png
though this one looks like maybe it was just cropped
ah f, resume is broken again
rfl? or pause/resume?
I don't see the pattern yet
well for months my emc just says "can't run a program when not homed", so after somebody fixes that I'll look into this pause problem
you can "sometimes" step after M1
when the stepped moves end, the red highlight bar goes away, and you can't resume
hm, sometimes I have to click the pause/resume toolbar icon twice
when M1 causes the pause, AXIS shows the pause button depressed, but you have to press it anyway to cause resume to act right
no, that's not it either
yeah, two clicks fixes it
no number of "s" presses though
pressing "p" when in the pseudopaused state (caused by M1) makes everything become normal
Issuing EMC_TASK_PLAN_OPTIONAL_STOP -- (+519,+12, +0,)
Issuing EMC_TRAJ_LINEAR_MOVE -- (+220,+116, +0,44.871640,20.894040,2.540000,0.000000,0.000000,0.000000,0.000000,0.000000,0.000000, +1,30.480000,30.480000,508.000000, +0,)
Issuing EMC_TASK_PLAN_PAUSE -- (+510,+12, +44,)
Issuing EMC_TASK_PLAN_RESUME -- (+512,+12, +45,)
after M1, I clicked "step", "resume", "resume"
but AXIS sends "pause" the first time, not "resume"
pressing "s" issues nothing
EMC: 03cradek 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: remove debug print
but the icons always correctly reflect the state (I think)
>>> s.interp_state, s.interp_state == emc.INTERP_PAUSED
task_resume() looks ok I think
surely s.task_mode is right
interp_state is "waiting", not "paused"
ok, not an AXIS bug then? (yay??)
[Global Notice] Hi all, it would appear one of our sponsors are having some issues with their connectivity. As a result we've lost one of our client (leaf) servers along with services. We hope to have things back to normal asap.
how's the pause button showing the right state, though?
I don't think so
I don't not think so
jepler_: I remember adding another status item for the pause
although pause/resume is only accepted in my write-only memory
so I can't access specifics
cradek: interp_state is a red herring I think
because interp can be way ahead of the actual run state
well that's why AXIS refuses to send the resume command - because it's not showing paused
(if that makes any sense)
right, and it currently (in TRUNK) gets the pause-ness from another status variable
is-paused or something like that
* alex_joni tries to find it
oh, I see "paused"
EMC: 03jepler 07TRUNK * 10emc2/share/axis/tcl/axis.tcl: don't let the DRO text widen the window
does that make any more sense now?
@@ -2738,7 +2738,7 @@
- if s.interp_state != emc.INTERP_PAUSED:
+ if not s.paused:
cradek: did you do that just now?
yeah it seems to fix it, more or less
right, looks ok to me too
I trust you
I don't like how the highlight line disappears. something is still odd.
I think highlight doesn't checks s.paused
hm, neither stat.current_line nor stat.motion_line become unset
there are three effing line numbers in the stat buffer
motion_line should be the currently executing line by motion
current_line should be the line task reached
+ self.win.set_current_line(self.stat.id or self.stat.motion_line or self.stat.current_line)
that doesn't feel quite right :D
I'm sure it works right, but it looks odd
task doesn't update .current_line when stepping over non-motion things
oh, hmm.. that should get fixed.. but I wouldn't go poking it with a stick
[Global Notice] Hi all, Everything is back to normal now (services included) -- bgp issues with uunet as the cause of the problem. Apologies for the inconvenience and have a good day.
EMC: 03cradek 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/axis.py: fix of the day for pause/resume/step interactions
"fix of the day" :D
cradek: not expecting any more for today? :P
I sure hope not :)
ugh, I am so not messing with this
I have no idea where those numbers come from
it's much less broken than it was :-/
cradek: maybe you can remind me on sunday
I hope to be back home by then, I'll poke it with my special stick I have at home
jepler_: I'm back. I have a working proof of concept I'd like you to look at and advise: http://pastebin.ca/1313876
I still hope to get it right one day
bradmc_: first glance looks like a reverse patch to me
Right you are. Just noticed that...
sure it's no issue, just pointing it out
one can still apply it with a patch flag
bradmc_: did you get that thing to actually work right?
bradmc_: btw, nice work if it actually works :D
(one of us has one of those things, but I don't remember whether it's me)
Patch has been corrected.
Yes, it actually works as expected.
bradmc_: that change seems OK to me if it works for your device and doesn't change behavior of existing devices without the new setting
I tried to avoid changing any existing behavior (Thanks cradek!)
More eyes to validate I haven't done anything stupid are always welcomed.
I recommend spelling out the "-prec" param name
patch hal_input.py < /tmp/1313879
\Hunk #2 FAILED at 149.
patch unexpectedly ends in middle of line
looks ok to my meat-based sensors
looks like the file from pastebin came with DOS-style line endings; that's part of the problem
was it actually necessary to write 'int(32)' and not just '32'?
+ self.set(name + '-prec', int(32))
repaired and param names spelled out: http://timeguy.com/cradek-files/emc/bradmc.patch
throw in a patch to the hal_input.1 manpage and apply
I had some long in place of int errors without a useable backtrace, so I scattershot a few casts in there.
easy for me to commit it if you guys would like
oh right, the man page - I'll let bradmc_ handle that
I can't test any devices with hal_input right now
Wow. Thanks for the really fast response and cleanups. I'll poke at the man page now.
otherwise I'd check that the mouse wheel still works as expected
if you aren't familiar with "man" markup, I can fix that part -- but I'm not sure I know how to describe the -precision and -absolute parameters properly
don't forget a patch to changelog :)
other than "for one device in the world, setting this to '8' makes it work right"
alex_joni: now you're just getting silly
well.. only 50%
but you could mention the AXIS DRO, if not already mentioned
but digging through the commits and updating the changelog after months and months of neglect is my favorite martyrdom
then we'll leave it to chris
and what gets missed comes as free bonuses for the users :D
the indentation level of
+ self.set(code + "-counts", self.get(code + "-counts") + value)
doesn't match any other line
is that supposed to be inside the innermost if, or just inside the EV_LEL elif?
cradek: inside the EV_REL elif
looks like that file has mixed tabs and spaces
yeah it's a mess
it's about half and half
That's my bad habits. Didn't expect to be going straight to a patch!
(not bradmc_'s fault)
ntpdate: step time server 18.104.22.168 offset 3306902.454142 sec
yeah, was powered down (hibernated) for a pretty long time
err.. suspended they call it
jepler_: do you remember which one of us has this thing? or did we give it back because it didn't work right?
cradek: I gave it back
didn't SWPLinux have one? Or no?
if you mean the one I had for a short time at fest 2 or 3 years ago
he has one of each thing
I remember someone (?) giving one to the group (?), that's all
I would not be surprised if swp has one in his collection of everything
* jepler_ is surprised to notice tha thal_parport is only 10% smaller than hal_m5i20
$ wc -l drivers/hal_parport.c drivers/hal_m5i20.c
heh, hal_speaker is the smallest
whee.. the DRO scales as you scale AXIS
that was not at all an accident
cradek: I can imagine
I don't remember many accidents around AXIS
EMC: 03jepler 07TRUNK * 10emc2/src/hal/drivers/hal_parport.c: remove dead code concerning userspace parport driver
Here's some (possibly marked up correctl) text towards that hal_input man page: http://pastebin.ca/1313907
I can't readily test it at the moment, I'm not in front of a unix workstation.
looks good to me
EMC: 03cradek 07TRUNK * 10emc2/docs/man/man1/hal_input.1: Patch from Brad McLean: Handle HIDs that give low-resolution signed values for relative axes. Allow suppression of duplicate events from devices that generate them unnecessarily.
EMC: 03cradek 07TRUNK * 10emc2/src/hal/user_comps/hal_input.py: Patch from Brad McLean: Handle HIDs that give low-resolution signed values for relative axes. Allow suppression of duplicate events from devices that generate them unnecessarily.
which thing are you guys wondering if I have?
that usb shuttle thingy
SWPLinux: that contour shuttle thing
the one that didn't work right
oh, yes I have it
bradmc_ has a different model and some modifications to hal_input that make it work acceptably for him
just hal_input huh. nice
I'll test it out when I get homne
that'd be great
EMC: 03jepler 07TRUNK * 10emc2/src/emc/usr_intf/axis/scripts/debuglevel.py:
EMC: show the inifile setting for a given collection of debug flags
EMC: show the "inifile only" items so that you can find the right inifile setting to enable/disable them as desired
oh man. there are like 100 buses going by the house
and some police
I suppose I should go watch what I can of the parade. bbl
LesNewell: I used diameter mode on a new job yesterday evening. thanks for your work on that!
It is good to know it works.
Now all I need to do is get my lathe up and running
it was disconcerting at first that g91g1z-.1x.1 didn't give me a 45 degree chamfer, but for turning OD and boring, it was more natural to program in diameter
Yes, chamfers are a bit odd. Did you have any trouble with arcs?
this part didn't have any
I never managed to get my head around them with Mach
well cutter comp generated some to go around corners, but I didn't write any arcs
I am quite sure I know how they work (or are supposed to work) so I don't think I'd have trouble programming them
well you got me curious now
Waiting for the crunch...
cradek: make sure you test both absolute-center and relative-center arcs
in fact, make sure and write a test case
hal/utils/halcmd.c: W funkcji `halcmd_set_filename,:
hal/utils/halcmd.c:836: ostrzeżenie: passing argument 1 of `free, discards qualifiers from pointer target type
cradek fixed that for me earlier
jepler: many commits you are doing
Looks good to me.
you can see the entire code there
That code looks like what I would expect. Betcha it wouldn't work in Mach :-)
or if you prefer, here's another view that you can use to verify the program: http://timeguy.com/cradek-files/emc/diameter-mode-arcs-second-view.png
LesNewell: I sure wouldn't know that :-)
(sorry about -second-view, that was a troll)
cradek: it's pretty subtle, like that cartoon about the piano
jepler_: don't remind me
[21:51:01] <cradek> http://timeguy.com/cradek-files/emc/dia-arcs-with-comp.png
first (red) path is the programmed nominal, white path being followed now is the compensated path
(good luck getting that back arc with this tool)
well geez, emc should detect that
it could, actually, for this tool shape
"just" check the direction of motion
more trouble than it's worth IMO
speaking of that, I won't bother to post the alternate view for this one
EMC: 03bigjohnt 07TRUNK * 10emc2/docs/src/examples/mpg.lyx: fix mpg example
good night all
cradek: thanks for checking in that stuff from bradmc_
bradmc_: and thanks for your contribution
alex_joni: if you want to test -sim 2.2.8 and put it in the repo, that's fine by me