No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Limor "Ladyada" Fried ac83c61fa2
Merge pull request #39 from caternuson/pyftdi
2 months ago
adafruit_platformdetect lint 2 months ago
bin Added Raspberry Pi CM3+ and Compute Module detection 4 months ago
docs add docs/ 11 months ago
.gitignore add .gitignore 11 months ago
.travis.yml disable sphinx for the moment 11 months ago initial commit 11 months ago
LICENSE initial commit 11 months ago
README.rst Updated with newer boards 5 months ago
requirements.txt initial commit 11 months ago add tweaks for pylint; detect (some) generic linux systems; rename class 11 months ago



This library provides best-guess platform detection for a range of single-board
computers and (potentially) other platforms. It was written primarily for use
in `Adafruit_Blinka <>`_, but may be
useful in other contexts.

Platform detection is divided into "chip" and "board" detection, with the latter
generally dependent on the former. Platform info is gathered from:

- Python's `sys.platform`

- Various files on Linux systems:

- `/proc/cpuinfo` (for processor info, Raspberry Pi hardware revisions, etc.)

- `/proc/device-tree/compatible` (for 96Boards info)

- Beaglebone EEPROM board IDs

- Distribution-specific files such as `/etc/armbian-release`.

The API is currently unstable and may change drastically in future releases.


On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally `from
PyPI <>`_. To install for current user:

.. code-block:: shell

pip3 install Adafruit-PlatformDetect

To install system-wide (this may be required in some cases):

.. code-block:: shell

sudo pip3 install Adafruit-PlatformDetect

To install in a virtual environment in your current project:

.. code-block:: shell

mkdir project-name && cd project-name
python3 -m venv .env
source .env/bin/activate
pip3 install Adafruit-PlatformDetect


.. code-block:: python

from adafruit_platformdetect import Detector
detector = Detector()
print("Chip id: ",
print("Board id: ",

# Check for specific board models:
print("Pi 3B+? ", detector.board.RASPBERRY_PI_3B_PLUS)
print("BBB? ", detector.board.BEAGLEBONE_BLACK)
print("Orange Pi PC? ", detector.board.ORANGE_PI_PC)
print("generic Linux PC? ", detector.board.GENERIC_LINUX_PC)

See for more possible detectable boards