Primeiras impressões do ODROID-XU

ODROID-XU

    É difícil hoje no cenário hobbyista de embarcados alguém não conhecer a hardkernel, empresa sul-coreana responsável pelos produtos "ODROID U" e "ODROID X", e seus sucessores "ODROID U2" e "ODROID X2", todos de grande sucesso comercial não só pelo seu preço como pela ótima configuração de hardware que permite o uso até como pequenos desktops.

 

    A empresa ataca novamente agora sendo a primeira a lançar comercialmente um dispositivo de desenvolvimento que tem o já controverso octacore da Samsung (Exynos 5410), o primeiro SoC do mercado implementando a estratégia big.LITTLE da ARM - quatro velozes processadores Cortex-A15 funcionando em conjunção com outros quatro processadores Cortex-A7, mais lentos mas muito mais eficientes em utilização de energia. É inclusive curioso perceber que um integrador não tão ligado ao mercado corporativo esteja na frente das inovações - será uma mudança de direção do mercado?

 

    ODROID-XU é o nome do dispositivo e vem em duas versões: a simples - chamada simplesmente de ODROID-XU, e disponível pelo preço-base de US$ 169 (que aumenta em pelo menos US$ 30 com o frete e é razoável comprar pelo menos uma eMMC de 16 GB pra usá-lo, o que sai mais US$ 39,90), e o mais sofisticado ODROID XU+E, que se diferencia por ter ferramenta de análise de energia integrada com quatro sensores de corrente e voltagem. Para os interessados na análise de desempenho e consumo do dispositivo sob diversas condições de stress, a versão XU+E é essencial (e não há jeito de atualizar um XU para se tornar XU+E, é preciso comprar novo dispositivo).

 

 

As novidades do ODROID-XU

 

 

    Dado que os produtos ODROID já são amplamente conhecidos, nada mais justo que apresentar o ODROID-XU comparando-o a uma versão anterior de grande sucesso. Para isso foi escolhido seu antecessor ODROID-X2.

ODROID-X2 e ODROID-XU
ODROID-X2 (esquerda) e ODROID-XU (direita)

 

 

SoC

 

 

    O X2 (que diga-se de passagem, ainda está à venda por US$ 135) tem o Exynos 4412, um SoC competente, com quatro cores Cortex-A9 de 1.7 GHz, 2 GB de RAM DDR2 e GPU Mali400 quad. O ODROID-XU tem o SoC Exynos 5410 com quatro cores Cortex-A7 de 1.2GHz (LITTLE) e quatro cores Cortex-A15 de 1.6 GHz, 2GB de RAM LPDDR3 e GPU PowerVR SGX544MP3.

 

 

Conectores e periféricos

 

 

    Enquanto seu antecessor tem 6 conectores USB 2.0 e uma MicroUSB para adb/mass storage, o ODROID-XU tem 4 conectores USB 2.0, um conector Host USB 3.0 e um conector USB 3.0 OTG tipo A-B. Esse conector talvez seja o mais insólito do XU, pois é (ainda) pouco conhecido.

Alguns conectores do ODROID-XU
USB OTG 3.0, MicroUSB A-B, MicroSD e MicroHDMI

 

    O XU pode bootar tanto pelo cartão MicroSD quanto por uma memória NAND "eMMC" opcional, sendo isso configurável por dip switches na placa.

 

    O XU possui várias características herdadas do seu antecessor X2. Se conecta ao vídeo por uma interface MicroHDMI, jogando a porta MIPI LCD para a parte inferior da placa; tem uma porta serial (conector Molex5268-04, que aceita um conversor USB CP2104) e vem com ethernet 10/100. O áudio pode sair pelo MicroHDMI ou pelo conector de 3,5mm e como uma diferença a se notar, não há conector para microfone. Como o XU tem USB 3.0 que tem alta velocidade, você pode utilizar esta saída para um adaptador de gigabit ethernet ou SATA3, ambos vendidos pela hardkernel.

 

    Uma novidade é o dispositivo vir envolto em um case de plástico que era algo que faltava ao X2 (na foto, em um case de acrílico comprado separadamente). O dispositivo também se diferencia por vir com cooler, diferente do dissipador anterior. Ambos os dispositivos têm um led para "ligado" e outro para indicar o estado de boot/operação.

 

    Enquanto o ODROID-X2 tem 50 GPIOs, o ODROID-XU vem com 30 (com a pinagem descrita na página de uso inicial, tendo 15 pinos digitais de uso geral e um analógico de 12 bits). Se você planeja usar o dispositivo para microeletrônica, fique atento que ele trabalha com níveis lógicos de 1.8 Volts, diferente dos 5V de um Arduino ou dos 3.3V de outros dispositivos ARM.

 

    Por fim, o conector de energia usado é de 5V/4A e já vem incluído.

 

 

