                            :variables [{:key "chance" :min 0.0 :max 0.4 :start 0.05 :velocity true}
                                        {:key "fade-time" :name "Fade" :min 1 :max 2000 :start 50 :type :integer}]))
 
+
+    ;; Set up default starting values for oscillators driving dimmer cues
+    (when-not (= (type (show/get-variable :starting-beats)) Long)
+      ;; If the default beat ratio numerator has not yet been set, establish it as 2
+      (show/set-variable! :starting-beats 2))
+    (when-not (= (type (show/get-variable :starting-cycles)) Long)
+      ;; If the default beat ratio denominator has not yet been set, establish it as 1
+      (show/set-variable! :starting-cycles 1))
+    (when-not (= (type (show/get-variable :starting-phase)) Double)
+      ;; If the default pulse phase has not yet been set, establish it as 0.0
+      (show/set-variable! :starting-phase 0.0))
+    (when-not (= (type (show/get-variable :sawtooth-down?)) Boolean)
+      ;; If the default sawtooth direction has not yet been set, establish it as down
+      (show/set-variable! :sawtooth-down? true))
+    (when-not (= (type (show/get-variable :starting-width)) Double)
+      ;; If the default pulse width has not yet been set, establish it as 0.5
+      (show/set-variable! :starting-width 0.5))
 
     ;; Dimmer oscillator cues: Sawtooth
     (make-sawtooth-cue nil 0 3 :yellow)

  set of fixtures, with cue parameters to adjust the beat ratio,
  starting with default values established by show parameters."
  [group x y color]
  (when-not (= (type (show/get-variable :starting-beats)) Long)
    ;; If the default beat ratio numerator has not yet been set, establish it as 2
    (show/set-variable! :starting-beats 2))
  (when-not (= (type (show/get-variable :starting-cycles)) Long)
    ;; If the default beat ratio denominator has not yet been set, establish it as 1
    (show/set-variable! :starting-cycles 1))
  
  (let [[effect-key fixtures end-keys effect-name] (build-group-cue-elements group "dimmers" "sine")]
    (ct/set-cue! (:cue-grid *show*) x y
                 (cues/cue effect-key
                           (fn [var-map] (dimmer-effect
                                          (oscillators/build-oscillated-param
                                           (oscillators/sine :interval-ratio (build-ratio-param var-map)) :min 1)
                                          fixtures
                                          :effect-name effect-name))
                           :color color
                           :variables [{:key "beats" :min 1 :max 32 :type :integer :start :starting-beats :name "Beats"}
                                     {:key "cycles" :min 1 :max 10 :type :integer :start :starting-cycles
                                      :name "Cycles"}]
                         :end-keys end-keys))))

(defn make-square-cue

  of fixtures, with cue parameters to adjust the beat ratio and pulse
  width, starting with default values established by show parameters."
  [group x y color]
  (let [[effect-key fixtures end-keys effect-name] (build-group-cue-elements group "dimmers" "square")]
    (ct/set-cue! (:cue-grid *show*) x y
               (cues/cue effect-key
                         (fn [var-map] (dimmer-effect
                                        (oscillators/build-oscillated-param
                                         (oscillators/square :interval-ratio (build-ratio-param var-map)
                                                             :width (:width var-map)
                                                             :phase (:phase var-map)))
                                        fixtures
                                        :effect-name effect-name))
                         :color color
                         :variables [{:key "beats" :min 1 :max 32 :type :integer :start :starting-beats :name "Beats"}
                                     {:key "width" :min 0 :max 1 :start :starting-width :name "Width"}
                                     {:key "cycles" :min 1 :max 10 :type :integer :start :starting-cycles
                                      :name "Cycles"}
                                     {:key "phase" :min 0 :max 1 :start :starting-phase :name "Phase"}]
                         :end-keys end-keys))))

(defn x-phase
