FU Logo
  • Startseite
  • Kontakt
  • Impressum
  • Home
  • Listenauswahl
  • Anleitungen

Re: [linux-minidisc] implementing unix himd autodetection function

<-- thread -->
<-- date -->
  • From: Thomas Arp <manner.moe@gmx.de>
  • To: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  • Date: Wed, 26 Dec 2012 20:46:13 +0100
  • Cc: linux-minidisc@lists.fu-berlin.de
  • Subject: Re: [linux-minidisc] implementing unix himd autodetection function

Am 23.12.2012 23:40, schrieb John Paul Adrian Glaubitz:
On Sun, Dec 23, 2012 at 09:20:44PM +0100, Thomas Arp wrote:
I took a look at udev-discoverer gui application to see which
information we can get from udev. Is there any way to get the
mountpoint? I cannot find anything about that.
I don't think you can. The basic idea of udev is to trigger on
hardware events and changes and then set up devices files or call
external programs according to the rules files.
O.K., i know you want to discuss autodetection function first but i'm just playing arround a bit ;)
That's what i changed yet:
- created a dbus connection and service with methods "AddMDDevice" and "RemoveMDDevice" listening to the session bus - getting mountpoint via system bus, also add function to mount the device via system bus if it is not mounted

As qdbus is a part of Qt and qhimdtransfer depends on Qt, qdbus should be present on all machines where qhimdtransfer is installed.
So we can use it to send messages to the session bus.

TODO: create udev rule to use qdbus to send a message with following syntax:
RUN+="qdbus com.trolltech.Qt /QHiMDUnixDetection AddMDDevice <device file> <vid> <pid>"
(and RemoveMDDevice for ACTION=="remove")

where <device file> is the corresponding kernel driver sdX (without path, just driver name!!)
<vid> and <pid> are vendor/product id as integers,
i think they have to be converted to decimal instead of hexadecimal, sending a message with 0x054c as vid doesn't work.

I tested this by sending these messages with qdbus manually in a terminal and it works fine this way. I have to read a bit more about creating udev rules. I didn't create a working rule yet, i don't know how to set the arguments to the dbus command line correctly. But maybe it is better to use an extra script instead of sending the message in the rule itself.

You can find it in netmd_integration2 branch at my github accout [1].
If this doesn't compile because of linker errors please recreate moc_qhimdunixdetection.cpp manually (type "moc qhimdunixdetection.cpp > moc_qhimdunixdetection.cpp" in qhimdtransfer directory).

Thomas

[1] http://github.com/tharp/linux-minidisc



<-- thread -->
<-- date -->
  • Follow-Ups:
    • Re: [linux-minidisc] implementing unix himd autodetection function
      • From: Thomas Arp <manner.moe@gmx.de>
  • References:
    • [linux-minidisc] implementing netmd support in the gui application
      • From: "Thomas Arp" <manner.moe@gmx.de>
    • Re: [linux-minidisc] implementing netmd support in the gui application
      • From: Thomas Arp <manner.moe@gmx.de>
    • [linux-minidisc] implementing unix himd autodetection function
      • From: Thomas Arp <manner.moe@gmx.de>
    • Re: [linux-minidisc] implementing unix himd autodetection function
      • From: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
    • Re: [linux-minidisc] implementing unix himd autodetection function
      • From: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
    • Re: [linux-minidisc] implementing unix himd autodetection function
      • From: Thomas Arp <manner.moe@gmx.de>
    • Re: [linux-minidisc] implementing unix himd autodetection function
      • From: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
  • linux-minidisc - December 2012 - Archives indexes sorted by:
    [ thread ] [ subject ] [ author ] [ date ]
  • Complete archive of the linux-minidisc mailing list
  • More info on this list...

Hilfe

  • FAQ
  • Dienstbeschreibung
  • ZEDAT Beratung
  • postmaster@lists.fu-berlin.de

Service-Navigation

  • Startseite
  • Listenauswahl

Einrichtung Mailingliste

  • ZEDAT-Portal
  • Mailinglisten Portal