Hi, The initial implementation of jack detection is using threads and simple file operations like open, close and read currently I'm looking into using pa_threads and glib functions. First step It is simple enough e.g change threads by pa_threads and for file operations I have u->fd = g_open(u->device_id, O_RDONLY) ioch = g_io_channel_unix_new(u->fd); then use g_io_channel_read_chars() instead of read. I'm wonder if it is the beast approach or I'm missing any PA function that fits better for this purpose. Any comments are appreciated. Thanks, Margarita