#linuxcnc-devel | Logs for 2014-06-28

[08:56:08] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis ce9e624 06linuxcnc 10src/Makefile 03src/rtapi/rtapi_io.h rtapi: provide rtapi_io.h * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=ce9e624
[08:56:09] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis f7451da 06linuxcnc 10src/rtapi/rtapi.h rtapi: provide (non-functional) request/release region for uspace * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=f7451da
[08:56:09] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis 0859334 06linuxcnc 10src/rtapi/rtapi.h rtapi: import EXPORT_SYMBOL_GPL for uspace * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=0859334
[08:56:10] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis 46b2b96 06linuxcnc 10src/hal/drivers/serport.comp serport: use <rtapi_io.h> * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=46b2b96
[08:56:14] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis 774342d 06linuxcnc 10src/hal/components/Submakefile serport: build for uspace * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=774342d
[08:56:18] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis cc8c477 06linuxcnc 10(8 files in 2 dirs) rtapi: provide additional portability headers * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=cc8c477
[08:56:22] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis 7f0620f 06linuxcnc 10src/rtapi/uspace_common.h rtapi-uspace: implement rtapi_delay * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=7f0620f
[08:56:26] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis 14a823b 06linuxcnc 10(27 files in 2 dirs) hostmot2: build hostmot2 and hm2_test for uspace * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=14a823b
[08:56:30] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis 23c9830 06linuxcnc 03tests/hm2-idrom/.gitignore 10tests/hm2-idrom/check-dmesg 04tests/hm2-idrom/skip 10tests/hm2-idrom/test.sh hm2-idrom: Let test succeed in uspace * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=23c9830
[08:56:34] <KGB-linuxcnc> 03Jeff Epler 05jepler/rtos-uspace-apis fc425c9 06linuxcnc 10(8 files) rtapi: document new headers * 14http://git.linuxcnc.org/?p=linuxcnc.git;a=commitdiff;h=fc425c9
[09:15:07] <jepler> > [Agile] also slang for quick iterative development - or what we once knew as "hacking." Bash out a wild and wooly app over the weekend while soaked in gin and Red Bull, and then attempt to debug it during the three day hangover. Spend two days trying to figure out if it does what you need it to do, and then re-implement in a more interesting language next weekend with Goldschlager and Mountain Dew. Agile!
[09:57:30] <seb_kuzminsky> heh
[11:13:46] <jepler> whee, the buildbot seemed to like that code
[11:14:18] <jepler> now "all" that's left is userspace pci
[11:14:32] <jepler> .. but not today, I'm installing debian 7 desktops for Ingrid's organization
[11:23:02] <cradek> aren't you done with that yet? it's 11:00.
[11:34:50] <jepler> heh
[11:34:55] <jepler> I didn't get started until ten
[11:35:15] <jepler> Retrieving file 644 of 1027 (12m 56s remaining)
[11:35:20] <jepler> .. progress bar is a lie
[11:42:52] <cradek> jepler: it's exciting that you twiddled a hardware bit
[11:44:30] <jepler> we have to take pleasure where we find it.
[11:50:02] <jepler> Preparing to configure time
[12:29:00] <cradek> I booted my debian live image on the oldest machine I could find, a P3-733 with 256MB of ram (!) and it boots fine into xfce, is responsive, and can run the latency test and glxgears live without swap ... somehow
[12:29:29] <cradek> I had to use one of those boot-from-usb-without-bios-support CD isos
[12:32:55] <jepler> impressive
[12:33:18] <jepler> does dmesg show it need lapic?
[12:36:04] <Tom_itx> i should send you a PC-104 to test it on
[12:36:28] <Tom_itx> probably wouldn't work that well
[12:36:58] <Tom_itx> http://tom-itx.no-ip.biz:81/~webpage/SBC/PDF/
[12:37:07] <Tom_itx> got 5-6 of those
[12:37:48] <Tom_itx> http://tom-itx.no-ip.biz:81/~webpage/SBC/inside_control.jpg
[12:37:53] <jepler> yay, second install is downloading packages at local network speed
[12:37:58] <Tom_itx> pulled from vehicle GPS tracking systems
[12:38:04] <jepler> Tom_itx: neat
[12:38:56] <Tom_itx> http://tom-itx.no-ip.biz:81/~webpage/SBC/server/DSC_0008.JPG
[12:39:05] <Tom_itx> i ran that as a server for a little while
[12:39:29] <cradek> Jun 28 17:16:30 localhost kernel: [ 0.000000] SMP: Allowing 1 CPUs, 0 hotplug CPUs
[12:39:32] <cradek> Jun 28 17:16:30 localhost kernel: [ 0.000000] Local APIC disabled by BIOS -- reenabling.
[12:39:35] <cradek> Jun 28 17:16:30 localhost kernel: [ 0.000000] Found and enabled local APIC!
[12:39:38] <cradek> YES
[12:39:48] <cradek> then ...
[12:39:50] <cradek> Jun 28 17:20:58 localhost kernel: [ 370.294544] RTAI_APIC_TIMER_IPI: RTAI DEFINED 2314, VECTOR 2314; LINUX_APIC_TIMER_IPI: RTAI DEFINED 2312, VECTOR 2312
[12:39:53] <cradek> Jun 28 17:20:58 localhost kernel: [ 370.294560] TIMER NAME: lapic; VARIOUSLY FOUND APIC FREQs: 8352227, 8352227, 8195000
[12:40:09] <jepler> cradek: yay
[12:40:13] <cradek> yeah, that's awesome
[12:41:40] <jepler> it'll be the best live installer yet
[12:41:47] <jepler> does lapic kernel flag survive installation?
[12:41:55] <cradek> not tested yet, but it should
[12:42:07] <cradek> I may try installing it on this hardware
[12:42:19] <cradek> trying to figure out what's on it before I nuke it...
[12:42:49] <jepler> cradek: Ingrid and I are going to eat at GB at 1. care to join us?
[12:44:48] <cradek> cool, I'll try to be there, but don't wait for me
[12:47:01] <jepler> OK
[12:53:14] <cradek> yep, we'll go, yay
[12:55:29] <jepler> cradek: I could even swing by and pick you up if you want
[13:01:49] <cradek> jepler: that's ok, we'll meet you
[13:03:55] <jepler> cradek: OK
[13:42:01] <skunkworks> logger[psha]:
[13:42:01] <logger[psha]> skunkworks: Log stored at http://psha.org.ru/irc/%23linuxcnc-devel/2014-06-28.html
[13:59:36] <CaptHindsight> http://www.ebay.com/itm/170988778068 only $9.46 and EPP works Parallel Port DB25 LPT Printer to PCI-E / NOT PCI
[14:00:33] <CaptHindsight> works well with http://www.ebay.com/itm/231175428172 PCI Express (PCI-E) 1X Slot Riser Card
[14:01:22] <CaptHindsight> so you don't have to cable out of the enclosure when PC and motor drivers are in the same enclosure
[14:12:46] <CaptHindsight> http://www.automationtechnologiesinc.com/products-page/breakout-boards/kl-db25-breakout-board beware it comes with a FEMALE DB25 vs male, so you have to use a Male to Male adapter or cable :(
[14:22:43] <cradek> installing with no network connection works, but is a little ungraceful.
[14:23:20] <cradek> I wish it would just set up the apt sources, as if there may be a connection later
[14:27:36] <cradek> this machine could not run the graphical installer, but the text mode installer worked fine (both are available at the boot menu)
[14:30:04] <cradek> ... nope, forced lapic did not survive the install
[14:31:58] <cradek> this is a good test machine
[14:42:48] <seb_kuzminsky> i just build 3.4.87-rtai-{486,686-pae} for precise
[14:43:30] <cradek> 87 >> 9
[14:46:26] <cradek> what let you move up in versions so much?
[15:29:46] <seb_kuzminsky> the 87 and the 9 are totally different things
[15:30:00] <seb_kuzminsky> i was imprecise above
[15:30:17] <seb_kuzminsky> i built 3.4-9-rtai-{486,686-pae} for precise
[15:30:26] <seb_kuzminsky> the "-9" means "abi version 9"
[15:30:43] <seb_kuzminsky> and 87 of course is the regular patch level of the kernel
[15:41:34] <cradek> oh cool, so it's the same one
[15:45:08] <seb_kuzminsky> the same kernel for wheezy & precise, yes
[15:45:12] <seb_kuzminsky> :-)
[15:45:29] <seb_kuzminsky> i had to switch precise from module-init-tools to kmod (i just grabbed the dsc from wheezy)
[15:46:07] <seb_kuzminsky> ubuntu switched to kmod shortly after precise anyway... i haven't tried to boot it or build linuxcnc on it yet, maybe tonight
[15:46:26] <seb_kuzminsky> today i need to take a break from kernel compiling and work on the car some
[15:46:29] <seb_kuzminsky> bbl!
[17:55:48] <jepler> hah, I must have set this other machine up before last year's wichita meeting because I thought I'd be developing for the -rt kernel
[17:56:57] <jepler> unfortunately, on both machines my 5i20 is reported without the right subvendor/subdevice (0:0 instead), so it won't run
[17:57:09] <cradek> weird. is it bad?
[17:57:18] <jepler> I don't know.
[17:57:33] <jepler> I know I used this card to control zenbot in the past, but it's been years
[17:57:49] <cradek> will rtai hm2 load?
[17:58:04] <cradek> it can't work with wrong IDs, can it?
[17:58:08] <jepler> unlikely
[17:58:32] <cradek> wish I had a spare for you, but all three of mine are in machines
[17:58:36] <jepler> the vendor/device pair is right (it indicates the plx vendor and the 9030 PLX chip), but the subvendor/subdevice are both 0
[17:58:45] <jepler> subvendor should also be plx, and subdevice should be a value indicating 5i20
[18:04:05] <jepler> I think the card has become damaged. I'm very confident it worked on this older (10.04-based) install where I have configs/zenbot
[18:04:08] <jepler> but it doesn't
[18:04:11] <jepler> card still not detected
[18:04:54] <jepler> .. so it's not that linuxcnc changed in the meantime
[18:05:10] <jepler> also: milestone: hm2_pci running in userspace correctly detects that PCI card is afu :-/
[18:12:18] <jepler> specifically, it enumerates PCI devices, finds matching vendor:device pair, and then finds non-matching subvendor:subdevice pair
[18:27:51] <jepler> having run the "5i20eed.bat" to reprogram the eeprom, it gets further.
[18:57:47] <jepler> hm2_pci: loading Mesa AnyIO HostMot2 driver version 0.7
[18:57:47] <jepler> hm2_pci: discovered 5i20 at 0000:04:00.0
[18:57:47] <jepler> hm2/hm2_5i20.0: error with device_register
[19:07:45] <jepler> hm2/hm2_5i20.0: registered
[19:07:45] <jepler> hm2_5i20.0: initialized AnyIO board at 0000:04:00.0
[19:07:50] <jepler> yay I am excite
[19:10:54] <jepler> halcmd: start
[19:10:55] <jepler> halcmd: hm2/hm2_5i20.0: Watchdog has bit! (set the .has-bit pin to False to resume)
[19:11:06] <jepler> hmm I think this is expected when you manually start it after a long delay
[19:19:49] <jepler> beautiful 20kHz pwm
[19:20:03] <jepler> from hostmot2 pwmgen running with userspace rtapi
[19:58:22] * SadMan is gone. Gone since Mon Jul 23 15:37:00 2012
[20:14:44] <jepler> wow, gone for nearly two years
[20:14:48] <jepler> an achievement
[20:31:19] <cradek_> jepler: yay! pci!
[20:32:41] <jepler> cradek_: this project went really fast
[20:35:12] <jepler> fwiw I think the smart parport cards should be doable too. there's a "uparport" driver that talks to real (SPP) parports in userspace, builds to hal_parport under sim / uspace
[20:35:34] <jepler> somebody just needs to do similar work to the rtapi_pci work, define the API that rtapi will support and implement it for kernel and userspace
[20:36:30] <jepler> .. because two full implementations of a dumb parport driver is unfortunate; it'd be even sadder if we had our smart parport drivers as twins to
[20:36:33] <jepler> o
[20:37:53] <jepler> it looks like there's a version of this in ubc3, but as with other drivers they did it in a way that required #ifdef soup
[20:38:18] <jepler> #if defined(USE_PORTABLE_PARPORT_IO)
[20:38:19] <jepler> indata = hal_parport_read_data(&port->portdata);
[20:38:20] <jepler> #else
[20:38:20] <jepler> indata = inb(port->base_addr);
[20:38:20] <jepler> #endif
[20:39:01] <jepler> .. it makes my teeth itch
[20:54:10] <mozmck> jepler: what do you prefer to "#ifdef soup"?
[20:55:21] <jepler> mozmck: provide a single function (or function-like macro) that can be used in both situations
[20:55:59] <jepler> in this case, you can see that for the two underlying functions, both need something inside of 'port', so it would be a function which takes &port as its argument
[20:56:10] <mozmck> would this function have the #ifdef stuff in it? or maybe use function pointers to make it more "object oriented"?
[20:57:05] <jepler> that function would involve a #define at its definition or declaration site, but not at each use site
[20:57:15] <mozmck> yes, I see.
[20:57:45] <mozmck> abstraction
[20:57:50] <jepler> yes
[20:58:08] <mozmck> good stuff if not overdone
[20:58:59] <mozmck> glad you got this working so quickly btw!
[20:59:23] <jepler> in almost all the cases that I've tackled in rtos-uspace-apis, the kernel version is a simple #define that redirects to the original linux kernel API
[20:59:53] <jepler> so in kernel space, it's likely I've added no runtime overhead for this abstraction
[21:03:09] <jepler> Hmm, $32 for ebay used memory or $40 for amazon new memory?
[21:05:22] <jepler> .. new memory.
[21:05:46] <jepler> how sad that 4GB is starting to feel too small for a laptop
[21:07:07] <mozmck> is that with Debian?
[21:07:30] <jepler> mozmck: yes, but it's mostly driven by some memory-hungry Steam games. debian itself is just dandy.
[21:07:49] <jepler> but run a steam game, a 1.5GB virtual machine, and a firefox and 4GB doesn't cut it
[21:08:01] <mozmck> ah, I never game, but java stuff takes a lot.
[21:09:37] <mozmck> I run virtualbox with winxp with 1gb mem, eclipse, and firefox on my laptop with 4GB and it does start to slow down a little.
[21:09:56] <mozmck> Cinnamon takes up some, but it's better than it was.
[21:30:26] <jepler> I favor the xfce desktop these days, but mostly because it does just about the least stuff.
[23:35:43] <skunkworks> logger[psha]:
[23:35:43] <logger[psha]> skunkworks: Log stored at http://psha.org.ru/irc/%23linuxcnc-devel/2014-06-29.html