BeagleBone Black (TI Sitara AM3358)

Designed for the BeagleBoard.org FoundationSBClinux

⚡ L’essentiel en 60 secondes

La BeagleBone Black, introduite en avril 2013 par la BeagleBoard.org Foundation, s’est imposée comme une référence incontournable dans le monde des cartes de développement électroniques. Conçue initialement par Gerald Coley et fabriquée par des partenaires comme Circuitco puis Embest, cette carte a été pensée dès le départ comme une plateforme communautaire, ouverte et robuste. Son prix de lancement de 45 dollars américains a permis une adoption massive, et bien que les prix actuels varient selon les distributeurs, la carte reste disponible à l’achat en 2026, preuve de sa longévité et de sa pertinence pour les applications industrielles et éducatives. Elle fait partie d’une famille plus large incluant des variantes comme la BeagleBone Black Wireless ou la PocketBeagle, mais le modèle original conserve une place centrale grâce à son écosystème mature.

Le cœur de la carte repose sur le processeur TI Sitara AM3358, un système sur puce (SoC) qui intègre un processeur ARM Cortex-A8 cadencé jusqu’à 1 GHz. Pour comprendre cette fréquence, il faut savoir qu’elle représente le nombre de cycles d’horloge que le processeur peut effectuer chaque seconde, influençant directement la rapidité d’exécution des calculs. Ce processeur est accompagné de 512 Mo de mémoire vive DDR3L, une mémoire rapide qui permet au système d’exploitation et aux applications de fonctionner fluidement. Un aspect distinctif de cette architecture est la présence de deux unités PRU-ICSS. Ces co-processeurs temps réel sont des cœurs programmables fonctionnant à 200 MHz, capables de gérer des tâches critiques comme le contrôle de moteurs ou la lecture de capteurs avec une précision extrême, sans solliciter le processeur principal. Cette capacité permet à la BeagleBone Black de réaliser des opérations déterministes, c’est-à-dire dont le temps d’exécution est parfaitement prévisible, ce qui est crucial pour l’automatisation industrielle.

En matière de connectivité et d’entrées/sorties, la carte offre une flexibilité remarquable. Elle dispose de deux connecteurs d’extension de 46 broches, nommés P8 et P9, qui exposent une grande variété de signaux numériques et analogiques. Il est important de noter que ces broches fonctionnent en logique 3,3 volts ; y connecter des signaux 5 volts, courants dans d’autres écosystèmes, risque d’endommager définitivement le processeur. De même, les entrées analogiques sont limitées à 1,8 volt maximum, nécessitant souvent l’utilisation de diviseurs de tension pour mesurer des signaux plus élevés. La carte intègre également une interface Ethernet 10/100 Mbps, bien que l’absence native de Wi-Fi ou de Bluetooth oblige à utiliser des adaptateurs USB ou la variante Wireless pour ces fonctions. Pour l’affichage, un port micro-HDMI permet de connecter un écran, avec une résolution maximale de 1280x1024 pixels ou 1920x1080 à 24 Hz, une fréquence d’image qui peut sembler basse pour le multimédia moderne mais suffisante pour des interfaces de contrôle ou des tableaux de bord.

L’alimentation de la carte est gérée par un circuit intégré dédié (PMIC) qui accepte une entrée 5 volts via un port micro-USB ou une prise jack. Cette conception permet une commutation automatique entre les sources d’alimentation, mais il faut être vigilant : l’alimentation par USB est limitée à 500 mA, ce qui peut être insuffisant si l’on branche des périphériques gourmands ou des cartes d’extension (capes) sur les connecteurs P8 et P9. Dans ces cas, une alimentation externe via la prise jack est recommandée pour éviter des redémarrages intempestifs. Le système de stockage est assuré par 4 Go de mémoire eMMC (mémoire flash soudée sur la carte), offrant une fiabilité supérieure aux cartes microSD pour le démarrage du système d’exploitation, bien que le port microSD reste disponible pour l’extension de stockage ou le démarrage de secours.

