Ahora que tengo mucho más tiempo podré a trastear a fondo he decidido abrir un hilo oficial dedicado a la placa nviidia
https://www.nvidia.com/es-es/autonomous ... tson-nano/Yo la compre directo desde la web de Nvidia es donde sale mejor de precio 109+~20€ =~130€ aprox con envio incluido . los otros sitios te cobran los aranceles y se puede ir hasta los 150€ sin problemas.
Primero de todo necesitaremos :
Para funcionar a máxima potencia alrededor de 10-12watts se recomienda un jack de 5V 4Amax 2,1mm (puede funcionar con uno de 3A pero mejor 4A) (yo he utilizado un cargador universal de portátil que regulas el voltaje y amperios)
Se puede alimentar por microusb pero un máximo 5v 2,5A lo que hace algo justillo para el modo máximo y tengas que limitarlo el modo de 5watts via comando en el caso que el cargador no sea bueno o tengas cosas conectadas.
SDCard mínimo de 16GB ufs-1

Un esquema de la placa y sobre algunos pines importantes a destacar :
- para hacer switch en la alimentación sí microusb o jack hace falta un jumper en el j48 si queremos alimentar vía jack.
- si queremos sacar el disipador de serie y meterle un ventilador se puede mediante el conector j15
- El j18 está debajo del disipador y sirve para añadir wifi/bluetooth mediante conexión M2 o algún conversor para conectarle un SSD
Eso sí el kernel que lleva por defecto solo permite cargar por sdcard .
Descargamos la imagen desde
https://developer.nvidia.com/embedded/d ... card-imageDesde Windows recomiendan dar formato con
https://www.sdcard.org/downloads/format ... a_windows/y luego grabar la imagen con etcher
https://www.balena.io/etcher (tarda unos 10min aproximadamente en grabar de promedio).
Desde Linux descompromimos el zip y lo copiamos mediante dd
/usr/bin/unzip -p el fichero jetson_nano_devkit_sd_card.zip | sudo /bin/dd of=/dev/sdX (tu partición de la sdcard) bs=1M status=progress
El primer boot puede tardar un poco en procesar ya que
Deberás de aceptar la EULA de NVIDIA
Selecionar el idioma del sistema, del teclado y la zona horaria
Usuario, password, y el hostname.
Y se quedará un rato en update con un bonito popup wait que te esperes y termine de finalizarlo (puede tardar unos 15-20min todo dependiendo de la velocidad de la conexión y SDCARD)
Sí queremos ejecutar binarios que por alguna razón todavía no existen en binario aarch64 64bits como por ejemplo armv7 que es una arquitectura más extendida al ser más antigua
Tan solo bastará con añadir
sudo dpkg --add-architecture armhf
sudo apt-get install libc6:armhf libstdc++6:armhf
El primero para añadir la posible instalación de paquetes armhf y el segundo para las librerias C/C++ necesarias para ejecutar un binario armv7 de 32bits y luego ya solo quedaría instalar las dependencias requeridas de cada paquete pero con la coletilla :armhf .
Como instalar el emulador Drastic de nintendo ds en Nvidia jetson nano
Descargamos el binario lanzado actualmente para las placas odroid
https://github.com/Retro-Arena/binaries ... z?raw=trueInstalamos las librerias requeridas que utiliza el emulador
sudo apt-get install libsdl2-2.0-0:armhf
sudo apt-get install libasound2-plugins:armhf
sudo apt-get install zlib1g:armhf
sudo apt-get install libgtk3-nocsd0:armhf
y luego ya una vez descomprimido nos situamos en el ejecutable drastic ./drastic se abrira la interfaz o bien ./drastic "Rutadeljuego.nds" y se ejecutará automáticamente.
Si bien el dispositivo tiene 4GB es recomendable crear un archivo de swap con 6GB o superior ya que es muy fácil si compilamos algún proyecto mediano-grande supera los 3GB-4GB con facilidad.
Existe scripts facilitando esto como ejemplo :
https://github.com/JetsonHacksNano/installSwapfile./installSwapfile.sh por defecto sin especificar nada te lo creara de 6GB.
Y opcionalmente el script automount ./autoMount.sh en el caso de que donde quieras montarlo sea un usb y quieras hacerle automount cada vez que inicie.
Hay decir que la decodificación de video acelerada vía GPU tiene que ser mediante apoyo Gstreamer o V4L2 y no soporta VDPAU.
El dispositivo responde muy bien en máximo potencia.
En el modo de 5watts lo que hace es desactivar 2 nucleos pasando a tener 2 hilos disponibles y reducir el core de la gpu en este modo no lo recomiendo si la intención es hacer cosas que tiren de CPU.
El dispositivo no está mal salvo la limitación de ram 4GB cualquier cosa actual portada para arm se puede ejecutar y además tiene un añadido que no tienen otras placas similares como el soporte Opengl 4.6 , Vulkan 1.1 (el driver actual se basa en 1.1.85 full compilant) y cuda 10 con el profile 5.3 compatible.
Actualmente no tiene soporte upstream del kernel pero ya se está trabajando en el soporte upstream :
U-boot
https://github.com/thierryreding/u-boot/tree/p3450Y para compilarlo
tools/genboardscfg.py
make O=build/p3450-0000 p3450-0000_defconfig
make O=build/p3450-0000
El nuevo u-boot no es compatible con el kernel 4.9 en ese caso no es necesario compilarlo si quieres mantener dualboot ente 4.9 y 5.x para testeo .
Kernel 5.3
https://github.com/thierryreding/linux/ ... -5.3/p3450Y para compilarlo
make ARCH=arm64 O=build/jetson-nano defconfig
make ARCH=arm64 O=build/jetson-nano -j32
Y solo quedaría copiarlo en la carpeta boot con otro nombre si quieres un dualboot
cp build/jetson-nano/arch/arm64/boot/Image /boot/Image-upstream
cp build/jetson-nano/arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dtb /boot/
Y copiamos los módulos
sudo make ARCH=arm64 O=build/jetson-nano INSTALL_MOD_PATH=/ modules_install
Y editamos el archivo extlinux.conf que está en /boot/extlinux/extlinux.conf
LABEL upstream
MENU LABEL upstream kernel
LINUX /boot/Image-upstream
FDT /boot/tegra210-p3450-0000.dtb
APPEND root=/dev/mmcblk0p1 rw rootwait
Por ahora el soporte upstream no está para uso diario (WIP) sobre todo si se utiliza Displayport que no está todavía soportado o el soporte 4K y 60hz tiene problemas en el kernel 5.x , en ese caso hay que utilizar la rama del kernel 4.9.
Intentaré contestar cualquier duda y proximamente añadiré todo emulador posible en este dispositivo , reproductores como kodi y vlc derivados y cualquier cosa que vaya viendo interesante .
La putada los paquetes Qt compilados que ofrece ubuntu solo tiene soporte Opengl es (seguramente por los otros disipositivos arm pasan de apoyar Opengl desktop..) y eso limita a no tener soporte para algunos emuladores que requiere Opengl 3.3 o 4.3 y toca perder bastante tiempo compilando horas de compilacion para decirle que compile las librerias Qt para Opengl Desktop que te dará mayor compatibilidad con aplicaciones diseñadas para funcionar con el nucleo Opengl desktop.
Este problema no sucede si ejecutamos bajo la build que corre mediante SDL2 si existiese que ya detecta el contexto a ejecutar por defecto.