Odor stimuli in the natural environment are intermittent and the concentration of any given odor fluctuates rapidly over time. Further, even in the simplest scenario, the olfactory sensors receive uncorrelated, intermittent inputs in the form of odor plumes arising from several odor sources in the local environment. However, typically used odor stimuli under laboratory settings are restricted to long-duration (~seconds), single pulse of one odor at a time that are rarely encountered in natural environment. This inadequate choice of odor stimuli is due to lack of affordable odor delivery systems that can generate plume-like, naturalistic stimuli with high reproducibility such as to allow for repeat measurements under laboratory conditions. We thus developed an odor delivery system that generates arbitrary time-varying patterns of individual odors and ternary mixtures at time scale of ~20 Hz. Here, we provide a detailed description of the construction and output characterization of our odor delivery system.