Home | History | Annotate | Download | only in docs
      1 Known Limitations                       {#knownlimitations}
      2 ===============
      3 
      4 Some sensors do not work seamlessly with a specific board. This means that they
      5 are either incompatible or work only under specific settings. This is a list of
      6 such sensors and known workarounds if they exist.
      7 
      8 #### Grove Sensors
      9 
     10  * **Grove I2C Touch Sensor** (MPR121) v1.3 is incompatible with the Intel
     11  Edison using the Arduino board, but will work with the Mini-breakout if
     12  supplied with at least 4V. Revision v1.2 works well on all Intel boards.
     13  * **Grove Nunchuck** only works with the Intel Galileo boards and is unusable
     14  on the Intel Edison boards.
     15  * **Grove 3-Axis Digital Gyroscope** (ITG-3200) is not compatible with the
     16  Intel Edison Arduino board but will work with the Mini-breakout.
     17  * **Grove 3-Axis Digital Accelerometer** (ADXL345) only works with the Intel
     18  Edison Arduino board when powered from the 3.3V line.
     19  * **Grove 3-Axis Digital Compass** (HMC5883L) reports inaccurate values at 5V
     20  on the Intel Edison Arduino board and newer revisions might not work at all.
     21  Use 3.3V or the Mini-breakout.
     22  * **Grove 96x96 OLED Display** will not work on the Intel Edison with Arduino
     23  breakout.
     24  * **Grove 128x64 OLED Display** will not work on the Intel Edison with Arduino
     25  breakout.
     26  * **Grove Barometer** (BMP085) has an unstable connection on the Intel Edison
     27  using the Arduino breakout and may drop read data. The Xadow version of this
     28  sensor (BMP180) is also dropping data packets occasionally.
     29  * **Grove Digital Light Sensor** (TSL2561) occasionally drops I2C reads on the
     30  Intel Edison with the Arduino breakout. This might cause the sensor not to
     31  initialize properly. Works as expected with the Mini-breakout.
     32  * **Grove 6-Axis Accelerometer & Compass** (LSM303) fails to write to the
     33  configuration register properly and returns invalid data.
     34  * **Grove I2C ADC Converter** does not show up on the I2C bus on the Intel
     35  Edison with the Arduino board.
     36  * **Grove I2C Motor Driver** is not compatible with the Intel Galileo due to
     37  the inability to change the I2C bus speed to 100 KHz.
     38  * **Grove CO2 Sensor** will return zeroed data and is unusable on the Intel
     39  Galileo.
     40  * **Grove BLE** (HM-11) does not return data on the Intel Galileo board due to
     41  known UART limitation.
     42 
     43 #### Adafruit Sensors
     44 
     45  * **Adafruit Motor Shield** (1438) is not detected on the I2C bus when
     46  connected to the Intel Edison with an Arduino breakout.
     47 
     48 #### Other Sensors
     49 
     50  * **NRF24L01** corrupted data packets are sent to the device due to the Intel
     51  Edison SPI bus limitation. Sensor works as expected with the Intel Galileo
     52  boards.
     53  * **NRF8001** based devices do not initialize properly with provided examples
     54  on Intel Edison boards also due to SPI bus limitation and data corruption.
     55  Works on Intel Galileo.
     56 
     57 #### General
     58 
     59 Some *I2C* sensors add too much capacitance to the SDA line of the Intel Edison
     60 Arduino breakout board, thus the signal sticks to a logic 1. When this happens,
     61 other sensors connected to the I2C bus are unusable. While there is no generic
     62 solution for this limitation, in most cases the sensor works on the Intel
     63 Edison Mini-breakout. When this board is not an option, the sensor can be
     64 sometimes replaced with the same model from a different vendor.
     65 
     66 The Intel Edison *SPI* bus can corrupt data being sent across when certain
     67 sensors are connected to it. Based on the sensor, this can affect functionality
     68 slightly or make the sensor entirely unusable. Unlike the I2C bus limitation,
     69 different boards are not likely to resolve this. A kernel update on the other
     70 hand might help alleviate this.
     71 
     72 On the Intel Galileo boards, the *UART* bus might drop data if several bytes
     73 are read at once.
     74