Skip to content

Latest commit

 

History

History
executable file
·
63 lines (39 loc) · 2.96 KB

MODULES.md

File metadata and controls

executable file
·
63 lines (39 loc) · 2.96 KB

Arduino Modules

Note: Although it's sometime possible to use the chip directly on a breadboard, I've focused on breakout boards only here. Breakout boards are a bit more expensive (sometimes not by much) but are way easier to use.

About libraries: I'm not listing all libraries available for each module, just random ones I found. Use the Library Manager in Arduino IDE to help you find more libs.

I/O Expanders

Arduinos have a limited amount of pins, and sometimes they are not enough, especially an small boards like the Pro Micro.

I/O expanders allow you to add more pins to the Arduino (12, 16 and more), while needing only 2 or 3 on the arduino itself.

SX1509

Example on Sparkfun

  • I2C interface
  • 16 channels (digital in/out) and PWM
  • Not that cheap ($4-5)
  • 3.3V max (GPIO are 5V tolerant)
  • 4 possible addresses (0x3E, 0x3F, 0x70, 0x71) - depends on the breakout board

Libraries

PCF8574 / PCF8575 / PCF8575C

  • I2C interface
  • PCF8574 8 channels, PCF8575/PCF8575C 16 channels
  • $2-3
  • 5V max
  • address 0x20 (some breakout boards allow to change it)

Sparkfun PCF8575 breakout board repo (with schematics, firmware...) - Sparkfun recommends the SX1509 as a replacement

PCF8575 and PCF8575C are very similar. Not sure if libraries can be used for both. PCF8575C seems to be a bit rare on breakout boards.

Libraries

MCP23017

  • I2C interface
  • 16 channels
  • crazy cheap $1
  • 5.5V max
  • address 0x20

Libraries

SD Card reader

I found 2 cheap SD card readers (one for SD, one for micro SD). They both connect via SPI.

Arduino has a library included for SD card stuff (Lib on Github).

There's also SdFat that seems nice. Not sure what the difference is between the 2, beside supporting soft SPI pins.