private void reloadTimer() {
        new Thread() {
            @Override
            public void run() {
                while (settings.refreshDevices()) {
                    try {
                        reload();
                        Thread.sleep(settings.getDeviceRefreshInterval());
                    } catch (InterruptedException | IOException ex) {
                        logger.log(level.ERROR, "Error occurred while reloading devices! Error stack trace will be printed to the console...");
                        ex.printStackTrace(System.err);
                        break;
                    }
                }
                interrupt();
            }
        }.start();
    }