La philosophie ouverte de la carte se traduit par la disponibilité complète des schémas électroniques et des fichiers de conception, favorisant la création d’une riche communauté. Les utilisateurs peuvent empiler jusqu’à quatre cartes d’extension, appelées « capes », qui se connectent aux connecteurs P8 et P9. Ces capes disposent de petites mémoires EEPROM qui indiquent au système d’exploitation quelles fonctions activer, simplifiant grandement la configuration matérielle. Le système d’exploitation officiel est Debian Linux, une distribution stable et largement utilisée, bien que d’autres systèmes comme Android ou FreeBSD aient été portés. La prise en charge par le noyau Linux principal (mainline) est excellente, garantissant une compatibilité à long terme avec les mises à jour de sécurité et les nouvelles fonctionnalités.

Malgré ses atouts, la BeagleBone Black présente certaines limites qu’il convient de connaître. Sa mémoire de 512 Mo et son processeur mono-cœur la rendent moins adaptée aux tâches lourdes de type poste de travail bureautique ou serveur multimédia complexe. De plus, des spécificités matérielles, comme le partage de certaines broches entre le stockage eMMC et les connecteurs d’extension, ou l’utilisation de broches spécifiques pour le démarrage, nécessitent une attention particulière lors de la conception de circuits personnalisés. Enfin, la chaîne d’outils pour programmer les co-processeurs PRU a historiquement été fragmentée entre les outils officiels de Texas Instruments et les solutions communautaires, bien que des progrès significatifs aient été réalisés avec l’intégration de pilotes dans le noyau Linux. En somme, la BeagleBone Black demeure un outil puissant pour les ingénieurs et les makers cherchant un équilibre entre performance, temps réel et ouverture, particulièrement adapté aux projets nécessitant une interaction précise avec le monde physique.

Forum (1 sujet) →

AttrSpecsvérifié
socTI Sitara AM3358BZCZ100 ("CZ" = Cortex-A8 + SGX530 + PRU, 100 = 1 GHz speed grade), 2000 MIPS (SRM ch. 4). CPU: 1× ARM Cortex-A8 (ARMv7-A, single core), OPPs at 275/500/600/800/1000 MHz (SRM ch. 6 processor table; OPP table in am33xx.dtsi). L1 64 KB + L2 256 KB cache, 128 KB other on-chip RAM, 64-channel EDMA (SRM ch. 6).✔
co_processors2× PRU-ICSS Programmable Real-Time Units, 32-bit load/store RISC @ 200 MHz, 8 KB instruction RAM + 8 KB data RAM per core + 12 KB shared RAM, parity-protected, fast I/O, 16 in / 16 out pins per core (not all reachable on the BBB) (SRM ch. 6 "PRU-ICSS").✔
gpuImagination PowerVR SGX530 @ 200 MHz, ~20 M polygons/s (SRM ch. 4; Wikipedia).✔
ram512 MB DDR3L (single x16 device: Micron MT41K256M16HA-125 or Kingston D2516EC4BXGGB), 400 MHz clock = 800 MT/s ≈ 1.6 GB/s (SRM ch. 5).✔
storage4 GB 8-bit eMMC (Rev C+; 2 GB on Rev A/B) on MMC1/GPMC pins + microSD (MMC0, 4-bit only — 8-bit lines collide with the Ethernet pins) (SRM ch. 5). 4 KB board-identity EEPROM on I2C0 (atmel,24c32 in mainline DTS).✔
networking10/100 Ethernet only (SMSC PHY, MII via the AM335x CPSW switch, phy-mode = "mii" in am335x-bone-common.dtsi). No Wi-Fi / Bluetooth on the stock board (use the Wireless variant or a USB dongle).✔
usb1× USB2.0 HS host Type-A (≤500 mA, LS/FS/HS) + 1× mini-USB client (USB0, powers the board) (SRM ch. 4).✔
video_audiomicro-HDMI via a 16-bit HDMI framer (TDA19988-class): max 1280×1024, 1920×1080@24 Hz with EDID; stereo audio over HDMI (needs the framer's 24.576 MHz clock, see Problems) (SRM ch. 4).✔
gpio_expansion2× 46-pin headers (P8, P9) = 92 pins, all 3.3 V I/O (5 V on power pins only). Up to 69 GPIO, 7 analog inputs, 4 UARTs, 2× I2C, 2× SPI, 2× CAN, 8× PWM (eHRPWM/eCAP), eQEP, McASP0, LCD/GPMC/MMC1/MMC2 muxed, XDMA interrupt, power-button line, up to 4 stacked capes with per-cape ID EEPROMs (I2C2 addresses 0x54–0x57 in mainline DTS) (SRM ch. 4/ch. 7; Adafruit — Setting up IO Python Library on BeagleBone Black: "7 Analog Pins, 65 Digital Pins at 3.3V, 2x I2C, 2x SPI, 2x CAN Bus, 4x UART, 8x PWM").✔
adc8-channel 12-bit ADC; analog I/O supply is 1.8 V (VDD_ADC) — absolute max on AIN pins is 1.8 V (SRM ch. 4 "AIN (1.8V MAX)", ch. 6 "IO Supply (V): 1.8V(ADC), 3.3V"). Broken-out channels (P9): AIN0=P9_39, AIN1=P9_40, AIN2=P9_37, AIN3=P9_38, AIN4=P9_33, AIN5=P9_36, AIN6=P9_35, VADC(1.8 V out)=P9_32, AGND=P9_34 (SRM ch. 7 P9 table).✔
power5 V via micro-USB client (≤500 mA) or 5.5/2.1 mm center-positive barrel jack (≥1 A typical); TPS65217C PMIC auto-selects, hot-switching USB→DC; the board can also be powered from the 5 V pins of the headers. Measured draw @5 V (HDMI monitor + hub + 4 GB stick + 100M Ethernet attached): U-Boot idle 210 mA, kernel-boot peak 460 mA, kernel idle 350 mA, page load 430 mA (SRM ch. 6 "Power Consumption"). Battery-charger pads (BAT/SENSE/TS/GND) for Li-ion experiments; power button on the PMIC.✔
cryptoAES and SHA accelerators enabled in mainline (&aes/&sham "okay" in am335x-bone-common.dtsi).✔
mechanical_thermal86.36 × 53.34 mm (3.5" × 2.15"), 6-layer PCB, 39.68 g (SRM ch. 4/ch. 9).✔
  • Fabricant / gardien : conçue pour la BeagleBoard.org Foundation (association à but non lucratif 501(c)(3), Michigan, États-Unis). La carte a été conçue par Gerald Coley d'EmProDesign ; le routage PCB jusqu'à la révision B a été réalisé par Circuitco (unique financeur de la fabrication d'origine), les révisions PCB ultérieures par Embest (filiale d'Avent) ; fabriquée et garantie par les partenaires de BeagleBoard.org (BBB System Reference Manual, ch. 4 "Overview", consulté le 2026-10-13).
  • Année d'introduction : 2013-04-23 (révision de production initiale A5A ; la révision A5.2 du document porte la même date) (Wikipedia — BeagleBoard family table, System Reference Manual ch. 2 Change History, tous deux consultés le 2026-10-13).
  • Prix de lancement : US$45 — la comparaison PocketBeagle de Wikipedia consigne le prix public (MSRP) du BBB comme "US$45 for BeagleBone Black" (déc. 2018), le prix avec lequel la carte est sortie et qu'elle a maintenu pendant des années (Wikipedia — BeagleBoard, consulté le 2026-10-13).
  • Statut : Active / toujours vendue. Référencée sur la page produit officielle beagleboard.org/boards/beaglebone-black (récupérée en direct le 2026-10-13 : "low-cost, high-expansion, community-supported development platform"). C'est un design de 13 ans maintenu en production pour les clients industrie/éducation ; les cartes plus récentes de la Fondation (PocketBeagle, BeaglePlay, BeagleBone AI-64) la côtoient.
  • Révisions matériel (toutes issues de l'officiel Change History, ch. 2, consulté le 2026-10-13) : - Rev A5A (janv. 2013) : production initiale, eMMC 2 GB, Ångström Linux préinstallé. - Rev A5B : LED atténuées (820 Ω → 4.75 kΩ) ; Rev A5C : correctif de gigue HDMI (R45–R48). - Rev A6 / A6A : correctif du glitch SYS_RESETn (combiné par OU avec PORZn) ; correctif du condensateur C25 pour un problème "won't boot 1 in 20 tries". - Rev B : processeur remplacé par AM3358BZCZ100 (grade 1 GHz). - Rev C (2014-03-21) : eMMC 2 GB → 4 GB (fin de vie des composants 2 GB) ; livrée avec Debian. - Rev C1/C2 : changements de fournisseur DDR3/eMMC (Micron ↔ Kingston). - Rev C3 (2021) : reset du PHY Ethernet sur GPIO1_8 (corrige un problème de démarrage, git.beagleboard.org issue #4), nouveau panier de carte microSD (issue #6) ; Rev C3a : connecteur USB Type-A hôte.
  • Variantes : BeagleBone Black Wireless (SiP Octavo OSD3358 + Wi-Fi b/g/n + BT 4.1 LE, am335x-boneblack-wireless.dts mainline), BeagleBone Black Industrial (variante à plage de température étendue, référencée par CNX Software), Seeed BeagleBone Green / Green Wireless, et la famille PocketBeagle bâtie sur le même silicium (Wikipedia, consulté le 2026-10-13).

+ Points forts

  • PRU-ICSS — l'argument unique face à n'importe quel Raspberry Pi. Deux cœurs 32 bits programmables par l'utilisateur à 200 MHz câblés directement à l'anneau d'E/S, offrant du bit-banging déterministe contournant l'OS, du contrôle moteur, des fieldbus industriels et de l'échantillonnage pendant que Linux tourne normalement (SRM ch. 6). Google Research a construit PRUDAQ, une cape d'acquisition de données 40 MSPS reposant sur les PRU (github.com/google/prudaq, consulté le 2026-10-13). Aucun modèle de Pi n'expose de cœurs E/S temps réel programmables par l'utilisateur comme ceux-ci.
  • Écosystème de capes : connecteurs 2×46 broches, clavetage mécanique autour de la prise Ethernet, empilement sur 4 niveaux, EEPROM d'ID par cape (0x54–0x57) pour que le logiciel configure automatiquement les multiplexages de broches — le mécanisme qui a rendu possible le capemanager à overlays device-tree du BBB (SRM ch. 8 "Cape Board Support").
  • eMMC comme périphérique d'amorçage : x8, déterministe face à une carte microSD (le manuel cite explicitement "performance boost due to deterministic properties vs. microSD") (SRM ch. 4).
  • Périphériques temps réel / industriels : 2× CAN, eHRPWM à période haute résolution, 3× eCAP, 3× eQEP (encodeurs), audio McASP0, ADC 12 bits, interruption XDMA vers les PRU (SRM ch. 4/ch. 6).
  • Ingénierie d'alimentation : le PMIC indique si c'est USB ou DC qui alimente la carte (lecture sur I²C), arrêt gracieux par le bouton d'alimentation, pads de test de chargeur de batterie, rail RTC (SRM ch. 6).
  • Matériel ouvert : schémas et fichiers PCB complets publics sur openbeagle.org/beagleboard/beaglebone-black (liés depuis la page de documentation officielle, consultée le 2026-10-13).
  • Audio + vidéo HDMI sur une carte à 45 $ (max 1280×1024 / 1080p24) avec un connecteur série de débogage TTL 3.3 V 6 broches — aucune puce USB-série nécessaire (SRM ch. 4).

− Points faibles

  • Les entrées ADC sont limitées à 1.8 V — pas 3.3 V. Appliquer 3.3 V (ou 5 V) sur une broche AIN endommage le SoC ; l'alimentation analogique VDD_ADC (P9_32) délivre 1.8 V et AGND (P9_34) doit être référencé correctement (SRM ch. 4 "AIN (1.8V MAX)"). Cela surprend tous ceux qui viennent de l'hypothèse ADC externe du Pi ou des niveaux logiques 3.3 V.
  • La logique 5 V tue les connecteurs : "Do not connect 5V logic level signals to these pins or the board will be damaged", et ne jamais appliquer de tension sur les broches E/S pendant que la carte est hors tension — la rétro-alimentation à travers les diodes ESD endommage le processeur et annule la garantie (SRM ch. 7).
  • Pièges de l'alimentation par USB : USB fournit ≤500 mA alors que le pic d'amorçage du noyau atteint 460 mA avant toute charge ; alimentée par USB, la rail VDD_5V est absente sur les connecteurs (seulement le SYS_5V dérivé du PMIC), donc les capes gourmandes en 5 V dysfonctionnent silencieusement ; la documentation recommande un 5 V externe pour les charges capes/USB-hôte (SRM ch. 6 "USB Power").
  • Le mode d'extinction RTC-only peut endommager la carte : l'état "SLEEP" du TPS65217 a été reconnu comme présentant un risque de dommage matériel sur la plupart des révisions BeagleBone ; mainline fournit ti,pmic-shutdown-controller pour que poweroff force à la place l'état OFF, avec un long commentaire explicatif et des liens vers des fils linux-omap (commentaire TPS de am335x-bone-common.dtsi, spinics msg118585).
  • Les broches SYSBOOT sont sur P8 : P8_27…P8_46 (le bus LCD) sont les broches SYSBOOT/mode d'amorçage de l'AM335x et les entrées du framer HDMI ; les piloter depuis une cape avant la montée de SYS_RESETn peut changer l'ordre d'amorçage et la carte ne démarre plus. Le framer ne peut pas non plus être mis hors tension (il serait rétro-alimenté par ses broches d'entrée) (SRM ch. 8).
  • L'eMMC vole 10 broches des connecteurs : l'eMMC est accroché aux broches GPMC/MMC1 partagées avec P8 ; utiliser ces broches exige de maintenir l'eMMC en reset, et le bus GPMC est "not accessible in some cases" à cause de cela (SRM ch. 4/ch. 8).
  • P9_22 / GPIO3_21 transporte l'horloge audio HDMI 24.576 MHz : c'est une horloge entrée vers le SoC ; pour réutiliser cette broche en GPIO il faut désactiver l'horloge (ce qui tue l'audio HDMI) (SRM ch. 4).
  • 1 GHz est une promesse de grade de vitesse, pas une garantie pour les premiers siliciums : mainline active l'OPP "Nitro" 1 GHz pour cette carte avec le commentaire "All PG 2.0 silicon may not support 1GHz but some of the early BeagleBone Blacks have PG 2.0 silicon which is guaranteed to support 1GHz" (am335x-boneblack.dts).
  • Pièges du périphérique d'amorçage : RESET ne re-sélectionne pas le périphérique d'amorçage (maintenir BOOT pendant qu'on cycle l'alimentation) ; une image eMMC cassée dont les en-têtes ROM sont valides garde la ROM engagée sur MMC1 — le bouton boot est l'échappatoire (SRM ch. 5).
  • Bugs de révision de production corrigés tardivement : glitch SYS_RESETn (Rev A6), échecs de démarrage 1 sur 20 (Rev A6A, C25), gigue HDMI (Rev A5C), problème de démarrage du PHY Ethernet ayant nécessité un reset GPIO ajouté en Rev C3 (SRM ch. 2, issue #4).
  • Chaîne à outils PRU historiquement non prise en charge par TI sur cette plateforme : le System Reference Manual l'affirme sèchement : "This feature is not supported by Texas Instruments" et pointe vers le paquet communautaire am335x_pru_package (SRM ch. 6) ; aujourd'hui un pilote remoteproc mainline existe (drivers/remoteproc/pru_rproc.c), mais la documentation et l'outillage PRU restent fragmentés entre SDK TI, paquets communautaires et mainline.
  • Limites pour un usage bureau : Ethernet 10/100, 512 MB de RAM, mono-cœur, 1080p seulement à 24 Hz — très bien comme contrôleur E/S, médiocre comme mini-PC.
  • Retour d'expérience expert expert — expert-pi-like
    • Je tourne sur la BBB depuis pas mal de temps et je confirme les points forts : les deux coeurs PRU sont vraiment uniques pour le controle temps reel, et l'ecosysteme de capes avec les EEPROMs d'ID simplifie enormement la vie. Par contre, attention aux pieges documentes. Le plus classique est l'ADC … — expert-pi-like
    • Merci pour le rappel sur l'ADC, je l'ai lu dans la doc mais j'ai failli faire l'erreur en connectant un capteur analogique. Petite question sur l'alimentation : je compte alimenter la carte par USB pour un petit projet domotique. Si je branche une cape qui demande un peu plus de courant, est-ce que… — maker_nouveau
    • @maker_nouveau L'USB te donne seulement 500mA max, or le boot seul consomme deja 460mA. Si ta cape tire dessus, tu vas avoir des coupures instables ou le port qui coupe. Le vrai piege c'est que le rail 5V officiel n'est pas sur les pins headers quand tu es en USB (seule la tension derivee du PMIC e… — hacker_labs

Retours et projets de la communauté

  • PRUDAQ — 40 MSPS data acquisition on the PRUs

    PRUDAQ — 40 MSPS data acquisition on the PRUs — (Google Research, open source): (unverified au 2026-10-13) — interne hébergé sur site interne, statut vivant vérifié le 2026-10-13. Projet documenté dans la fiche beaglebone-black (SBC) ; rôle : approfondir la p…

  • Les entrées ADC sont limitées à 1.8 V — pas 3.3 V. Appliquer 3.3 V (ou 5 V) sur une broche AIN endommage le SoC ; l'alimentation analogique VDD_ADC (P9_32) délivre 1.8 V et AGND (P9_34) doit être référencé correctement (SRM ch. 4 "AIN (1.8V MAX)"). Cela surprend tous ceux qui viennent de l'hypothèse ADC externe du Pi ou des niveaux logiques 3.3 V.
  • La logique 5 V tue les connecteurs : "Do not connect 5V logic level signals to these pins or the board will be damaged", et ne jamais appliquer de tension sur les broches E/S pendant que la carte est hors tension — la rétro-alimentation à travers les diodes ESD endommage le processeur et annule la garantie (SRM ch. 7).
  • Pièges de l'alimentation par USB : USB fournit ≤500 mA alors que le pic d'amorçage du noyau atteint 460 mA avant toute charge ; alimentée par USB, la rail VDD_5V est absente sur les connecteurs (seulement le SYS_5V dérivé du PMIC), donc les capes gourmandes en 5 V dysfonctionnent silencieusement ; la documentation recommande un 5 V externe pour les charges capes/USB-hôte (SRM ch. 6 "USB Power").
  • Le mode d'extinction RTC-only peut endommager la carte : l'état "SLEEP" du TPS65217 a été reconnu comme présentant un risque de dommage matériel sur la plupart des révisions BeagleBone ; mainline fournit ti,pmic-shutdown-controller pour que poweroff force à la place l'état OFF, avec un long commentaire explicatif et des liens vers des fils linux-omap (commentaire TPS de am335x-bone-common.dtsi, spinics msg118585).
  • Les broches SYSBOOT sont sur P8 : P8_27…P8_46 (le bus LCD) sont les broches SYSBOOT/mode d'amorçage de l'AM335x et les entrées du framer HDMI ; les piloter depuis une cape avant la montée de SYS_RESETn peut changer l'ordre d'amorçage et la carte ne démarre plus. Le framer ne peut pas non plus être mis hors tension (il serait rétro-alimenté par ses broches d'entrée) (SRM ch. 8).
  • L'eMMC vole 10 broches des connecteurs : l'eMMC est accroché aux broches GPMC/MMC1 partagées avec P8 ; utiliser ces broches exige de maintenir l'eMMC en reset, et le bus GPMC est "not accessible in some cases" à cause de cela (SRM ch. 4/ch. 8).
  • P9_22 / GPIO3_21 transporte l'horloge audio HDMI 24.576 MHz : c'est une horloge entrée vers le SoC ; pour réutiliser cette broche en GPIO il faut désactiver l'horloge (ce qui tue l'audio HDMI) (SRM ch. 4).
  • 1 GHz est une promesse de grade de vitesse, pas une garantie pour les premiers siliciums : mainline active l'OPP "Nitro" 1 GHz pour cette carte avec le commentaire "All PG 2.0 silicon may not support 1GHz but some of the early BeagleBone Blacks have PG 2.0 silicon which is guaranteed to support 1GHz" (am335x-boneblack.dts).
  • Pièges du périphérique d'amorçage : RESET ne re-sélectionne pas le périphérique d'amorçage (maintenir BOOT pendant qu'on cycle l'alimentation) ; une image eMMC cassée dont les en-têtes ROM sont valides garde la ROM engagée sur MMC1 — le bouton boot est l'échappatoire (SRM ch. 5).
  • Bugs de révision de production corrigés tardivement : glitch SYS_RESETn (Rev A6), échecs de démarrage 1 sur 20 (Rev A6A, C25), gigue HDMI (Rev A5C), problème de démarrage du PHY Ethernet ayant nécessité un reset GPIO ajouté en Rev C3 (SRM ch. 2, issue #4).
  • Chaîne à outils PRU historiquement non prise en charge par TI sur cette plateforme : le System Reference Manual l'affirme sèchement : "This feature is not supported by Texas Instruments" et pointe vers le paquet communautaire am335x_pru_package (SRM ch. 6) ; aujourd'hui un pilote remoteproc mainline existe (drivers/remoteproc/pru_rproc.c), mais la documentation et l'outillage PRU restent fragmentés entre SDK TI, paquets communautaires et mainline.
  • Limites pour un usage bureau : Ethernet 10/100, 512 MB de RAM, mono-cœur, 1080p seulement à 24 Hz — très bien comme contrôleur E/S, médiocre comme mini-PC.
  • Premier boot de la BeagleBone Black avec un seul câble mini-USB debutant Schéma : IMG-beaglebone-black-debutant-1-premier-boot-cable-mini-usb.svg — BeagleBone Black reliée à un PC par un câble mini-USB, fenêtre affichant start.htm sur le lecteur USB virtuel, bouton BOOT et jack d'alimentation annotés.
  • Comprendre les triggers en pilotant les 4 LED utilisateur debutant Schéma : IMG-beaglebone-black-debutant-2-leds-user-sysfs-triggers.svg — BeagleBone Black vue de dessus avec les 4 LED utilisateur (heartbeat, mmc0, usr2, usr3) surlignées près du connecteur Ethernet, liste des triggers sysfs en médaillon.
  • Bouton et LED avec Adafruit_BBIO, la bibliothèque historique debutant Schéma : IMG-beaglebone-black-debutant-3-bouton-led-adafruit-bbio.svg — breadboard avec BeagleBone Black : bouton entre P9_11 et GND, LED + 330 Ω sur P8_11, broches P8 et P9 repérées sur la carte.
  • Lire l'ADC 12 bits sans griller le SoC : la règle des 1,8 V intermediaire Schéma : IMG-beaglebone-black-intermediaire-1-adc-1-8v-lecture-iio.svg — pont diviseur de résistance sur la BeagleBone Black : signal 3,3 V entrant, deux résistances, point milieu vers P9_33 (AIN4), P9_32 VDD_ADC 1,8 V et P9_34 AGND repérés, badge « 1,8 V MAX ».
  • Ajouter une horloge temps réel sur le bus I2C des capes intermediaire Schéma : IMG-beaglebone-black-intermediaire-2-horloge-rtc-i2c-bus-cape.svg — module RTC DS3231 avec pile bouton câblé sur P9_19 (SDA) et P9_20 (SCL) + 3,3 V/GND de la BeagleBone Black, bus I2C2 partagé avec les EEPROM de capes (0x54-0x57) en médaillon.
  • Micro-HDMI : exploiter les limites d'affichage de la BBB intermediaire Schéma : IMG-beaglebone-black-intermediaire-3-micro-hdmi-limites-affichage.svg — BeagleBone Black reliée en micro-HDMI à un moniteur, badges « 1280×1024 max » et « 1920×1080 à 24 Hz seulement », broche P9_22 (horloge audio 24,576 MHz) surlignée en avertissement.
  • Capes historiques : capemanager, EEPROM d'identification et pièges des broches avance Schéma : IMG-beaglebone-black-avance-1-capes-legacy-capemanager-eeprom.svg — pile de 4 capes empilées sur les nappes P8/P9 d'une BeagleBone Black, EEPROM I2C 0x54-0x57 en médaillon, zone P8_27 à P8_46 barrée en rouge avec mention « broches SYSBOOT — ne pas piloter ».
  • Programmer les cores PRU : le clignotement temps réel déterministe avance Schéma : IMG-beaglebone-black-avance-2-pru-blink-cores-temps-reel.svg — schéma bloc du PRU-ICSS de l'AM335x (2 cores 200 MHz, 8 Ko de mémoire d'instructions chacun, RAM partagée 12 Ko) relié directement aux broches d'entrée-sortie, Linux tournant à côté sans y toucher.
  • Bus CAN : exploiter les deux contrôleurs DCAN avec can-utils avance Schéma : IMG-beaglebone-black-avance-3-bus-can-dcan-candump.svg — deux BeagleBone Black reliées par un bus CAN différentiel (CAN_H, CAN_L, résistance de terminaison 120 Ω de chaque côté), transceivers SN65HVD230 sur les broches P8_17/P8_18.

Bibliothèque de code — exemples écrits pour cette carte

  • clignotante.py Python

    Le script de mise en jambe sur SBC : une LED branchée sur le connecteur GPIO clignote à 1 Hz. python3-gpiod pilote directement la puce GPIO via le noyau, sans bibliothèque propriétaire.

  • bouton-gpio.py Python

    Un bouton sur le connecteur GPIO déclenche une action à l'appui et au relâchement. Version générique par scrutation de la ligne gpiod avec anti-rebond logiciel de 30 ms.

  • capteur-i2c.sh Bash

    Le réflexe Linux pour tout capteur I2C : balayer le bus avec i2cdetect, vérifier la présence de la puce puis lire quelques registres avec i2cget. Sortie directe dans le terminal, sans écrire une lign…

  • surveillance-temperature.sh Bash

    Sans aucune dépendance, ce script lit le capteur thermique exposé par le noyau Linux, journalise température et fréquence CPU en CSV et affiche une alerte au-delà d'un seuil. Parfait pour dimensionne…

  • capteur-dht11.py Python

    Le pilote Adafruit CircuitPython fonctionne sur Linux standard : il bit-bang le protocole 1 fil du DHT via libgpiod. Le script affiche température et humidité toutes les 2 s, en encaissant les trames…

  • servo-pwm-sysfs.sh Bash

    L'interface PWM du noyau Linux (sysfs) est identique sur toutes les cartes : période 20 ms, impulsion 0,5-2,5 ms. Ce script bash fait balayer un servo sur 3 cycles puis coupe l'alimentation pour évit…

  • serveur-web-capteur.py Python

    Sans aucune dépendance externe, la carte devient un serveur web : une page HTML affiche température du SoC et uptime, un endpoint JSON les expose aux tableaux de bord. Le réflexe réseau pour monitore…

  • reseau-ethernet.sh Bash

    En installation fixe, une IP statique évite de chercher la carte dans le bail DHCP. Le script crée (ou corrige) un profil NetworkManager manuel sur le port Ethernet, puis vérifie la passerelle au pin…

  • journal-cron.sh Bash

    Le binôme cron + script court est l'automate universel de Linux : chaque minute, charge CPU et température sont ajoutées à un CSV avec rotation intégrée. Zéro dépendance, zéro démon, redémarre tout s…

  • veilleur-systemd.py Python

    Une LED en battement + un contrôle de services toutes les secondes : le script devient un démon systemd avec Restart=always, démarré au boot. Le patron de robustesse pour une carte embarquée sans écr…

Exemples et dépôts trouvés en ligne