Platform detection for use by libraries like Adafruit-Blinka.
Project description
Introduction
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.
Installation
On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally from PyPI. To install for current user:
pip3 install Adafruit-PlatformDetect
To install system-wide (this may be required in some cases):
sudo pip3 install Adafruit-PlatformDetect
To install in a virtual environment in your current project:
mkdir project-name && cd project-name
python3 -m venv .env
source .env/bin/activate
pip3 install Adafruit-PlatformDetect
Usage
from adafruit_platformdetect import Detector
detector = Detector()
print("Chip id: ", detector.chip.id)
print("Board id: ", detector.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 https://github.com/adafruit/Adafruit_Python_PlatformDetect/blob/master/bin/detect.py for more possible detectable boards
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for Adafruit-PlatformDetect-1.2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6c7d8b7342ad978449ac3a3589f172f5699d5d5b3b627d7d883d59a0f87b7e7 |
|
MD5 | 758ec07591718c6973da4c68307c7259 |
|
BLAKE2b-256 | 2dfa2ae8b1aa90a28c1de845b6d82bdc1e881ffb2b53eca988f36a8214114c8e |