Software e documentação

 

 

    Com seu foco no mercado hobbyista, o que mais interessa à hardkernel é ter o hardware pronto primeiro com mínimo software para depois expandi-lo, tanto em funcionalidade quanto em documentação e suporte. Sendo assim, o BSP do ODROID-XU consiste do Android 4.2.2 com aceleração de hardware funcionando e, no momento de redação deste artigo, também já existe um BSP do Ubuntu 13.04 com kernel 3.4, com modo gráfico mas ainda sem aceleração de hardware. Uma curiosidade interessante sobre a hardkernel é que um de seus desenvolvedores é um brasileiro - Mauro Ribeiro - e você o verá frequentemente anunciando releases e ajudando usuários nos fóruns.

 

    O boot é feito em quatro etapas explicadas na página de uso inicial - cuja referência pode ser meio difícil de achar, e que tem também a valiosa informação de como configurar os dip switches de boot. Este modo de boot utiliza o software U-boot e caso se deseje modificar para uso próprio, é preciso utilizar fontes diferentes para cada etapa; a primeira etapa é um blob fechado provido pela Samsung e a segunda etapa, uma vez compilada, precisa ser enviada à hardkernel para que ela assine com sua chave privada para torná-la bootável.

 

    Toda a documentação restante, os softwares e o processo de suporte da hardkernel são feitos pelos fóruns da empresa. Navegando pelos fóruns específicos do XU você poderá encontrar tópicos anunciando novos BSP (Android, Ubuntu, Fedora e outros que vão aparecendo com o amadurecimento da plataforma e também contribuições de seus usuários) e documentações, assim como muita discussão geral sobre o dispositivo. Quando houver instruções detalhadas sobre uso dos GPIO do ODROID-XU, por exemplo, elas aparecerão em um tópico fixo promovido pelos administradores, assim como o post contendo novas versões do kernel.

 

    O kernel Linux usado tanto pelo Android quanto o Ubuntu atualmente liberado para o XU é o 3.4.5 e como tal ainda não tem o modo de Global Task Scheduling, também conhecido como MP, que permite usar os 8 cores simultaneamente (e tratá-los separadamente, ao invés de em pares). Ao fazer o clássico cat /proc/cpuinfo você verá somente 4 cores, cujo processamento pode estar ocorrendo em um Cortex-A7 ou Cortex-A15 no momento - algo somente visível atualmente pelas ferramentas de análise do ODROID XU+E.

 

    A gravação de BSP para uso inicial do dispositivo pode ser um pouco complicada para novatos. Em especial, o método de gravação do Android terá variações caso seja feito na eMMC ou em um cartão MicroSD (isso não ocorre com o Ubuntu). Caso se compre a eMMC, ela já vem gravada com o Android pronto para bootar; a compra da eMMC inclui um adaptador para conectá-la ao computador como se fosse um MicroSD, conforme se vê na foto.

eMMC
A eMMC sendo removida e conectada ao gravador de eMMC (incluso na compra dela)

 

    Embora no caso de uso do Ubuntu a aceleração por hardware ainda não esteja funcionando, é esperado que isso esteja pronto em poucas semanas com a receita para isso disponível nos fóruns, em novas versões da BSP -- como ocorreu com os outros modelos de ODROID.

 

ODROID-XU com Ubuntu
ODROID-XU sendo usado como desktop comum rodando Ubuntu 13.04, com interface XFCE (visto que o Unity não funciona devido à falta do OpenGL)

 

Conclusão

 

 

    O ODROID-XU é um dispositivo acessível e poderoso, e sendo representante de uma tecnologia tão promissora como a big.LITTLE, é uma ferramenta valiosa para uso educacional. Seu poder de processamento e sistemas operacionais disponíveis também o torna mais que adequado para exploração do uso como desktop, media center ou ainda central de jogos. Para a redação deste artigo, preparamos um pequeno benchmark - que não leva em conta a GPU - em relação a outros dispositivos ARM e um PC. Usamos o Unixbench 5.1.3, baseado na suíte de benchmarks da revista Byte. A tabela está ordenada do menos veloz ao mais veloz, com o PC (um Athlon quad-core de 3 GHz) representando 100%.

 

