code: function Board(options) {
      EventEmitter.call(this);
  
      this._options = options;
      this._buf = [];
      this._digitalPort = [];
      this._numPorts = 0;
      this._analogPinMapping = [];
      this._digitalPinMapping = [];
      this._i2cPins = [];
      this._ioPins = [];
      this._totalPins = 0;
      this._totalAnalogPins = 0;
      this._samplingInterval = 19;
      this._isReady = false;
      this._firmwareName = '';
      this._firmwareVersion = 0;
      this._capabilityQueryResponseReceived = false;
      this._numPinStateRequests = 0;
      this._numDigitalPortReportRequests = 0;
      this._transport = null;
      this._pinStateEventCenter = new EventEmitter();
      this._logger = new Logger('Board');
  
      this._initialVersionResultHandler = onInitialVersionResult.bind(this);
      this._openHandler = onOpen.bind(this);
      this._reOpenHandler = onReOpen.bind(this);
      this._messageHandler = onMessage.bind(this);
      this._errorHandler = onError.bind(this);
      this._closeHandler = onClose.bind(this);
      this._cleanupHandler = cleanup.bind(this);
  
      attachCleanup(this);
      this._setTransport(this._options.transport);
    }
docs: SYSEX_NON_REALTIME = 0x7E, SYSEX_REALTIME = 0x7F; 
  An abstract development board.
  
  @namespace webduino
  @class Board
  @constructor
  @param {Object} options Options to build the board instance.
  @extends webduino.EventEmitter