Sean Johnson Status Report for 2/14/26

What I personally accomplished this week:

This week I focused on refining our position tracking approach with the PAA5160E1 optical sensor. I discovered that the sensor uses I2C communication, not SPI as initially thought. This simplifies our integration, the sensor will connect to the Arduino rather than directly to the FPGA, since it has an onboard STM32 microcontroller that outputs processed position data over I2C. I reviewed the SparkFun documentation and Arduino library for the PAA5160E1 to understand the integration workflow. The sensor provides X/Y displacement values that we can accumulate into absolute position. I studied how to read position data via I2C on Arduino and forward it to the KR260 over serial communication for use in navigation decisions.

I also researched how to calibrate the sensor and handle edge cases like sensor drift and surface compatibility. The sensor requires mounting 10-27mm above the tracking surface and works best on hard floors, which matches our indoor demo environment.

I continued learning ROS2, focusing on how position data flows through navigation nodes and how to structure communication between the Arduino, handling sensors/motors, and KR260.

I coordinated with Paul on mounting requirements for the optical sensor on our chassis design.

Progress relative to schedule:

On schedule. This week’s work on optical sensor integration planning aligns with Gantt chart task 3.1 (optical sensor) and 3.4 (position tracking).

Deliverables for next week:

  • Complete integration plan for PAA5160E1. Arduino I2C interface and serial communication to KR260
  • Begin testing basic I2C communication with Arduino if sensor arrives
  • Define data format for position updates sent from Arduino to KR260
  • Continue ROS2 learning focused on position/odometry message types

Leave a Reply

Your email address will not be published. Required fields are marked *