Debug

De Caninos Loucos
Ir para: navegação, pesquisa

Interface de Debug

A Labrador possui uma interface para debug, essa interface consiste em uma saída serial que utiliza o tradicional protocolo TTL. Essa interface pode ser utilizada para realizar comunicação com o sistema, sendo enviadas por ela os logs e alertas do sistema.

Conexão com o Debug

Para conectar ao debug da serial é necessário observar o modelo da base-board, pois a disposição dos pinos de debug nas placas são alterados.

Para versões Labrador Base-M v1.0a, a disposição dos pinos GND, RX e TX são os da figura abaixo;

Labrador-base-1.0a debug.png

Para versões Labrador Base-M v2.x, a disposição dos pinos GND, RX e TX são os da figura abaixo;

Labrador-base-2.0 debug.png

  • Conecte então o pino RX da Labrador no pino TX do destino, e o pino TX da Labrador no pino RX do destino e também conecte o GND da labrador no GND do destino. Usualmente o destino é um conversor USB-SERIAL(TTL).
  • Configure o destino para operar em uma taxa de 115200bps.
  • Programas como PUTTY e SCREEN podem ser utilizados para auxiliar na comunicação.

Desativando o Debug [Silent Boot] (Em edição)

Algumas vezes pode ser útil desativar o console pela serial, isso torna a UART3 (UART de debug) livre para propósitos gerais como a UART0, mas isso torna o boot difícil para debug. Para realizar essa alteração é necessário a troca do bootloader e quando houver necessidade o u-boot, como mostrado nos passos a frente.

1 - Download do Bootloader: Faça o download do bootloader com console desativado;

  • Para Labradores Coreboard 2.x: silent_bootloader-32bits.
  • Para Labradores Coreboard 3.x: silent_bootloader-64bits.

2 - Troca do Bootloader: use o comando dd para a troca do bootloader;

- $sudo dd if=/*diretório-do-bootloader*/silent-bootloader.bin of=/dev/*device*/ conv=notrunc seek=1 bs=512
- onde /*diretório-do-bootloader*/ deve ser substituído pelo endereço do diretório onde se encontra o binário do bootloader adquirido no passo anterior.
- onde /*device*/ deve ser substituído pelo endereço do dispositivo onde se quer trocar o bootloader, se estiver na Labrador o endereço da memória interna será /dev/mmcblk2.

3 - Download do Uboot(Somente necessário em arquitetura 32 bits, Coreboards 2.x);

  • Faça o download do uboot com console desativado.(silent_uboot-32bits)

4 - Troca do Uboot(Somente necessário em arquitetura 32 bits, Coreboards 2.x)

- $sudo dd if=/*diretório-do-uboot*/silent-u-boot-dtb.img of=/dev/*device*/ conv=notrunc seek=66 bs=512
- onde /*diretório-do-uboot*/ deve ser substituído pelo endereço do diretório onde se encontra o binário do uboot adquirido no passo anterior.
- onde /*device*/ deve ser substituído pelo endereço do dispositivo onde se quer trocar o uboot, se estiver na Labrador o endereço da memória interna será /dev/mmcblk2.

5 - Use o comando sync

- $sudo sync

6 - Use o comando reboot

- $sudo reboot

A Labrador deve agora estar com a serial de Debug desativada, para conferir pode-se utilizar um dispositivo ttl-usb e monitorar em um outro pc durante o boot da Labrador.