Dispositivo

Distribuição

SoC (CPUs)

MHz

Placar

%

CuBox

Ubuntu 12.10 (com memória reservada para Vídeo RAM)

Marvell Armada 510 (1x Cortex-A9)

800

88.7

03.57

Raspberry Pi

Debian GNU/Linux 7.1 (Raspbian)

Broadcom BCM2835 (1xARM1176JZF-S)

700

100.8

04.05

Beaglebone Black

Ubuntu 13.04

TI Sitara AM3359 (1 x Cortex-A8)

1000

133.1

05.35

Cubieboard

Linaro 12.11 / Ubuntu 12.04

Allwinner A10 (1 x Cortex-A8)

1000

166.1

06.68

CuBox

Ubuntu 12.10 (sem vídeo RAM)

Marvell Armada 510 (1x Cortex-A9)

800

168.7

06.79

PCDuino

Linaro 12.11 / Ubuntu 12.04

Allwinner A10 (1 x Cortex-A8)

1000

188.2

07.57

UG802

Ubuntu 12.10

RK3066 (2 x Cortex-A9)

1200

413.8

16.64

Nexus 4

Ubuntu Touch 13.10

Qualcomm Snapdragon S4 Pro APQ8064 (4 x Krait-200)

1700

436.2

17.54

Chromebook

Ubuntu 13.04

Exynos 5250 (2 x Cortex-A15)

1700

558.1

22.45

ESBC-3200

Linaro 12.03 / Ubuntu 11.10

i.MX6 Quad (4 x Cortex-A9)

1000

594.8

23.92

Nexus 7 (v.2012)

Ubuntu 13.04

Nvidia Tegra 3 (4 x Cortex-A9)

1300

624.3

25.11

Tronsmart T428*

Ubuntu 12.04

RK3188 (4 x Cortex-A9)

1600

675.0

27.15

GK802*

Ubuntu 12.04 ARMEL

i.MX6 Quad (4 x Cortex-A9)

1000

688.7

27.70

ODROID X2

Linaro 12.11 / Ubuntu 12.04

Exynos 4412 (4 x Cortex-A9)

1700

706.0

28.40

ODROID XU

Ubuntu 13.04

Exynos 5410 (4 x Cortex-A15 + 4 x Cortex-A7)

1600 & 1200

909.5

36.58

PC Comum

Ubuntu 13.04

AMD Athlon II X4

3000

2486.3

100.00

Fontes úteis sobre o dispositivo

 

 

Página do produto na hardkernel

Anúncio do produto no sítio CNX Software

Ubuntu 13.04 para o ODROID-XU

Getting started do ODROID-XU

Repositório de imagens dos ODROID

Perfil de Mauro Ribeiro no fórum da hardkernel

Vídeo do youtube com unboxing do dispositivo

NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Cláudio Sampaio
Formado em engenharia de computação, perfil misto de administrador de sistemas Unix e desenvolvedor de software com anos de experiência, "Patola", como é conhecido, tem paixão por sistemas Linux e software livre. Envolveu-se com o Movimento Maker e explora as vantagens do uso de software livre e, quando possível, hardware livre em seus tópicos.

14
Deixe um comentário

avatar
 
9 Comment threads
5 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
7 Comment authors
Luis FerreiraMateus SilvaCláudio SampaioSandro VieiraMarcos Duque Cesar Recent comment authors
  Notificações  
recentes antigos mais votados
Notificar
Matheus Quick
Visitante
Matheus Quick

super interessante,

Octavio Tosta
Visitante
Octavio Tosta

Boa noite,

Gostaria de saber o melhor jeito para comprar esta e outros embarcados de sites do exterior.

Graato.

Luis Ferreira
Visitante
Luis Ferreira

Boa Noite, Assisti um video sobre Raspberry Pi e o que com ele poderia fazer e fiquei empolgado em fazer um HTPC . Entao gostaria de colocar um USB-DVD para reproduzir DVD's sem a necessidade de copia-los para um HD externo. Comprei as Keys necessarias para poder assistir os filmes, de um certo modo ele reproduz mas as vezes ele se perde e fica lento e as vezes trava. Assisti a varios Tutoriais falando sobre o assunto e tambem nao reproduz da maneira esperada. A pergunta que gostaria de fazer eh se o seu produto consegue reproduzir discos de DVD's… Leia mais »

