}
}
+void noct_clear(void)
+{
+ for (int i=0; i<=8; i++)
+ noct_set_ring(i, RING_MODE_LEFT, 0);
+ for (int i=0; i<16; i++)
+ noct_set_button(i, 0);
+}
+
static void noct_write_init(void)
{
DBG("Noct: Write init");
if ((err = libusb_open(found_dev, &usb_dev)) < 0)
return noct_error(err, "libusb_open failed");
+ // In newer kernels, Nocturn is claimed by snd-usb-audio. Tell it to surrender the device.
+ libusb_detach_kernel_driver(usb_dev, 0);
+
// There exist configurations 1 (high brightness) and 2 (power-save)
if ((err = libusb_set_configuration(usb_dev, 2)) < 0)
return noct_error(err, "libusb_set_configuration failed");
// Initialize libusb
if ((err = libusb_init(&usb_ctx)) < 0)
die("libusb_init failed: error %d", err);
- libusb_set_debug(usb_ctx, 3);
// Connect libusb to UCW mainloop