Cubieboard A10 com conector SATA

A Cubieboard A10 é uma placa já meio “idosa”, mas tem enredo. Lançada em 2012, deveria ser suportada por montes de distribuições, não fosse ela a placa que é. Sua CPU é um Cortex-A8 de 1GHz, possui 512M ou 1G de DDR3, dependendo da versão (beta ou final). A parte mais interessante provavelmente é a memória flash de 4GB interna, mas também possui um slot micro SD. A placa gráfica é uma Mali-400 MP.

A Cubieboard1 (ou “A10”) tem aceleração de vídeo CedarX capaz de decodificar vídeo em 2160p. Possui também uma porta HDMI 1080p, uma porta fast-ethernet, duas portas USB, uma porta USB OTG e 1 receptor IR.  O grande diferencial talvez seja a porta SATA, que “quase” torna a placa útil para duplicadores forense como o Tableau. O número de GPIO é impressionante; 96 pinos dispostos na placa, incluindo barramento I2C, SPI e LVSD. Seu tamanho é de 10×6 cm.

…e baixando o sistema…

Bom, nem sempre que tenho algo em mãos é para elogiar. A experiência inicial com essa placa foi terrível; todos os links para downloads de sistema quebrados, mas não pode-se esperar menos de um produto mantido por chineses. Por pouco a placa não vira peso de papel.

Quando encontrei os links (até então não sabia que estavam quebrados), começaram os problemas na seleção da imagem; com desktop, sem desktop, VGA, HDMI, SD, NAND etc. Isso já é desestimulante, o fabricante não tem compatibilidade nem entre os produtos que ele próprio fabrica.

Na tentativa de baixar um sistema por torrent, imagine minha surpresa ao ver 0 Bytes sendo baixados. Em suma, só achei lixo, nenhuma imagem de sistema, nada funcional. Procurei por um sistema ARMbian e enfim, uma luz!

Ao baixar o sistema, o transferi da maneira tradicional:

dd if=Armbian_20.08.1_Cubieboard_buster_current_5.8.5.img of=/dev/sdb

Depois, abri o conteúdo do cartão e modifiquei o arquivo /etc/passwd, deixando a linha do usuário root assim:

root::0:0:root:/root:/bin/bash

Com isso, entro no sistema sem precisar digitar a senha do usuário root e após estar no sistema, basta voltar o x para a devida posição no arquivo, modificar a senha e reiniciar.

…e ligando a placa…

O desafio seguinte foi encontrar uma fonte 5V@2A com o respectivo conector. Por sorte tenho uma Orange Pi com o mesmo tipo de conector. O cabo estava junto dela, então só precisei ligar à fonte USB.

Primeiro boot da Cubieboard A10

Não precisava ter editado o arquivo /etc/passwd. O ARMbian pede senha no primeiro boot e também solicita a criação de um usuário. Não tem WiFi, portanto conectei um cabo de rede entre a placa e meu notebook, então configurei algumas regras de firewall para fazer forwarding. Na interface de rede da Cubieboard adicionei o IP 172.16.0.2 e na interface de rede do meu computador coloquei 172.16.0.1:

ifconfig eth0 172.16.0.1 up

... e na Cubieboard:

ifconfig eth0 172.16.0.2 up

NAND na Cubieboard A10

Não foi possível instalar o sistema na NAND, mesmo após alguns processos para ter acesso a ela:

modprobe nand
depmod -a
partprobe

Pelo menu armbian-config também não consegui habilitar a nand. Como sabia que haveria uma reinicialização do sistema, configurei previamente a interface de rede para não precisa conectar monitor e teclado novamente. Editei o arquivo /etc/network/interfaces e adicionei:

auto eth0
iface eth0 inet static
    address 172.16.0.2
    netmask 255.255.0.0
    gateway 172.16.0.1

Cubieboard A10

Depois de nada me dar acesso à nand, nem o comando and-sata-install, nem através do armbian-config, encontrei um link que orienta na modificação do uboot e do kernel. Como não acho que vale o esforço, fiquei só no boot do sistema mesmo. Em suma, um espaço que deveria estar disponível para uso é praticamente uma lenda.

Dá pra brincar com a placa, mas custa tanto quanto uma Raspberry, é inferior e problemática. De qualquer modo, é preciosa para minha coleção de placas ARM, vou guardar com carinho.

 

Revisão: Ricardo Amaral de Andrade

Djames Suhanko

Sobre o autor: Djames Suhanko é Perito Forense Digital. Já atuou com deployer em sistemas de missão critica em diversos países pelo mundão. Programador Shell, Python, C, C++ e Qt, tendo contato com embarcados ( ora profissionalmente, ora por lazer ) desde 2009.