Equipamiento/IntelEdison

From Wiki Makespace Madrid
Jump to: navigation, search
</CoreDump> 
Articulo escrito mientras se hacían las pruebas, puede requerir 'Wikificación' posterior

Intel Edison donadas al espacio[...]

La Edison es un modulo compacto que integra en si procesamiento, memoria , almacenamiento y conectividad bluetooth + wifi, ademas es compatible con arduino. En el espacio tenemos dos tipos de 'shields' para ella, una mas grande con pines de arduino, varios botones y un conector usb regular, mas los dos microusbs para operarla. Las mas pequeñas solo tienen los dos microusbs y pads para soldar cabeceras sumando hasta 30 pines de i/o en tres filas.


Noche de pruebas de Javi F:[edit]

-microusbs-

Las shields tienen dos conectores microusb; uno que no enciende la placa y se muestra con un puerto serie, este se usa para el arduino. El otro si que enciende la placa y al arrancar el sistema operativo se muestra al ordenador como un almacenamiento mtp de 1gb y una tarjeta de red conectada directamente. Uno es el de programación y el otro de funcionamiento. Las shields, entre modelos, no tienen los conectores en el mismo sitio, la que tiene pines de arduino esta al revés que la pequeña.


-Software necesario-

Arduino ide con soporte para la edison : http://www.intel.com/support/edison/sb/CS-035180.htm


-Como conectarse a la placa-

El puerto serie de la conexión microusb de programación(la que no enciende la placa y muestra un puerto serie) esta conectada al terminal serie del linux que hay dentro, escupiendo por el serie todos la salida de pantalla y recibiendo el input por ahí también. Nos podemos conectar desde el propio monitor serie del arduino ide, configurándolo para operar a 115200baudios aunque es muchísimo mas cómodo hacerlo con un emulador de terminal serie, en windows la ultima referencia que tengo es hyperterminal, no se si putty igual funciona. En linux se puede hacer con el comando screen que suele venir de serie en casi todas las distros(mac probablemente también):

screen /dev/ttyUSB0 115200,cs8

recuerda que hay que tener permiso de escritura sobre los series... para no 'sudar' hay que añadirse al grupo dialout y reiniciar la sesión X.

adduser mi_usuario dialout


-Por esta terminar podemos observar todo el proceso de arranque asi como operar sobre el bootloader(u-boot)


PSH KERNEL VERSION: b0182727
WR: 20104000
SCU IPC: 0x800000d0  0xfffce92c
PSH miaHOB version: TNG.B0.VVBD.0000000c
microkernel built 23:15:13 Apr 24 2014
PSH loader 
PCM page cache size = 192 KB 
Cache Constraint = 0 Pages
Arming IPC driver ..
Adding page store pool ..
PagestoreAddr(IMR Start Address) = 0x04899000
pageStoreSize(IMR Size)          = 0x00080000

Ready to receive application


U-Boot 2014.04 (Aug 20 2014 - 16:08:32)

Watchdog enabled
DRAM:  980.6 MiB
MMC:   tangier_sdhci: 0
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0 
Target:blank
Partitioning already done...
Flashing already done...
GADGET DRIVER: usb_dnl_dfu
reading vmlinuz
5124192 bytes read in 127 ms (38.5 MiB/s)
Valid Boot Flag
Setup Size = 0x00003c00
Magic signature found
Using boot protocol version 2.0c
Linux kernel version 3.10.17-poky-edison+ (sys_dswci@ncsndgbuild04) #1 SMP PREEMPT Wed Aug 20 16:09:18 CEST 2014
Building boot_params at 0x00090000
Loading bzImage at address 00100000 (5108832 bytes)
Magic signature found
Kernel command line: "root=PARTUUID=012b3303-34ac-284d-99b4-34e03a2335f4 rootfstype=ext4 console=ttyMFD2
earlyprintk=ttyMFD2,keep loglevel=4 systemd.unit=multi-user.target hardware_id=00 g_multi.iSerialNumber=EDITADO"
Starting kernel ...


-Si todo ha ido bien nos recibira con un login:

[  OK  ] Started Login Service.
[  OK  ] Mounted /factory.
Poky (Yocto Project Reference Distro) 1.6 edison ttyMFD2
edison login: 


-Usuario y contraseña por defecto[edit]

El usuario por defecto es root, sin contraseña. de hecho cuando haces login ni te la pregunta:

edison login: root
[  462.004845] systemd-fsck[241]: /dev/mmcblk0p10: recovering journal
[  462.056722] systemd-fsck[241]: /dev/mmcblk0p10: clean, 15/152608 files, 26870/610299 blocks
root@edison:~# 


-Resetear password si se nos ha olvidado[edit]

La unica manera que he encontrado es reflasheando el firmware a traves de U-boot o el script flashall.sh

Actualizar el firmware[edit]

Descargar la imagen de : http://www.intel.com/support/edison/sb/CS-035180.htm,descomprimirla y copiarla directamente sobre el dispositivo de almacenamiento de la Edison, borrando antes todo contenido anterior. despues ejecutar(uno de los tres):

Desde el terminal de la edison

reboot ota

Desde el terminal de U-Boot

run do_ota

Desde el pc de linux (mac probablemente tb)

apt-get install dfu-util coreutils
cd a/donde/se/ha/descomprimido_la_imagen
./flashall.sh


Esta parte me resulto harto engorrosa, no se si era un problema de la versión de firm que traían las placas, pero los métodos a través de la propia placa no me funcionaron, solo pude hacerlo con el flashall.sh desde linux, y con bastantes problemas pues el flasheo es bastante sensible a los cables usb,e intentándolo desde un hub fallaba aleatoriamente, al final al enchufarlas directamente a la placa base se actualizaron bien. Por suerte parece que la placa es bastante resistente al 'brick'.

-En alguno de los flasheos fallidos la edison se quedaba en un estado en el que no activaba el puerto DFU en el arranque, y no es posible transferir el nuevo firmware. Para solucionarlo hay que forzar a que levante el dfu con un comando en U-Boot a traves del terminar serie:

run do_flash

esto debería de hace que entre en modo dfu para que el ./flashall lo reconozca

Primera configuración[edit]

Desde el terminal de la Edison:

configure_edison

Al ejecutarlo nos preguntara:

-Nombre de red de la Edison
-Contraseña
-Configuración wifi




-Links:

-Guias
  https://learn.sparkfun.com/tutorials/edison-getting-started-guide
-Descargas
  http://www.intel.com/support/edison/sb/CS-035180.htm

<Coredump>