Skip to content

Conversation

tchalupnik
Copy link

@tchalupnik tchalupnik commented Oct 2, 2025

Summary

Migrates AM335x-based BeagleBone boards from deprecated Adafruit_BBIO to modern libgpiod interface. Adafruit_BBIO is no longer maintained and uses the legacy GPIO sysfs interface (/sys/class/gpio/) that predates Linux kernel 4.8+ GPIO character devices (/dev/gpiochip0-4).

Technical Changes

GPIO Interface Migration

  • Before: String-based pins via sysfs (Pin("GPIO1_28"))
  • After: Tuple-based pins via libgpiod (Pin((1, 28)))
  • Removed: Adafruit_BBIO dependency for AM335x boards

Architecture Improvements

  • Moved board-specific peripheral aliases (SPI0_D0, I2C1_SDA) from microcontroller to board files
  • Fixed critical SPI0_D0 pin mapping (P9_22 → P9_21)
  • Resolved PocketBeagle import conflicts with BeagleBone Black pin references
  • Added comprehensive analog pin definitions with hardware-specific mappings

@tchalupnik tchalupnik marked this pull request as draft October 2, 2025 15:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant