Google is committed to advancing racial equity for Black communities. See how.
Esta página se ha traducido con Cloud Translation API.
Switch to English

BEAGLEBONE Negro

Border Router OpenThread (OTBR) proporciona soporte para la BEAGLEBONE Negro plataforma (BBB).

Requisitos de hardware:

  • 5V adaptador externo de CA para energizar
  • Un 8 GB o tarjeta microSD más grande ( "tarjeta SD" en esta guía)
  • Una plataforma OpenThread soportado (como la TI CC2652 ) para la conectividad de red de rosca en un diseño RCP

Para utilizar la acreditación con OTBR:

  1. Descargar el firmware y escribir la imagen en la tarjeta SD.
  2. Acreditación de arranque desde la tarjeta SD .
  3. Ampliar la imagen de la tarjeta SD para crear suficiente espacio para construir e instalar OTBR.
  4. Construir e instalar OTBR .

descargar firmware

  1. Firmware recomendada es expansible para el BEAGLEBONE mediante tarjeta microSD :
    • Debian 9.1 31/08/2017 SD de 4 GB LXQT
    • Nombre del archivo: bone-debian-9.1-lxqt-armhf-2017-08-31-4gb.img.xz
  2. Escribir la imagen a un niño de 8 GB o tarjeta SD más grande, utilizando una herramienta como Etcher o Win32 disco Imager .

Arranque desde la tarjeta SD

BEAGLEBONE Negro

Acreditación puede iniciarse desde la memoria flash incorporada o en la tarjeta SD. Para utilizar la acreditación con OTBR, debe arrancar desde la tarjeta SD, como la memoria flash incorporada no es lo suficientemente grande como para construir e instalar OTBR.

Para arrancar la acreditación de la tarjeta SD:

  1. Inserte la tarjeta SD.
  2. Desconectar la alimentación.
  3. Pulse y mantenga pulsado el botón de arranque.
  4. Conecte la fuente.
  5. Cuando los LED comienzan a parpadear, suelte el botón de arranque.

Ampliar la imagen de la tarjeta SD

imágenes de Linux para Beagle Bone Negro (BBB) ​​son deliberadamente creadas pequeña para que la imagen se puede colocar en cualquier tarjeta SD de 4 GB (o de a bordo de 4 GB de memoria flash), luego se expande, según sea necesario. En total hay aproximadamente 300 MB de espacio libre. Eso puede no ser suficiente espacio para instalar y construir el enrutador de frontera OpenThread utilizando la acreditación.

Para resolver este problema:

  1. Escribir la imagen de Linux en una tarjeta SD más grande (al menos 8 GB).
  2. Expandir la partición ~ 4 GB Linux de la imagen a un poco menos que el tamaño de toda la tarjeta SD. Por ejemplo, si se utiliza una tarjeta de 8 GB SD, ampliarlo a ~ 7 GB. Para una tarjeta de 16 GB, ampliarlo a ~ 15 GB.
  3. Arrancar la acreditación de la tarjeta SD.

particiones de la tarjeta SD

Los datos en una tarjeta SD es efectivamente una matriz continua de sectores de datos. Los sectores se numeran empezando por 0 y terminando en el Sector N algún lugar alrededor XX GB, el número exacto última depende de la tarjeta SD real.

El sector 0 siempre contiene una tabla de particiones MS-DOS. Una tabla de particiones MS-DOS puede contener entre 1 y 4 entradas de partición. Cada partición es una serie continua de sectores de X a Y en algún lugar dentro de los límites de la tarjeta SD. Esto se repite para cada una de las 4 particiones posibles. Típicamente, las particiones se encuentran en orden, con un número ( 0 a N ) de los sectores no utilizados al final. Este "cierto número de sectores no utilizados" ( SOME_N ) se puede utilizar para su ventaja más adelante.

Al escribir una imagen en una tarjeta SD, la escritura comienza en el Sector 0 y progresa a SOME_N , dependiendo del tamaño de la imagen. Lo que no podemos hacer es estirar la partición alrededor de la imagen, que no es posible. En su lugar, pensar en un marco alrededor de un lienzo. El marco de imagen es la partición y la imagen son los datos. Lo que puede hacer es reemplazar el marco de imagen existente por uno más grande, y ampliar el lienzo dentro:

  1. Eliminar la partición Linux existente sin borrar los datos. Ha eliminado el marco de imagen, pero la imagen está todavía presente en el lienzo.
  2. Crear una nueva partición de Linux que comienza exactamente donde comenzó la anterior, pero termina cerca del extremo de la tarjeta SD. Se ha creado un marco de imagen más grande. La imagen-los datos todavía está allí en el lienzo. No se ha movido y no estaba corrompido por esta operación.
  3. Utilizar una herramienta específica del sistema de archivos para hacer crecer el sistema de archivos dentro de los límites de la nueva partición. La tela se estira para llenar el nuevo marco de imagen, más grande.

Paso 1: Identificar la partición de datos actual

  1. Arrancar la acreditación de la tarjeta SD.
  2. Inicie la sesión como root :
    sudo bash
    
  3. Identificar la partición de datos de tarjetas SD:
    root@beaglebone:/home/debian# df -hT /
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/mmcblk0p1 ext4  3.3G  2.8G  295M  91% /
    
    El p1 sufijo en el Filesystem de campo es la convención de nombres para la Partición 1. El propio dispositivo es /dev/mmcblk0 . En este ejemplo, sólo 295 MB son libres. Esto no es suficiente espacio para construir e instalar OTBR.

Paso 2: Crear el nuevo, partición mayor

  1. Ejecutar fdisk en el dispositivo (tarjeta SD):
    root@beaglebone:/home/debian# fdisk /dev/mmcblk0
    
    Welcome to fdisk (util-linux 2.25.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
  2. Imprimir la tabla de particiones actual para encontrar el sector de inicio:
    Command (m for help): p
    Disk /dev/mmcblk0: 7.2 GiB, 7744782336 bytes, 15126528 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0xca52207f
    
    Device         Boot Start     End Sectors  Size Id Type
    /dev/mmcblk0p1 *     8192 6963199 6955008  3.3G 83 Linux
    
    El valor del Start de campo es el sector de inicio para la partición de destino. Se debe aparecer con el mismo nombre de la partición como en el paso 1, con un Type de Linux . En la salida anterior, el sector de arranque es 8192 .
  3. Eliminar la partición existente:
    Command (m for help): d
    Selected partition 1
    Partition 1 has been deleted.
    
  4. Crear la nueva partición, utilizando un número de partición de 1, el mismo sector a partir de la partición anterior ( 8192 en este ejemplo), y un tamaño que es 1 GB menos que el tamaño de la tarjeta SD. Por ejemplo, si se utiliza una tarjeta de 8 GB SD, especificar un tamaño de +7G . Para una tarjeta de 16 GB SD, especificar un tamaño de +15GB .
    Command (m for help): n
    Partition type
    p   primary (0 primary, 0 extended, 4 free)
    e   extended (container for logical partitions)
    Select (default p): p
    Partition number (1-4, default 1): 1
    First sector (2048-15126527, default 2048): 8192
    Last sector, +sectors or +size{K,M,G,T,P} (8192-15126527, default 15126527): +7G
    
    Created a new partition 1 of type 'Linux' and of size 7 GiB.
    
  5. Las nuevas versiones de fdisk le piden para borrar el viejo disco ext4 firma. No borre esta firma. De lo contrario, los datos se corrompen y toda la imagen se vuelve inútil.
    Partition #1 contains a ext4 signature.
    
    Do you want to remove the signature [Y]/No: n
    
  6. Escribir la nueva tabla de particiones en el disco y salir de fdisk :
    Command (m for help): w
    The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Re-reading the partition table failed.: Device or resource busy
    
    The kernel still uses the old table. The new table will be used at the next
    reboot or after you run partprobe(8) or kpartx(8).
    

Paso 3: Cambiar el tamaño del sistema de archivos

Utilice resize2fs para redimensionar el sistema de archivo de imagen al tamaño de la partición recientemente ampliada. Esta herramienta se expande o se contrae un sistema de archivos.

  1. Reinicie el BBB.

    1. Algunas imágenes pueden lanzar una fsck de error en el arranque. fsck se ejecuta automáticamente en el arranque y comprueba la consistencia del sistema de archivos.

       Loading, please wait...
      [    4.873285]  remoteproc1: failed to load am335x-pru0-fw
      [    4.918852]  remoteproc1: request_firmware failed: -2
      [    4.924046] pru-rproc 4a334000.pru0: rproc_boot failed
      [    5.052414]  remoteproc1: failed to load am335x-pru1-fw
      [    5.069652]  remoteproc1: request_firmware failed: -2
      [    5.074889] pru-rproc 4a338000.pru1: rproc_boot failed
      fsck: error 2 (No such file or directory) while executing fsck.ext4 for /dev/mmcblk0p1
      fsck exited with status code 8
       
    2. Si obtiene este error, ignorarlo y esperar unos 20 segundos para que el indicador de conexión a aparecer.

  2. Inicie la sesión como root :

    sudo bash
    
  3. Cambiar el tamaño del sistema de archivos para la partición de destino:

     root@beaglebone:/home/debian# resize2fs /dev/mmcblk0p1
    resize2fs 1.43 (17-May-2016)
    Filesystem at /dev/mmcblk0p1 is mounted on /; on-line resizing required
    old_desc_blocks = 1, new_desc_blocks = 1
    The filesystem on /dev/mmcblk0p1 is now 1835008 (4k) blocks long.
     
  4. Reinicie el BBB.

  5. Si se encuentra con el fsck problema, reconstruir las initramfs , que es el sistema de archivos RAM inicial utilizado durante el arranque de Linux.

    sudo update-initramfs -u
    update-initramfs: Generating /boot/initrd.img-4.4.54-ti-r93
    
  6. Reinicie el BBB. Ésta deberá arrancar sin el fsck error.

Construir e instalar OTBR

Ver Construir y configuración para obtener instrucciones sobre la construcción e instalación de OTBR.

Clonar una tarjeta SD re-configurado (opcional)

Una tarjeta SD re-configurado con la partición de Linux para cambiar el tamaño de la acreditación puede ser clonado para facilitar su distribución.

El problema: Muchas herramientas visuales de leer toda la tarjeta SD, incluyendo la zona de libre después del final de la partición y hasta el último sector y no ofrecen una manera de leer sólo una parte de la imagen. Cada tarjeta SD tiene un número diferente de sectores buenos y malos, y el tamaño total de bytes de la nueva tarjeta SD puede ser menor (7.999 GB) que la imagen redimensionada (8,0 GB). En este caso, la imagen redimensionada no puede encajar en la nueva tarjeta SD.

La solución: utilizar un tamaño de partición que es ligeramente más pequeño que el tamaño completo de la tarjeta SD. La Expand la tarjeta SD imagen procedimiento utiliza +7G como el nuevo tamaño de la partición para una tarjeta de 8 GB SD. Esto produce una imagen que es lo suficientemente pequeño como para caber con seguridad en cualquier tarjeta SD de 8 GB comparables (sin tener en cuenta los sectores defectuosos) sin dejar de ser lo suficientemente grande como para construir e instalar OTBR.

Utilice el sector final de la partición de datos para el cálculo de todo el tamaño en bytes de la "imagen de datos" y truncar el archivo IMG en ese desplazamiento de bytes. El método más simple es utilizar el truncate de comandos. El truncate de comandos es una herramienta estándar de línea de comandos de Unix, y también está presente en la distribución de MS Windows Git Bash de MSYS.

  1. Como root , ejecute fdisk en el dispositivo (tarjeta SD):

     root@beaglebone:/home/debian# fdisk /dev/mmcblk0
    
    Welcome to fdisk (util-linux 2.25.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
     
  2. Imprimir la tabla de particiones actual para encontrar el sector de fin:

     Command (m for help): p
    Disk /dev/mmcblk0: 7.2 GiB, 7744782336 bytes, 15126528 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0xca52207f
    
    Device         Boot Start      End  Sectors Size Id Type
    /dev/mmcblk0p1       8192 14688255 14680064   7G 83 Linux
     

    En este ejemplo, el sector final es 14688255 .

  3. Dejar de fdisk y calcular el tamaño total de la imagen:

    1. La última partición termina en el sector 14688255 .
    2. Cada sector es de 512 bytes.
    3. El sector de arranque de una tarjeta SD es siempre 0 . Añadir 1 byte para dar cuenta de este sector.
    4. El tamaño total es: (14688255 + 1) * 512 = 7520387072
  4. Leer la imagen tarjeta SD en un .img archivo, usando una herramienta como Etcher o Win32 disco Imager .

  5. Truncar el archivo de imagen con el tamaño total calculado:

     root@beaglebone:/home/debian# truncate -s 7520387072  myimage.img
     
  6. Copiar el archivo de imagen truncada con otras tarjetas SD para su distribución.