Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Adafruit EYESPI BFF: Examples, Pinouts, and Specs

Image of Adafruit EYESPI BFF
Cirkit Designer LogoDesign with Adafruit EYESPI BFF in Cirkit Designer

Introduction

The Adafruit EYESPI BFF (Manufacturer Part ID: 5772) is a compact breakout board designed to simplify the integration of eye-tracking sensors with microcontrollers. It leverages the SPI (Serial Peripheral Interface) protocol for fast and efficient communication, making it ideal for projects that require precise and responsive eye-tracking capabilities. This board is part of Adafruit's "BFF" (Best Friend Forever) series, designed to complement microcontroller boards like the QT Py and Feather.

Explore Projects Built with Adafruit EYESPI BFF

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Adafruit ItsyBitsy M4 Dual GC9A01 Display Animated Eyes
Image of Eyes: A project utilizing Adafruit EYESPI BFF in a practical application
This circuit features an Adafruit ItsyBitsy M4 microcontroller connected to two GC9A01 displays. The microcontroller drives the displays to render animated eyes, with the code handling eye movements, blinks, and iris scaling. The displays share common control signals, and the microcontroller coordinates their operation to create synchronized visual effects.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Smart Sensor Hub with Adafruit QT Py RP2040
Image of wearable final: A project utilizing Adafruit EYESPI BFF in a practical application
This circuit features an Adafruit QT Py RP2040 microcontroller interfaced with an APDS9960 proximity sensor, an MPU6050 accelerometer and gyroscope, and an OLED display via I2C communication. It also includes a buzzer controlled by the microcontroller and is powered by a 3.7V LiPo battery with a toggle switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Eye Pressure Monitor with OLED Display and Multiple Sensors
Image of test4: A project utilizing Adafruit EYESPI BFF in a practical application
This circuit is designed to monitor eye pressure and deformation using a photodiode, a TCRT 5000 IR sensor, and a VL53L0X time-of-flight distance sensor. The ESP32 microcontroller reads sensor data, processes it to determine eye pressure status, and displays the results on a 0.96" OLED screen. It includes safety features, sensor calibration, and the ability to display sensor values and eye pressure status in real-time.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Smart Light with Proximity Sensor and OLED Display using Adafruit QT Py RP2040
Image of lab: A project utilizing Adafruit EYESPI BFF in a practical application
This circuit is a portable, battery-powered system featuring an Adafruit QT Py RP2040 microcontroller that interfaces with an OLED display, a proximity sensor, an accelerometer, and an RGB LED strip. The system is powered by a lithium-ion battery with a step-up boost converter to provide 5V for the LED strip, and it includes a toggle switch for power control. The microcontroller communicates with the sensors and display via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit EYESPI BFF

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Eyes: A project utilizing Adafruit EYESPI BFF in a practical application
Adafruit ItsyBitsy M4 Dual GC9A01 Display Animated Eyes
This circuit features an Adafruit ItsyBitsy M4 microcontroller connected to two GC9A01 displays. The microcontroller drives the displays to render animated eyes, with the code handling eye movements, blinks, and iris scaling. The displays share common control signals, and the microcontroller coordinates their operation to create synchronized visual effects.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of wearable final: A project utilizing Adafruit EYESPI BFF in a practical application
Battery-Powered Smart Sensor Hub with Adafruit QT Py RP2040
This circuit features an Adafruit QT Py RP2040 microcontroller interfaced with an APDS9960 proximity sensor, an MPU6050 accelerometer and gyroscope, and an OLED display via I2C communication. It also includes a buzzer controlled by the microcontroller and is powered by a 3.7V LiPo battery with a toggle switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of test4: A project utilizing Adafruit EYESPI BFF in a practical application
ESP32-Based Eye Pressure Monitor with OLED Display and Multiple Sensors
This circuit is designed to monitor eye pressure and deformation using a photodiode, a TCRT 5000 IR sensor, and a VL53L0X time-of-flight distance sensor. The ESP32 microcontroller reads sensor data, processes it to determine eye pressure status, and displays the results on a 0.96" OLED screen. It includes safety features, sensor calibration, and the ability to display sensor values and eye pressure status in real-time.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of lab: A project utilizing Adafruit EYESPI BFF in a practical application
Battery-Powered Smart Light with Proximity Sensor and OLED Display using Adafruit QT Py RP2040
This circuit is a portable, battery-powered system featuring an Adafruit QT Py RP2040 microcontroller that interfaces with an OLED display, a proximity sensor, an accelerometer, and an RGB LED strip. The system is powered by a lithium-ion battery with a step-up boost converter to provide 5V for the LED strip, and it includes a toggle switch for power control. The microcontroller communicates with the sensors and display via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Eye-tracking systems for assistive technologies
  • Gaming and virtual reality (VR) applications
  • Human-computer interaction (HCI) projects
  • Robotics and automation requiring gaze detection
  • Research and development in cognitive science and psychology

Technical Specifications

