#linuxcnc-devel Logs
Dec 11 2017
#linuxcnc-devel Calendar
07:11 AM jepler: I like dgarr's idea of librarifying limit3
07:13 AM jepler: too bad it comes concurrently with skunkworks_'s bug report in it :-/
07:13 AM skunkworks_: well - I cannot get dgarrs version to fail...
07:13 AM skunkworks_: like the current version in 2.7
07:18 AM jepler: skunkworks_: I don't think dgarr (intentionally) fixed any bugs
07:18 AM jepler: so .. that's a weird outcome
07:18 AM skunkworks_: right
07:24 AM jepler: in your screencap, basically limit3's output glitches to 0 and then tries to recover?
07:27 AM jepler: OK, I see the bug
07:27 AM jepler: if (out > in) { // Output > input:
07:27 AM jepler: ...
07:27 AM jepler: if (out < in) { // Output < input
07:27 AM jepler: ...
07:27 AM jepler: }
07:27 AM jepler: // Shouldn't get here
07:27 AM jepler: SET_NEXT_STATE((max_pos-min_pos)/2, (max_vel-min_vel)/2, in);
07:28 AM jepler: it looks like if input and output are ever exactly equal, it gets to "shouldn't get here"
07:28 AM jepler: dgarr has:
07:28 AM jepler: + if (*p->L3_curr_pos > *p->L3_pos_cmd) { // Output > input:
07:28 AM jepler: + if (*p->L3_curr_pos <= *p->L3_pos_cmd) { // Output < input
07:28 AM jepler: .. fixing (accidentally?) the bug
07:28 AM jepler: though the second if maybe should just be else
07:28 AM jepler: skunkworks_:
07:29 AM jepler: seb_kuzminsky: which suggests a simple fix to plop on the top of 2.7, just change < to <= or the if(...) to else
07:29 AM skunkworks_: I finally read through an email I got from dgarr - I think he has the same idea.
07:30 AM jepler: ah OK
07:30 AM skunkworks_: One thing i hadn't noted before is the '<=' test above is just
07:30 AM skunkworks_: '<' in the original -- this could cause unexpected behavior if
07:30 AM skunkworks_: out==in (out is exactly equal to in) but that may be vary rare
07:30 AM skunkworks_: since the next line of his code says: "// Shouldn't get here"
07:31 AM jepler: yup he discovered the same thing as me
07:31 AM jepler: dgarr is on the ball
07:33 AM skunkworks_: and that is what I was doing - sampling output and feeding it into the input..
07:34 AM skunkworks_: I love how i can find ways to break things..
09:02 AM jepler: it's a service you provide at a remarkably low hourly rate, too
09:04 AM skunkworks: :)
09:06 AM skunkworks: The result can be satisfying though...
09:06 AM skunkworks: https://www.youtube.com/watch?v=IecrOu9A3CU
09:07 AM jepler: is the metal deliberately at an obscene slope?
09:07 AM skunkworks: yes
09:08 AM skunkworks: keeping the distance by arc voltage
09:08 AM skunkworks: http://electronicsam.com/images/KandT/testing/plasma/2inchin10.png
09:08 AM skunkworks: going high to low.. but same diff. You can see the limit3 out showing the warp in the steel.
09:08 AM skunkworks: http://electronicsam.com/images/KandT/testing/plasma/2inchin10.png
09:09 AM skunkworks: linuxcnc is cool
09:09 AM skunkworks: lowpass.0.out is torch voltage.
09:09 AM cradek: that's super cool
09:09 AM skunkworks: (peter helped...)
09:10 AM skunkworks: That is hal only. the offset branch that dgarr is working on would be way cooler.
09:11 AM skunkworks: In the video you can see the 2" offset being removed after z moves to the safe hight (which really wasn't high enough in this situation)
09:15 AM skunkworks: I still have to play with tuning a bit.. it seems to be hard to get it any better than +/-1v
09:29 AM skunkworks: did you guys see cmorleys stuff? https://youtu.be/Dq4JMI1My98
09:37 AM seb_kuzminsky: don't tell Axis this, but i would love a simple, clean UI implemented in a modern toolkit
09:37 AM seb_kuzminsky: i love how Axis can be driven from the keyboard, but i don't like how tcl breaks all the time
09:40 AM cradek: it's baffling that people are still breaking tcl
09:40 AM cradek: can't we stop screwing with it and just use it now?
09:41 AM seb_kuzminsky: the rest of the ecosystem is moving forward, or maybe moving in a brownian way, and everything has to move with it or bitrot
09:41 AM cradek: is C the only language now where you can write a program and build it just fine in 10 years and in 20 years?
09:42 AM seb_kuzminsky: bash, make, (cough) perl, uhhh...
09:42 AM cradek: I just built a C+xlib program I wrote 15? years ago
09:42 AM cradek: surely not perl
09:42 AM seb_kuzminsky: it hasn't moved since perl5, has it?
09:43 AM cradek: > [Perl 6] is introducing elements of many modern and historical languages. Compatibility with Perl 5 is not a goal
09:44 AM seb_kuzminsky: yeah but that doesn't count because nobody uses perl6 :-P
09:45 AM cradek: Perl 6 provides three basic modes of parameter passing: Positional, Named, Slurpy
09:55 AM skunkworks: Mmmmm slurpy
09:56 AM jepler: Python sure didn't stay the same, even ignoring python3
10:01 AM seb_kuzminsky: yeah
10:02 AM jepler: but yeah the collateral breakage from the reorganization of bindings in tk8.6 is aggrivating
10:03 AM seb_kuzminsky: skunkworks: i made a siggen -> mux -> limit3 hal circuit, with the limit3 output going to the other mux input
10:04 AM skunkworks: yes - that is similar to what I have setup
10:04 AM seb_kuzminsky: the limit3 follows siggen fine, and when i flip the mux sel input so limit3's input == output, it jumps
10:04 AM seb_kuzminsky: violating its vel and accel limits
10:04 AM seb_kuzminsky: so thanks for your testing, again
10:04 AM skunkworks: exactly
11:40 AM jepler: seb_kuzminsky: if it's something that happens when you are using the window decorations, it's gnome's fault not halscope's.
11:41 AM jepler: they probably thought they were being clevar
11:41 AM jepler: maybe it's this stupid setting, or some derivative thereof? https://askubuntu.com/questions/109321/popup-dialogs-attached-to-window-title-and-not-movable-how-to-detach-modal-dial
11:42 AM linuxcnc-build: build #1154 of 4017.5.deb-wheezy-armhf is complete: Failure [4failed shell_1] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/4017.5.deb-wheezy-armhf/builds/1154 blamelist: Dewey Garrett <dgarrett@panix.com>
11:42 AM cradek: > The "design decision" is based on how Mac OS does it.
11:54 AM dgarr: linuxcnc-build: force build --branch=dgarr/limit3_simple_tp 0000.checkin
11:54 AM linuxcnc-build: The build has been queued, I'll give a shout when it starts
11:58 AM linuxcnc-build: build forced [ETA 1h53m49s]
11:58 AM linuxcnc-build: I'll give a shout when the build finishes
12:20 PM seb_kuzminsky: i'm unhappy about the flakiness of the arm buildslaves
12:30 PM pcw_mesa: I'm making some RPI/OdroidC2/LibreComputer compatible FPGA motion hardware but I really don't look forward to building stuff on those "platforms"
12:32 PM seb_kuzminsky: neat!
12:32 PM seb_kuzminsky: also, my condolences
12:33 PM pcw_mesa: yeah kernel builds are going to be fun...
12:34 PM seb_kuzminsky: if you find an arm platform that's suitable for actual work, let me know... i think the most promising one i've found so far is the SoftIron OverDrive 1000, and it's got underwhelming specs for the price
12:34 PM seb_kuzminsky: 4 64-bit cpus and 8 gigs of ram for $600
12:35 PM pcw_mesa: Yeah not much more than the high end RPI clones
12:37 PM pcw_mesa: The C2 and Libre do have native Gig Ethernet so a NFS mounted filesystem might not be too bad
12:38 PM pcw_mesa: 2G max RAM I think
12:38 PM pcw_mesa: (rumor is that the C2 runs HM2_eth OK)
12:39 PM pcw_mesa: so Libre should also
12:40 PM pcw_mesa: (same SOC)
01:18 PM seb_kuzminsky: in addition to the limit3 bug discussed above, i'm finding a number of accel violations
01:18 PM seb_kuzminsky: seems to be hunting-related
01:19 PM skunkworks: How bad?
01:19 PM seb_kuzminsky: anywhere up to the suspiciously round number of 2x the specified limit
01:21 PM seb_kuzminsky: http://highlab.com/~seb/linuxcnc/limit3-accel-violation.png
01:21 PM seb_kuzminsky: the input to limit3 is flipping among the siggen outputs, via a big mux
01:21 PM seb_kuzminsky: the constraints are monitoried by wcomps
01:22 PM seb_kuzminsky: when output catches up to the triangle wave, sometimes, like in that halscope screenshot, there's some hunting
01:22 PM seb_kuzminsky: and sometimes when it's hunting, the accel limit is fviolated
01:22 PM seb_kuzminsky: not always
02:03 PM skunkworks: http://electronicsam.com/images/KandT/testing/plasma/limit.png
02:03 PM skunkworks: acc 30in/s^2 and vel=2in/s
02:13 PM seb_kuzminsky: i've seen the accel violation when i finagle it so that limit3 catches up with its input while input is moving at a constant velocity
02:13 PM seb_kuzminsky: try giving your limit3 a little more accel so it can catch up
02:19 PM skunkworks_: hold on
02:19 PM skunkworks_: I see it here when I do the freeze output..
02:19 PM skunkworks: http://electronicsam.com/images/KandT/testing/plasma/limit1.png
02:20 PM skunkworks: like you say - not every time
02:44 PM seb_kuzminsky: i just pushed a test that repros both the "in == out" bug and the hunting accel constraint violation reliably
02:44 PM seb_kuzminsky: and jepler & dgarr's fix for the in==out bug
02:44 PM seb_kuzminsky: i'm taking off for a little while, back later this afternoon
02:46 PM seb_kuzminsky: i wonder why github does not notify here reliably any more :-/
02:52 PM linuxcnc-build: Hey! build 0000.checkin #5262 is complete: Success [3build successful]
02:52 PM linuxcnc-build: Build details are at http://buildbot.linuxcnc.org/buildbot/builders/0000.checkin/builds/5262
03:39 PM hazzy: seb_kuzminsky: I have github set up to spam IRC for another project, and it has been very unreliably there for the past few weeks as well, kinda frustrating
06:20 PM linuxcnc-build: build #2920 of 1402.rip-wheezy-rtpreempt-i386 is complete: Failure [4failed runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1402.rip-wheezy-rtpreempt-i386/builds/2920 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:29 PM linuxcnc-build: build #3606 of 1404.rip-wheezy-rtpreempt-amd64 is complete: Failure [4failed runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1404.rip-wheezy-rtpreempt-amd64/builds/3606 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:32 PM linuxcnc-build: build #5246 of 1306.rip-precise-amd64 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1306.rip-precise-amd64/builds/5246 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:32 PM linuxcnc-build: build #5244 of 1200.rip-lucid-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1200.rip-lucid-i386/builds/5244 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:33 PM linuxcnc-build: build #5243 of 1300.rip-precise-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1300.rip-precise-i386/builds/5243 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:37 PM linuxcnc-build: build #4457 of 1301.rip-precise-rtai-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1301.rip-precise-rtai-i386/builds/4457 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:40 PM linuxcnc-build: build #5244 of 1202.rip-lucid-amd64 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1202.rip-lucid-amd64/builds/5244 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:42 PM linuxcnc-build: build #259 of 1630.rip-stretch-rtpreempt-amd64 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1630.rip-stretch-rtpreempt-amd64/builds/259 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:45 PM linuxcnc-build: build #5257 of 1201.rip-lucid-rtai-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1201.rip-lucid-rtai-i386/builds/5257 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:53 PM linuxcnc-build: build #3404 of 1400.rip-wheezy-i386 is complete: Failure [4failed runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1400.rip-wheezy-i386/builds/3404 blamelist: Sebastian Kuzminsky <seb@highlab.com>
06:54 PM linuxcnc-build: build #3405 of 1403.rip-wheezy-amd64 is complete: Failure [4failed runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1403.rip-wheezy-amd64/builds/3405 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:07 PM linuxcnc-build: build #3071 of 1401.rip-wheezy-rtai-i386 is complete: Failure [4failed runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1401.rip-wheezy-rtai-i386/builds/3071 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:16 PM linuxcnc-build: build #1871 of 1500.rip-jessie-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1500.rip-jessie-i386/builds/1871 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:18 PM linuxcnc-build: build #1872 of 1520.rip-jessie-amd64 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1520.rip-jessie-amd64/builds/1872 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:20 PM linuxcnc-build: build #450 of 1540.rip-jessie-armhf is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1540.rip-jessie-armhf/builds/450 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:23 PM linuxcnc-build: build #1873 of 1530.rip-jessie-rtpreempt-amd64 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1530.rip-jessie-rtpreempt-amd64/builds/1873 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:24 PM linuxcnc-build: build #1871 of 1510.rip-jessie-rtpreempt-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1510.rip-jessie-rtpreempt-i386/builds/1871 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:28 PM linuxcnc-build: build #260 of 1610.rip-stretch-rtpreempt-i386 is complete: Failure [4failed compile runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1610.rip-stretch-rtpreempt-i386/builds/260 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:32 PM linuxcnc-build: build #3416 of 1405.rip-wheezy-armhf is complete: Failure [4failed runtests] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/1405.rip-wheezy-armhf/builds/3416 blamelist: Sebastian Kuzminsky <seb@highlab.com>
07:32 PM linuxcnc-build: build #5264 of 0000.checkin is complete: Failure [4failed] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/0000.checkin/builds/5264 blamelist: Sebastian Kuzminsky <seb@highlab.com>