#linuxcnc Logs

Aug 31 2023

#linuxcnc Calendar

01:34 AM Deejay: moin
02:43 AM travis_farmer: Morning :-)
03:18 AM rigid_: is CMS configured in the .ini file?
03:27 AM rmu: rigid_: re. remote gui, it may make more sense to use a different RPC mechanism than NML/RCS, i.e. some small-ish headless GUI proxy and talking zeromq or something like that
03:28 AM rigid_: rmu: yeah, that's what machinekit does (but cpt. proto, not zeromq). But this approach is rather enormous. And I believe, remote GUI is already built into linuxcnc
03:29 AM rigid_: the libnml it uses already supports TCP and UDP and STCP sockets
03:29 AM rigid_: i just can't figure it out
03:30 AM rigid_: the server/client is defined in the "cms config file" mentioned here: https://github.com/LinuxCNC/linuxcnc/blob/master/src/libnml/cms/cms.cc#L184
03:30 AM rigid_: wherever that may be :)
03:30 AM rmu: I'm pretty sure it is not supported out of the box, there would be some documentation how to do it in that case ;)
03:31 AM rigid_: honestly, I would be surprised if even half of the features were properly documented. that codebase is hillariously huge for what it does
03:32 AM rigid_: ...notes taken on papyros rolls, reasons for most stuff long forgotten in ancient times :)
03:33 AM rmu: AFAIK NML decends from a generic realtime capable communications lib from NIST
03:33 AM rigid_: ah, found it... /usr/share/linuxcnc/linuxcnc.nml runs the whole show
03:33 AM rigid_: rmu: yep. rcslib
03:34 AM rmu: maybe this project can help too https://github.com/DjangoReinhard/JCNCScreen
03:35 AM rmu: I didn't look too closely but somehow this java gui manages to talk NML
03:35 AM rmu: hmm. seems to include native code to interface to shared memory.
03:35 AM rmu: no tcp
03:35 AM rigid_: "linuxcnc uses shared memory buffers for communication." looking at the code, this is simply not true. it uses NML over sockets.
03:35 AM rmu: https://github.com/DjangoReinhard/JCNCScreen/blob/master/native/de_schwarzrot_system_CommandWriter.cc
03:36 AM rmu: I'm pretty sure it uses shared memory, you can't use sockets from RTAI realtime kernel modules
03:37 AM rmu: AFAIK
03:37 AM rigid_: that code uses #include <emc_nml.hh>
03:37 AM rigid_: NML is totally transparent to apps. internally it can use all sorts of stuff, also network
03:38 AM rigid_: the config is a bit confusing. the default config sets SHMEM localhost port 5005
03:38 AM rigid_: e.g. "B emcCommand SHMEM localhost 8192 0 0 1 16 1001 TCP=5005 xdr queue confirm_write serial"
03:40 AM rigid_: ah, SHMEM only sets the buffer type for the socket it seems. valid types are "SHMEM", "PHANTOM", "LOCMEM" and "FILEMEM"
03:40 AM rigid_: whatever those might be
03:43 AM rmu: linuxcncsvr listens on tcp port 5005
03:45 AM rigid_: yep, it's set in linuxcnc.nml (and linuxcnc_big.nml)
03:45 AM rigid_: big has bigger buffersizes
04:01 AM rmu: IIRC status used to include the complete tool table, that could overflow buffers
04:16 AM travis_farmer: it's fascinating... and i am likely as guilty, myself. but i oftin wonder how many people think about if they should, instead of spending so much time on if they could. i personally would not use a remote GUI.
04:19 AM rmu: why not
04:20 AM travis_farmer: if i can't see/hear/feel what the machine is doing, i don't trust it
04:21 AM rmu: remote gui can mean using your phone or a tablet, doesn't mean you are not in the room
04:22 AM zyp: running the GUI on a different computer doesn't necessarily imply having it at a different location, IMO it'd just make a lot of sense to keep GUI applications away from the computer that's executing realtime tasks
04:22 AM rmu: if you are running production, it is quite normal to let machines run "lights out"
04:26 AM travis_farmer: "keep GUI applications away from the computer that's executing realtime tasks" that, i can understand, i guess
04:28 AM sensille: travis_farmer: so you also don't like ssh? a very basic form of "remote UI"
04:29 AM travis_farmer: i would never use SSH to control my machine, but it is fine for working on my servers
04:30 AM rigid_: travis_farmer: you wouldn't run linuxCNC on a driver as well, would you? :)
04:30 AM rigid_: remote GUI doesn't necessarily mean "primary offsite GUI". It could be next to the machine on a hub that UIs more than one machines. Or at a remote location as secondary UI where some skilled person can monitor it and doesn't need to be on the site.
04:31 AM rigid_: oh just repeated what anyone was saying :-S
04:32 AM rigid_: ssh is fine for remote control (if TCP latency/overhead isn't critical). Just remote X (over ssh) is quite inefficient.
04:32 AM rigid_: i'll try to tunnel NML if that's really supported by linuxcnc
04:33 AM rigid_: travis_farmer: think of it: you're milling something nice and the whole family can watch! :-P
04:34 AM JT-Cave: morning
04:34 AM JT-Cave: 59°F
04:34 AM rmu: rigid_: linuxcncrsh
04:35 AM rigid_: rmu: what about it?
04:35 AM travis_farmer: JT-Cave: 55F :-)
04:36 AM rmu: rigid_: it is supported, for some GUIs at least
04:37 AM rmu: if you can call linuxcncrsh a GUI
04:53 AM Tom_L: morning
04:53 AM Tom_L: 68°F
05:05 AM rigid_: rmu: i'd call it a CLI :) are you sure it's not supported by the GUIs aswell? they use NML aswell and /usr/share/linuxcnc.nml seems to contain the network config
05:10 AM rmu: rigid_: the question is how to tell the "real" GUIs and then just try it.
05:11 AM rmu: to me it doesn't look like that would only be a matter of configuration in linuxcnc.nml
05:18 AM rigid_: rmu: it seems they just open libnml which in turn does the network stuff. I could imagine that just linuxcnc.nml needs to be configured (didn't try yet, still at compiling linuxcnc)
05:19 AM rigid_: did try "linuxcncsrv -queryhost" tho, and it gives out some "port unset" errors
05:20 AM rigid_: the cause seems to be, that there's no "TCP=" anywhere as parsed here: https://github.com/LinuxCNC/linuxcnc/blob/master/src/libnml/cms/cms.cc#L386
05:21 AM rigid_: I have to finish something here, i'll look further into it later. but until now I don't see a reason NML shouldn't work over network. the code seems to be there.
05:56 AM -!- #linuxcnc mode set to +v by ChanServ
05:56 AM -!- #linuxcnc mode set to +v by ChanServ
06:27 AM JT-Cave: rooster just crowed
07:30 AM * JT-Cave goes to ride the mountain bike for a while
07:38 AM * travis_farmer is jealous of JT-Cave ...
08:15 AM Unterhaus_ is now known as Unterhausen
08:34 AM tjf_shop: travis_farmer here (in shop). can't seem to get the MAX31855 component to work correctly. i have shortened the wires, changed to two different MAX31855 boards, changed to a different K-type thermocouple... not sure what is going on. i get a fault code of 7
08:46 AM tjf_shop: Hmmm, guess i will have to try the forum...
08:50 AM roycroft: i am disappointed
08:50 AM roycroft: the storm is finally here, but the raindrops are not falling yet
10:11 AM rigid_: what could be the reason for "Run-time dependency Boost (missing: python) found: NO (tried system)" but "/usr/lib/aarch64-linux-gnu/libboost_python39.so.1.74.0" exists?
10:12 AM rigid_: wait, does linuxcnc still depend on python2? :-O
10:16 AM JT-Shop: no
10:17 AM CaptHindsight: 2.9 is 100% Python3
10:17 AM rigid_: CaptHindsight: i checked out master
10:18 AM rigid_: isn't meson the way to build? i had to change python2 -> python3 and "dependency('boost', modules : ['python3'])" in meson.build
10:19 AM rigid_: and I'm getting "../src/libnml/inifile/inivar.cc:29:10: fatal error: config.h: No such file or directory" :)
10:21 AM rigid_: I cloned master and did "mkdir build ; meson setup build ; meson compile -C build"
10:28 AM rigid_: CaptHindsight: this i mean https://github.com/LinuxCNC/linuxcnc/blob/2.9/meson.build#L47
10:30 AM rigid_: oh man, I missed the "cd src" and thus autogen.sh :)
11:04 AM roycroft: that could account for the lack of the config file - if you don't generate it it probably won't be there :)
11:05 AM rigid_: ahw, no install target :(
11:51 AM Tom_L: lunch over, nap time
02:23 PM andypugh_: skunkworks: I assume you have seen this? https://www.youtube.com/watch?v=Y3YrbEGWE04 ? K&T CNC promo film.
02:24 PM roycroft: you almost looked like a spammer there, andypugh_ :)
02:24 PM roycroft: i had to do a double look to be sure it was really you
02:25 PM andypugh_: I accidentally closed the wrong chat.
02:25 PM andypugh_: It’s a fun video, though the voiceover sounds _exactly_ like the Retroturboencabulator spoofs
02:28 PM andypugh_: (For example: https://youtu.be/Ac7G7xOG2Ag?si=ft4HKmmy8VS-ytDM )
02:48 PM Unterhausen: why do most linux distributions fail to display on some computers after install?
02:48 PM Unterhausen: if msft can figure out they need a generic driver, I figure linux can
02:48 PM roycroft: i don't know - i've never experienced that
02:49 PM Unterhausen: I have set up a lot of strange hardware with linux, maybe that's the difference
02:50 PM roycroft: i tend to buy mainstream lease return servers on ebay and random laptops on craigslist, and i haven't had any problems like that
02:50 PM roycroft: but probably 1% of my linux installs are with a gui console
02:50 PM roycroft: most of my linux installs are headless
02:50 PM Unterhausen: it's common the gui install works and then there is no display on first boot
02:51 PM roycroft: i do have a nice acer laptop that's running linux mint with a touch screen gui
02:52 PM travis_farmer: why is the forum sooo sloooooow? just curious....
02:53 PM Unterhausen: it's moving at relativistic speeds, just seems slow from your point of reference
02:53 PM travis_farmer: so it isn't slow to respond for you?
02:54 PM Unterhausen: I didn't say that, I'm not moving at relativistic speeds either
02:55 PM Unterhausen: it didn't load at all for me the first time, and then I refreshed and it loaded
02:56 PM Unterhausen: it's weirdly inconsistent
02:57 PM roycroft: the internet is a series of tubes
02:57 PM roycroft: perhaps the tube to the forum is full of swarf
03:00 PM * roycroft suspects the internet may be due for an oil change and a lube job
03:40 PM travis_farmer: Hmmm, i don't know if the forum ate my post in HAL, about the MAX31855, or if it got moderated out... twas a bit of a lengthy post, but it is among the missing when i went back to check on it :-(
03:41 PM travis_farmer: ... here i go, typing it out yet again... maybe a bit shorter this time...
03:45 PM * JT-Shop goes to try and figure out why the 67 year old tractor is missing and popping
03:46 PM XXCoder: my wild guess: dead sparkplug (if gas one)
03:50 PM JT-Shop: yup gas Continental engine
03:51 PM JT-Shop: rotor and points look ok just tad dirty so cleaned with a file...
03:51 PM JT-Shop: now to find a 7/8 sparkplug socket
03:59 PM XXCoder: heres a tip for searching. look for something else and you will find the socket
04:01 PM roycroft: better yet
04:01 PM roycroft: go buy a new socket
04:01 PM roycroft: keep the receipt
04:01 PM roycroft: as soon as you get back to the shop you'll find the old one
04:02 PM roycroft: and if you throw away the receipt you'll find the old one on your way home
04:02 PM XXCoder: costs more though
04:02 PM roycroft: yes
04:02 PM roycroft: best to keep the receipt, even though it takes a few more minutes to find it
04:06 PM Unterhausen: travis, I thought I saw your thread on the forum.
04:07 PM travis_farmer: the MAX31855 one?
04:08 PM travis_farmer: i mean, i JUST posted again, i hope i didn't double post...
04:09 PM Unterhausen: I just answered, just so you know it's not a figment of your imagination
04:10 PM Unterhausen: I didn't really intend to be helpful beyond that :)
04:10 PM Unterhausen: I'm a new member? Insulting
04:11 PM travis_farmer: that is the one i JUST posted
04:12 PM Unterhausen: I didn't go looking for the other one that may not exist
04:13 PM travis_farmer: i did a forum search and it turned up nothing
04:16 PM Unterhausen: seems like it doesn't exist. Maybe it never posted due to the forum traveling at relativistic speeds?
04:17 PM travis_farmer: maybe
04:17 PM Unterhausen: someday, it will post unexpectedly
04:17 PM travis_farmer: yeah, i bet it will :-) lol
04:18 PM roycroft: i discovered something recently that may be common knowledge but not to me
04:18 PM roycroft: there is a utc+13 and a utc+14 timezone
04:18 PM roycroft: which shift the international date line
04:18 PM XXCoder: isnt those 30 minute ones too?
04:19 PM roycroft: no
04:19 PM roycroft: so if you were in utc -10, but you want to be a day ahead, you change to utc +14
04:19 PM XXCoder: fun. I guess it would be a country or two
04:20 PM roycroft: it's for countries that want their time zone to be aligned with solar time, roughly, but who have ties with their neighbors to the west more than to their neighbors to the east
04:21 PM roycroft: kiribati is the main country in utc+14
04:21 PM roycroft: that country is almost due south of hawaii, which is utc -10
04:22 PM roycroft: there was a timezone in alaska before 1857 (when the us purchased it from russia) that was in utc +15:10
04:22 PM solarwind: My stereo microscope's internal zoom gears are made of plastic, and they came with a ridiculously sticky, adhesive-like grease
04:22 PM solarwind: I love it
04:22 PM roycroft: so alaska lost an entire day when it became property of the us
04:23 PM solarwind: It's almost like the adhesive residue from packing tape
04:23 PM roycroft: and shifted to utc -9:01 to utc -11:36, depending on where one was in alaska
04:23 PM solarwind: like as the gears turn, you can hear the "strands" of grease snapping back and making a crackling noise
04:23 PM XXCoder: fun lol yeah theres a lot of weird stuff in timekeeping
04:23 PM solarwind: can anyone identify this grease?
04:24 PM XXCoder: I know theres greases specifically for usage in plastic gearings but otherwise dunno
04:24 PM solarwind: the best way I can describe it is "sticky, adhesive grease". It's translucent
04:26 PM solarwind: it's tacky in the same way liquid elmers school glue gets when it's starting to cure
04:27 PM solarwind: a good analogy: https://t4.ftcdn.net/jpg/03/58/12/03/360_F_358120353_MHcpiDjubtn0YasAIcSEpLO3LbtHaDIm.jpg
04:28 PM solarwind: it _really_ holds its place
04:28 PM roycroft: i've seen that stuff before
04:28 PM roycroft: it's like way oil, but for plastics
04:29 PM XXCoder: on sorta related note, seems visline make for amazing 3d printed gear lubicant. since it will get into plastic so it will last forever
04:30 PM solarwind: I don't need it to be made specifically for plastic, I just like how adhesive it is whereas regular NLGI #2 tends to leave a very thin film on gears after running, this grease stays on thick. Like after meshing, it springs back onto itself
04:31 PM CaptHindsight: Grease
04:31 PM solarwind: You can be pretty confident there was zero plastic-plastic contact
04:32 PM CaptHindsight: https://www.machinedesign.com/materials/article/21831576/lubricating-plastic-gears-and-bearings
04:32 PM JT-Shop: found a tune up kit in my stock
04:33 PM solarwind: CaptHindsight yeah very high viscosity, almost certainly silicone-based
04:33 PM roycroft: so the other interesting time information that i learned is that it's not true that states require an act of congress to change time
04:33 PM solarwind: As sticky as it is, it isn't difficult to wipe off your hands if you get it on there
04:34 PM roycroft: it requires an act of congress to change the time zone name they use
04:34 PM travis_farmer: probably just silicon grease
04:34 PM roycroft: but they can change their timekeeping without
04:34 PM Tom_L: JT-Shop, careful not to tune it up too good, you might get throwed off :)
04:34 PM roycroft: alaska did that in 1983
04:34 PM roycroft: it went from four times to two times
04:34 PM roycroft: but had to wait for congress to approve the use of the time zone names
04:34 PM solarwind: travis_farmer possibly. I've never used silicone grease before, so I wouldn't know it if I come across it. I'll buy some and try it out
04:35 PM roycroft: if you want to learn about high performance non-silicone greases check out some horology resources
04:36 PM roycroft: folks who make/repair clocks and watches are very particular about their lubricants
04:36 PM roycroft: and use some very innovative ones
04:36 PM Tom_L: or ask cradek
04:37 PM CaptHindsight: horology sounds a store at the mall
04:37 PM JT-Shop: might as well put the whole tune up kit in and set the points while I'm putzing with it
04:37 PM solarwind: travis_farmer https://www.youtube.com/watch?v=uKXaW1Mhj8I nope, it's nothing like that silicone grease. It's _waaayyyyyy_ stickier, like my picture of glue
04:38 PM Tom_L: clean the cob webs out of the distributor cap
04:40 PM travis_farmer: Hmmm...
04:40 PM travis_farmer: maybe silicon caulking ;-)
04:40 PM CloudEvil: Silicone.
04:41 PM travis_farmer: sorry, spelling is not my best feature
04:42 PM solarwind: CloudEvil siloxane :P
04:44 PM solarwind: On another note, anything above NLGI 2 is so hard to find