The Adafruit EYESPI BFF is designed to provide a seamless connection between eye-tracking sensors and microcontrollers. Below are its key technical details:

Key Specifications

Parameter Value
Communication Protocol SPI (Serial Peripheral Interface)
Operating Voltage 3.3V
Dimensions 22mm x 17.8mm x 4.5mm
Mounting Style Solderable to QT Py or Feather
Connector Type 18-pin FPC (Flat Printed Cable)
Compatibility Adafruit QT Py, Feather boards

Pin Configuration and Descriptions

The EYESPI BFF features an 18-pin FPC connector for interfacing with eye-tracking sensors. Below is the pinout description:

Pin Number Pin Name Description
1 GND Ground connection
2 3.3V Power supply (3.3V)
3 SCK SPI Clock
4 MISO SPI Master In Slave Out
5 MOSI SPI Master Out Slave In
6 CS Chip Select for SPI
7 INT Interrupt pin for sensor signaling
8 RST Reset pin for the sensor
9-18 NC Not connected (reserved for future use)

Usage Instructions

The Adafruit EYESPI BFF is designed for easy integration with microcontrollers. Follow the steps below to use it in your project:

Connecting the EYESPI BFF

  1. Soldering: Solder the EYESPI BFF to your Adafruit QT Py or Feather board. Ensure proper alignment of the pins.
  2. Sensor Connection: Attach the eye-tracking sensor to the 18-pin FPC connector on the EYESPI BFF using a compatible flat ribbon cable.
  3. Power Supply: Ensure your microcontroller is powered with 3.3V, as the EYESPI BFF operates at this voltage level.
  4. SPI Configuration: Connect the SPI pins (SCK, MISO, MOSI, CS) to the corresponding pins on your microcontroller.

Example Code for Arduino UNO

Below is an example of how to configure and communicate with the EYESPI BFF using an Arduino-compatible board:

#include <SPI.h>

// Define SPI pins
#define CS_PIN 10  // Chip Select pin
#define INT_PIN 2  // Interrupt pin

void setup() {
  // Initialize Serial Monitor
  Serial.begin(9600);
  while (!Serial);

  // Configure SPI settings
  SPI.begin();
  pinMode(CS_PIN, OUTPUT);
  pinMode(INT_PIN, INPUT);

  // Set Chip Select pin to HIGH (inactive)
  digitalWrite(CS_PIN, HIGH);

  Serial.println("EYESPI BFF Initialized");
}

void loop() {
  // Example: Send a command to the sensor
  digitalWrite(CS_PIN, LOW); // Activate Chip Select
  SPI.transfer(0x01);        // Send a dummy command
  digitalWrite(CS_PIN, HIGH); // Deactivate Chip Select

  // Check for interrupt signal
  if (digitalRead(INT_PIN) == HIGH) {
    Serial.println("Sensor interrupt detected!");
  }

  delay(1000); // Wait for 1 second
}

Important Considerations and Best Practices

  • Voltage Compatibility: Ensure your microcontroller operates at 3.3V logic levels to avoid damaging the EYESPI BFF.
  • Cable Handling: Use a high-quality flat ribbon cable to connect the sensor to the FPC connector for reliable communication.
  • Interrupt Handling: If your sensor uses the INT pin, configure your microcontroller to handle interrupts efficiently.
  • Firmware Updates: Check Adafruit's website for any firmware updates or additional libraries for your specific sensor.

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Communication with Sensor

    • Cause: Incorrect SPI wiring or configuration.
    • Solution: Double-check the SPI connections (SCK, MISO, MOSI, CS) and ensure the SPI settings in your code match the sensor's requirements.
  2. Sensor Not Detected

    • Cause: Loose or improper connection to the FPC connector.
    • Solution: Ensure the flat ribbon cable is securely connected to the FPC connector.
  3. Interrupts Not Triggering

    • Cause: INT pin not configured correctly in the code.
    • Solution: Verify the INT pin is set as an input and check the sensor's datasheet for interrupt behavior.
  4. Overheating

    • Cause: Incorrect voltage supply.
    • Solution: Ensure the EYESPI BFF is powered with 3.3V only.

FAQs

Q: Can I use the EYESPI BFF with 5V microcontrollers?
A: No, the EYESPI BFF is designed for 3.3V logic levels. Using it with 5V microcontrollers may damage the board.

Q: What sensors are compatible with the EYESPI BFF?
A: The EYESPI BFF is compatible with a variety of eye-tracking sensors that use SPI communication. Refer to Adafruit's product page for a list of supported sensors.

Q: Can I use multiple EYESPI BFF boards in a single project?
A: Yes, but you must assign unique Chip Select (CS) pins for each board to avoid communication conflicts.

Q: Where can I find additional resources?
A: Visit the Adafruit EYESPI BFF product page for detailed documentation, tutorials, and support.

By following this documentation, you can effectively integrate the Adafruit EYESPI BFF into your projects and unlock the potential of eye-tracking technology!