                 # Done sending, now waiting for response
                 # FIXME: error if this times out
                 return
+            @current.sent = Date.now()
             @write chunk, () =>
                 console.log 'MICROFLO SEND:', chunkSize, chunk if debug_comms
                 if index < dataBuf.length
-                    setTimeout () =>
-                        sendCmd dataBuf, index+=chunkSize
-                    , @options.wait
-
-        setTimeout () =>
-            sendCmd @current.data, 0 if @current?
-        , @options.wait
+                    sendCmd dataBuf, index+=chunkSize
+
+        sendCmd @current.data, 0 if @current?
 
     onResponse: (type) ->
         return if not @sending

class CommandAccumulator extends EventEmitter
    constructor: (commandSize) ->
        @commandSize = commandSize
        @buffer = new commandstream.Buffer(commandstream.cmdFormat.commandSize*100);
        @offset = 0

    onData: (da) ->

        @transport = transport
        @componentLib = componentLib
        @accumulator = new CommandAccumulator commandstream.cmdFormat.commandSize
        @sender = new SendQueue commandstream.cmdFormat.commandSize,
          type: @transport.getTransportType()

        return if not @transport
        @transport.on 'data', (buf) =>
