A method of operating a volatile material dispenser comprising: a heater; a first switch that by moving or actuating allows a user to select a first emission parameter of said dispenser which is the period of an operational cycle; a second switch that by moving or actuating allows a user to change a further emission parameters of the said dispenser cycle; a programmed control circuit which comprises; a memory and a timer, wherein said programmed control circuit repetitively executes the programming of an algorithm for controlling the operation of said dispenser on a continuous basis when the dispenser is on, said method comprising the subsequent steps of: (a) selecting a control algorithm for a first operation cycle, (b) operating said heater by providing electrical waveforms thereto based upon said selected control algorithm for a first operation cycle, (c) checking to determine whether a user of said dispenser has provided one or more input commands to change emission parameters of said dispenser by moving or actuating said first switch or a second switch, (d) checking said first switch and the second switch to determine the input command(s) provided by the user, (e) implementing said input command(s) by changing the emission parameters so that said dispenser immediately switches to a different emission control process in accordance with the input command(s); (f) storing time information developed by said timer and the emission parameter changes in said memory; (g) modifying said control algorithm in accordance with said input command(s) of step (c) and stored time information of step (f) to develop and save a last saved control algorithm; (h) selecting the last-saved control algorithm and (i) operating said heater in accordance with the last saved control algorithm for a second operational cycle. a heater; a first switch that by moving or actuating allows a user to select a first emission parameter of said dispenser which is the period of an operational cycle; a second switch that by moving or actuating allows a user to change a further emission parameters of the said dispenser cycle; a programmed control circuit which comprises; a memory and a timer, wherein said programmed control circuit repetitively executes the programming of an algorithm for controlling the operation of said dispenser on a continuous basis when the dispenser is on, said method comprising the subsequent steps of: (a) selecting a control algorithm for a first operation cycle, (b) operating said heater by providing electrical waveforms thereto based upon said selected control algorithm for a first operation cycle, (c) checking to determine whether a user of said dispenser has provided one or more input commands to change emission parameters of said dispenser by moving or actuating said first switch or a second switch, (d) checking said first switch and the second switch to determine the input command(s) provided by the user, (e) implementing said input command(s) by changing the emission parameters so that said dispenser immediately switches to a different emission control process in accordance with the input command(s); (f) storing time information developed by said timer and the emission parameter changes in said memory; (g) modifying said control algorithm in accordance with said input command(s) of step (c) and stored time information of step (f) to develop and save a last saved control algorithm; (h) selecting the last-saved control algorithm and (i) operating said heater in accordance with the last saved control algorithm for a second operational cycle. (a) selecting a control algorithm for a first operation cycle, (b) operating said heater by providing electrical waveforms thereto based upon said selected control algorithm for a first operation cycle, (c) checking to determine whether a user of said dispenser has provided one or more input commands to change emission parameters of said dispenser by moving or actuating said first switch or a second switch, (d) checking said first switch and the second switch to determine the input command(s) provided by the user, (e) implementing said input command(s) by changing the emission parameters so that said dispenser immediately switches to a different emission control process in accordance with the input command(s); (f) storing time information developed by said timer and the emission parameter changes in said memory; (g) modifying said control algorithm in accordance with said input command(s) of step (c) and stored time information of step (f) to develop and save a last saved control algorithm; (h) selecting the last-saved control algorithm and (i) operating said heater in accordance with the last saved control algorithm for a second operational cycle.