Activity for KShots

  • KShots KShots posted a comment on ticket #2

    Actually, I was wrong - it shouldn't return "0" on success, it should return a positive number representing the file descriptor assigned. In your case, it successfully opened dacal.so and gave it a file descriptor of 3, then read it, and closed it (all successfully)... so yes, it definately successfully loaded the plugin. As far as uninstalling and starting over, that's usually up to the package manager. If you didn't use a package manager, you can see where cmake installs each file by setting up...

  • KShots KShots posted a comment on ticket #2

    No, if you never had a previous version installed, that shouldn't be a possibility :(

  • KShots KShots posted a comment on ticket #2

    Ok, so we'll say that's not a possibility. Let's make 100% sure it's loading the plugin. Use 'strace' to run the daemon. It will put out a TONNE of data, be warned. Look for any lines involving 'dacal.so', and more specifically, make sure that one such line returns "0" (success). ... if it's truly loading the plugin and not finding the organizer, I'm not sure what else to do at this point. If you know any C, I'd recommend running the dacal.c constructor code through a debugger (set a breakpoint in...

  • KShots KShots posted a comment on ticket #2

    Neal, The daemon searches the plugin directory and tries to load each file there. I've been puzzled why it puts out those "file not found" messages, but libtool appears to try both with and without a '.so' extension (and fails without the extension, but succeeds with it). From the output, it is successfully loading the KDS plugin (despite the message) because the notification about the KDS plugin capabilities is from the KDS plugin. So... if it's loading the plugin successfully, it will poll the...

  • KShots KShots modified a comment on ticket #2

    Only other thing I can think of is if it's not loading the dacal plugin. It looks for the vendor ID 04B4 and product ID 5A9B to find the organizer, and if the plugin finds it the daemon outputs the string "Found a device for the dacal plugin at (some address)". Can you find where your plugin was installed (should be 'dacal.so') and tell the daemon where to find it via the '-P' option? If you don't have a DC-016RW, the svn version shouldn't make much of a difference... it has a bit more tolerance...

  • KShots KShots posted a comment on ticket #2

    Only other thing I can think of is if it's not loading the dacal plugin. It looks for the vendor ID 04B4 and product ID 5A9B to find the organizer, and if the plugin finds it the daemon outputs the string "Found a device for the dacal plugin at (some address)". Can you find where your plugin was installed (should be 'dacal.so') and tell the daemon where to find it via the '-P' option?

  • KShots KShots modified a comment on ticket #2

    Also, just to confirm, you're using the latest released version, right? From your lsusb output, it showed you might have a Dacal 016RW, which wasn't supported until recently. I'd even go so far as to say that after some recent back-and-forth with another recent user, that I'd recommend using the latest version from the svn for the DC-016RW. Can you try the svn version?

  • KShots KShots posted a comment on ticket #2

    Also, just to confirm, you're using the latest released version, right? From your lsusb output, it showed you had a Dacal 016RW, which wasn't supported until recently. I'd even go so far as to say that after some recent back-and-forth with another recent user, that I'd recommend using the latest version from the svn for the DC-016RW. Can you try the svn version?

  • KShots KShots posted a comment on ticket #2

    Ok, the traffic on the daemon looks appropriate... did the client not return anything useful?

  • KShots KShots posted a comment on ticket #2

    Looks like it's aborting because something else is already bound to the socket. Check to see if it's already running, and if not, delete the socket (it's stale) and try again. If it is running, kill it and run it again in the foreground

  • KShots KShots posted a comment on ticket #2

    Neal, Pass the daemon a '-f' parameter to run in the foreground, so you do the following: sudo cdorganizerd -f You can also run it with '-h' to show what other knobs you can tweak.

  • KShots KShots posted a comment on ticket #2

    Neal, Let's dig into this a bit... To confirm, you are running the daemon, right? I assume so because you did at one point find that the socket was created. If running into problems, recommend running the daemon in the foreground to observe any output. Make sure you are running the daemon with a user that has read/write access to the device. The lcdoctl utility can be run by any user (non-root). Let's start with that...

  • KShots KShots posted a comment on ticket #2

    Neal, Sounds like you're almost there. You can start the daemon (cdorganizerd) with the '-h' or '--help' parameter to give you some idea of what parameters are available. Man pages are also installed - try "man cdorganizerd" and "man lcdoctl", although if you had to reconfigure ldconfig to get it running, the man pages may not have installed to the system. At a high level, the concept is that the daemon controls the organizer and runs in the background, and you can use lcdoctl to talk to the daemon...

  • KShots KShots committed [r164]

    * Fixed execution of insert disc code so it only executes DC016-specific code on insert on a DC016 device, rather than both DC016 and DC300 code

  • KShots KShots committed [r163]

    * Fixed issues with the dacal plugin returning messages to the daemon on the DC016RW for vendor command 4

  • KShots KShots committed [r162]

    * Fixed some boundary-checking cases for command execution

  • KShots KShots posted a comment on discussion Open Discussion

    Try:lcdoctl -d dacal:0001094E execredirect 4 /tmp/test.txtStill shouldn't segfault, though... I'll have to investigate that.On Apr 4, 2018 11:59, Jeremy Turner <fabltd@users.sourceforge.net> wrote:Ok this fails: lcdoctl -d dacal:0001094E execredirect 4 dacal:0001094E /tmp/test.txt Results in: Segmentation fault (core dumped) Support for the DC016RW Sent from sourceforge.net because you indicated interest in https://sourceforge.net/p/libcdorganizer/discussion/613438/ To unsubscribe from further messages,...

  • KShots KShots posted a comment on discussion Open Discussion

    I've done some refactoring that may have affected these... see what happens with revision 161.

  • KShots KShots committed [r161]

    * Fixed busy loop error in code that prevented all functions from working properly...

  • KShots KShots committed [r160]

    * Refactored the dacal plugin to call a function for its busy wait loops rather than pasting the same loops everywhere...

  • KShots KShots committed [r159]

    * Fixed pointer handling on vendor functions...

  • KShots KShots committed [r158]

    * Updated the interface to support bidirectional communication with plugins. I thought this was ironed out 10 years ago, but some refactoring was in order to handle error conditions in a sane manner

  • KShots KShots posted a comment on discussion Open Discussion

    Ok, I'll see what I can crank out. The vendor functions are implemented exclusively in the plugins. lcdoctl simply passes them through. There shouldn't be any changes necessary in lcdoctl to add more functions. On 2018-03-13 16:40, Jeremy Turner wrote: Hi Quick hack sounds great. My c experience is only limited. So any help will be great. You'll need to add any new commands to the exec function and the list function. Is this in lcdoctl as well as dacal.c ? Support for the DC016RW [1] Sent from sourceforge.net...

  • KShots KShots posted a comment on discussion Open Discussion

    The returned data is simply dropped by lcdoctl. If you want to monitor the returned data, you'll need to tie into the library functions directly. I'd considered some advanced tuning on lcdoctl that lets the user attempt to define the data returned for user-friendly parsing, but had not implemented it. Essentially, I'd need to write a parser for each type of data (char, string, short, long, binary blob (as hex? ), etc). Even then, depending on the data it may not handle it correctly - for example,...

  • KShots KShots posted a comment on discussion Open Discussion

    lcdoctl doesn't parse the data returned from vendor functions, as they could be pretty much anything (strings, ints, binary blobs, etc). For adding additional commands, you'll need to modify dacal.c (the plugin) to support additional functions. You'll need to add any new commands to the exec function and the list function. On 2018-03-13 14:57, Jeremy Turner wrote: Hi Thanks Can the error be displayed as is in lcdoctl ? I belive my unit may also use some commands that you have not sniffed. I would...

  • KShots KShots posted a comment on discussion Open Discussion

    Ok, now we're getting somewhere! I can see I screwed up the help - the vendor command should simply look at the '-d' argument, not requiring an additional device_id after the vendor command. At least, that's how it works programmatically. So the proper usage would be: lcdoctl -d dacal:0001094E vendor The control commands were reverse-engineered using a USB sniffer and the Windows control API to trigger and capture event traffic. As such, some commands are supported... if you know how to use it. The...

  • KShots KShots posted a comment on discussion Open Discussion

    Which model are you using? The Dacal DC-300, the DC016RW, or something else?

  • KShots KShots modified a comment on discussion Open Discussion

    Jeremy, Not sure... what build options did you pass to cmake? You can get a console-based configuration browser by running 'ccmake' on the source directory, which should let you tweak whatever values you need to make it work properly in your environment. The only dependencies for libcdorganizer are libusb-1.x and libtool. Your plugin loading issue is a bit strange... I can successfully load my plugins in my testing environment. It has me scratching my head that the daemon appears to know that the...

  • KShots KShots posted a comment on discussion Open Discussion

    Jeremy, Not sure... what build options did you pass to cmake? You can get a console-based configuration browser by running 'ccmake' on the source directory, which should let you tweak whatever values you need to make it work properly in your environment. The only dependencies for libcdorganizer are libusb-1.x and libtool. Your plugin loading issue is a bit strange... I can successfully load my plugins in my testing environment. It has me scratching my head that the daemon appears to know that the...

  • KShots KShots posted a comment on discussion Open Discussion

    Jeremy, I've updated the source and amd64 binary release for libcdorganizer after merging the 4.0.0 branch into the trunk... so try testing with that version. It looks like you were using the older 3.1.2 version from SVN. Working with your other questions, the lock file should have been under /var/run. Let me know what you experience when you use the newer version...

  • KShots KShots committed [r157]

    * Merged the 4.0.0 branch into the trunk

  • KShots KShots committed [r156]

    * Updated to include man pages for all components and public functions

  • KShots KShots posted a comment on discussion Open Discussion

    I realize this thread is very old, but if someone is experiencing this issue, can you tell me what you're running on the command line, what the response is, and what the physical device is doing? I'm no longer convinced this is a HID device detachment issue.

  • KShots KShots posted a comment on discussion Open Discussion

    Jeremy, yes and no. The svn version supports most functions of the DC016RW device. My last comment from nearly a decade ago was that there was a compatibility issue between the HID layer and the USB layer, in that libcdorganizer boots off the HID-layer controller so it can control it, and that causes the DVD device to not read properly. I think I was wrong with that assumption at this point. Looking back at the history of this thread, if what Knight wrote is correct (and he has been very accurate...

  • KShots KShots committed [r104]

    * Upgrading the laptop the existing code is sto...

  • KShots KShots committed [r103]

    * Coming back from a long break... inevitable c...

  • KShots KShots committed [r102]

    * Lots of work done in the rules section

  • KShots KShots committed [r101]

    * Tested all currently-defined client functiona...

  • KShots KShots committed [r100]

    * Lots and lots of refactoring...

  • KShots KShots committed [r99]

    * Fixed a nasty and difficult to trace crash ca...

  • KShots KShots committed [r98]

    * Added a 'core' library, which contains basic ...

  • KShots KShots committed [r97]

    * Spoke too soon, quite a few bugs in client/se...

  • KShots KShots committed [r96]

    * Fixed a crash on close caused by sockets atte...

  • KShots KShots committed [r95]

    * Client now communicates properly with server,...

  • KShots KShots committed [r94]

    * Client connections are functional again

  • KShots KShots committed [r93]

    * More progress on the client. Got rid of the M...

  • KShots KShots committed [r92]

    * Removed google's protocol buffers from code, ...

  • KShots KShots committed [r91]

    * Got tired of the dual dock widget approach, a...

  • KShots KShots committed [r90]

    * Moved from a simple TCP socket to an SSL sock...

  • KShots KShots committed [r89]

    * Tracked down and killed a chat bug - In the u...

  • KShots KShots committed [r88]

    * Fixed duplicate message issue - the server si...

  • KShots KShots committed [r87]

    * The client now works with functional dockwidg...

  • KShots KShots committed [r86]

    * Fixed one of the causes of double messages as...

  • KShots KShots committed [r85]

    * While only a few files were touched, signific...

  • KShots KShots committed [r84]

    * Wrestled with compiler optimizations to get t...

  • KShots KShots committed [r83]

    * Lots of refactoring of all messages

  • KShots KShots committed [r82]

    * Fixed an annoying memory bug that was trigger...

  • KShots KShots committed [r81]

    * Client/server/listserver communication has be...

  • KShots KShots committed [r80]

    * Moved the 6.0 branch to the trunk

  • KShots KShots committed [r79]

    * Made some minor changes that I could not relo...

  • KShots KShots created a wiki page

    Dependencies

  • KShots KShots modified a wiki page

    Home

  • KShots KShots created a wiki page

    Architecture

  • KShots KShots modified a wiki page

    Home

1