Not that this fixes your specific problem, but I have run into a few different settings which have this sort of "inverted" logic.To keep things simple in the rest of the code, I just name the setting appropriately so that the logic in the rest of the program need not be inverted, e.g., name your setting foo_disable if value of True/1 disables foo, and foo_enable if True/1 enables foo.I think it makes it easier to read."beep_tone" is a boolean?If I'm reading that "beep_tone_disabled" seems like it would be a much more meaningful name for the setting field.