     serial_port.write instruction, (err, results) ->
       logger.debug 'serial_port.write err: ' + err if err
       logger.debug 'serial_port.write results: ' + results if results
+      serial_port.drain( (error) ->
+        logger.debug "serial_port drained! with error: #{error}"
+      )
 
 module.exports = Server

    )

    serial_port.on "open", =>
      console.log "Node serialport connected to #{tty}"

      @_setup_sio()

      serial_port.on 'data', (data) ->
        console.log 'data received: ' + data

  #
  # break our colors string into array, write each color to the appropriate address

    socket.on 'connect',             => console.log "connected to socket at #{@_url()}"
    socket.on 'connect_error', (obj) => console.log 'connect error', obj
    socket.on 'disconnect',          => console.log "socket at #{@_url()} disconnected"
    socket.on 'colorChanged', (data) =>
      @_write_colors_over_tty(data)

    socket.on 'colorSet',               @_write_colors_over_tty

  #