trackback

[…] Ótimo review no Embar­ca­dos sobre o ODROID-XU da Hard­ker­nel.Primeiras impressões do ODROID-XU […]

trackback

[…] octacore big.LITTLE para hobbyistas. Poucos meses depois do lançamento do ODROID-XU que analisamos aqui, uma nova edição do aparelho, chamada ODROID-XU Lite, foi lançada: é basicamente o mesmo […]

trackback

[…] octacore big.LITTLE para hobbyistas. Poucos meses depois do lançamento do ODROID-XU que analisamos aqui, uma nova edição do aparelho, chamada ODROID-XU Lite, foi lançada: é basicamente o mesmo […]

Mateus Silva
Visitante
Mateus Silva

Excelente, demostração do dispotiv, ainda não o conhecia e gostei bastante também dessa compração de desempenho entre varios dispositivos.

Sandro Vieira
Visitante
sandro

Caro Sampaio gostaria de ter sua opinião sobre picuntu, ubuntu com kernel voltado para

RK3066 e futuramente o RK3188, se ele seria suficiente para construir um home theater (xbmc), ou o se o sistema Android embarcado nesses hardware daria conta. grato por vossa atenção,

Cláudio Sampaio
Visitante

O picuntu ainda não consegue rodar a decodificação de vídeo por hardware, ou seja, muitos vídeos nele serão decodificados por software e terão interrupções e falhas. E olha que o suporte 3D dele é legal, ele já vem inclusive com os binários do Quake3 pra OpenGL/ES... Infelizmente, via de regra, é difícil conseguir suporte a aceleração de hardware em "Linux" que não seja android em ARM - é difícil pra 3D e ainda mais difícil pra codificação e decodificação de vídeos. Então nesse sentido o Android é mais adequado. E isso foi pra RK3066, porque pra RK3188 nem temos ainda… Leia mais »

Sandro Vieira
Visitante
sandro

Obrigado pela clareza pretendo me aprofundar no assunto, mas a aceleração de vídeo provavelmente se dará no Mali 400(correto?). Pretendo adquirir um Tronsmart rk3188. grato por vossa atenção

Cláudio Sampaio
Visitante

Sim, a aceleração de (codificação/decodificação de) vídeo do RK3066 é pela Mali-400MP4 - que é a mesma do RK3188. Tenho um tronsmart T428 (RK3188) e um bom balanço entre Android/Linux é usar "Complete Linux", um programa livre disponível no Google Play que instala uma distribuição Linux de sua escolha chrooteada dentro do Android. Como o SoC RK3188 tem 2GB de RAM, dá pra rodar com tranquilidade, e você pode até mesmo rodar um sshd dentro do Linux que funcionará. Só não terá acesso à aceleração de hardware do Android, mas poderá por exemplo ver o ambiente desktop usando VNC. Atualização:… Leia mais »

Sandro Vieira
Visitante
sandro

Eu pretendia usar o linux pois na minha opinião o XBMCc deve perder rendimento no Android se eu usar filmes com bitrate alto. Eu pretendendo também tentar compilar o Gentoo no rk3188, mas pelo jeito esse procedimento deverá demorar dias... o que voce me recomenda ? Eu atualmente lido com tc65(hardware) e outra pessoa faz a programação em java no equipamento, o software faz gerenciamento remoto...

Cláudio Sampaio
Visitante

Compilar o gentoo? Veja, a arquitetura ARM não é como x86. Dá muito mais trabalho colocar uma distribuição pra funcionar do que em um PC. Se você não estiver com vontade de se dedicar mesmo a criar uma derivação do gentoo para o RK3066 ou RK3188, não vale nem a pena tentar, porque não é só questão de compilar executáveis, é de conseguir o código correto e assegurar opções adequadas do kernel, reconhecimento de hardware (muito mais complicado se ainda não estiver usando flattened device tree), conseguir combinar algumas bibliotecas ou firmwares proprietários como os da Mali ou wireless, e… Leia mais »

Marcos Duque Cesar
Visitante
Marcos Duque Cesar

Excelente artigo, obrigado.