Difference between revisions of "MyMenu"

From Land Boards Wiki
Jump to navigation Jump to search
Line 67: Line 67:
 
=== MyMenu Card Library/Examples ===
 
=== MyMenu Card Library/Examples ===
  
* MyMenu library on GitHub
+
* [https://github.com/douggilliland/lb-Arduino-Code/tree/master/libraries/LandBoards_MyMenu MyMenu library on GitHub]
 
* Can download the ZIP file and use the ZIP library installer
 
* Can download the ZIP file and use the ZIP library installer
 
* Card requires the Arduino Adafruit MCP23008 library
 
* Card requires the Arduino Adafruit MCP23008 library

Revision as of 13:35, 25 January 2020

MyMenu-CCA-X3 5793-800px.jpg

Features

MyMenu is a self contained menu system with these features:

  • 0.96" OLED
  • Menu Pushbuttons
    • 5 Way Keypad (Up, Down, Left, Right, Select)
  • Direction, Select buttons
  • 2-wire I2C (VCC, GND, CLK, DATA) interface
    • Selectable I2C address in range 0x20-0x27 (resistor install option)
    • Interrupt output line on button press
  • MCP23008 I2C Port Expander
  • OLED connection - mounts OLED to card and shares I2C connection to Host
  • 3 LEDs
  • 49x49mm card with (4) 4-40 mounting holes

MCP23008 I2C Port Expander

Data Sheet

GPIO Port Map
GP0 - LED D3
GP1 - LED D2
GP2 - LED D1
GP3 - Select button 0 = pressed
GP4 - Right button
GP5 - Down button
GP6 - Up button
GP7 - Left button

OLED Display

  • On ebay...
  • There are several versions
  • MyMenu requires
    • 4-pin I2C version
    • Rev X1-X3 requires pin Ordering VCC, GND,

Rev X3 Connectors

The card has a 5-pin, 0.1" spacing connector. The connector has I2C connections (CLK and DATA) plus an Interrupt line.

  1. GND
  2. VCC
  3. SDA
  4. SCL
  5. INT

The card has a 4-pin, 0.1" spacing connector for daisy-chaining. The connector has I2C connections (CLK and DATA).

  1. GND
  2. VCC
  3. SDA
  4. SCL

Arduino Libraries

  • The Display library is decoupled from the MyMenu library and requires a separate install

MyMenu Card Library/Examples

  • MyMenu library on GitHub
  • Can download the ZIP file and use the ZIP library installer
  • Card requires the Arduino Adafruit MCP23008 library
  • Needs to be installed separately from the MyMenu library
  • MCP23008 is the I2C interface chip that communicates with the buttons and LEDs
  • Tested with Adafruit MCP23008 library version 1.0.1
  • Driver is used to talk to the buttons/LEDs on the MyMenu card
  • Driver can be installed from the Arduino IDE - search "Adafruit MCP23008"
  • MyMenu card example code

Driver/Example code

Parts List