synchronized public void settingsUpdated(GeneralSettingsInternal settings) {
        if (!m_language.equals(settings.getInternalLanguage())) {
            m_routeIfc.removeSyncNavInfoListener(this);
            if (stop()) {
                if(LOG.isInfo()) {
                    LOG.info("NavigationSoundModule.settingsUpdated()", "new language detected reload the sounds syntax...");
                }
            }
            m_units = settings.getMeasurementSystem();
            m_language = settings.getInternalLanguage();
            m_routeIfc.addSyncNavInfoListener(this);
        } else if (m_units != settings.getMeasurementSystem()) {
            m_units = settings.getMeasurementSystem();
            //don't need to reload the syntax
            if (stop()) {
                if(LOG.isInfo()) {
                    LOG.info("NavigationSoundModule.settingsUpdated()", "new units detected restart the navigation handler...");
                }
                start(m_syntaxTree);
            }
        }
    }