[YUN] Problema connessione di rete

Ciao a tutti,

sto avendo un mucchio di problemi con il mio Yun che fino a qualche tempo fa funzionava perfettamente.
Tutto è iniziato quando provando a caricare lo sketch webTemperaturePanel nel log mi ha detto che c'erano problemi nello scrivere sulla sd;
quindi ho cercato su google e dintorni ed ho visto che c'era un aggiornamento sulla pagina di Arduino.cc https://www.arduino.cc/en/Main/Software#toc8, seguendo la procedura consigliata (che non fa perdere la garanzia) ho eseguito l'upgrade come descritto, il led wlan ha lampeggiato circa un minuto e poi si è spento, ho aspettato ancora un po' e poi ho scollegato l'arduino.

Da questo momento in poi il WiFi o la presa ethernet hanno smesso di funzionare.
Ho provato ha tenere premuto il tasto reset-wifi per più di 5 secondi e meno di 30 -> niente
Ho provato ha tenere premuto il tasto reset-wifi per più di 30 secondi -> niente (neache un led che lampeggia)
se connetto la presa ethernet il led rx lampeggia ad intervalli regolari ma il router non rileva nessun dispositivo connesso
L'Access Point integrato non sembra esistere.
Ho provato a caricare alcuni sketch dalla USB e sembrano funzionare:
Blink -> funziona
YunSerialTerminal -> funziona, accetta i comandi per cambiare velocità e anche il comando di shutdown
WiFistatus si blocca all'apertura del bridge
Come IDE ho usato 1.6.9 e 1.6.7 su Windows 7 e 10

Riporto il codice che si ottiene caricando lo YunSerialTerminal e resettando dal bottone lo yun:

U-Boot 1.1.4-dirty (Apr 10 2014 - 15:12:15)

Arduino Yun (ar9331) U-boot

DRAM:  64 MB
Top of RAM usable for U-Boot at: 84000000
Reserving 142k for U-Boot at: 83fdc000
Reserving 192k for malloc() at: 83fac000
Reserving 44 Bytes for Board Info at: 83fabfd4
Reserving 36 Bytes for Global Data at: 83fabfb0
Reserving 128k for boot params() at: 83f8bfb0
Stack Pointer at: 83f8bf98
Now running in RAM - U-Boot at: 83fdc000
Flash Manuf Id 0xef, DeviceId0 0x40, DeviceId1 0x18
flash size 16777216, sector count = 256
Flash: 16 MB
Using default environment

In:    serial
Out:   serial
Err:   serial
Net:   ag7240_enet_initialize...
No valid address in Flash. Using fixed address
No valid address in Flash. Using fixed address
: cfg1 0x5 cfg2 0x7114
eth0: 00:03:7f:09:0b:ad
eth0 up
: cfg1 0xf cfg2 0x7214
eth1: 00:03:7f:09:0b:ad
athrs26_reg_init_lan
ATHRS26: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Hit any key to stop autoboot:  4  3  2  1  0 
## Booting image at 9fea0000 ...
   Image Name:   MIPS OpenWrt Linux-3.18.23
   Created:      2016-05-10   8:20:47 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    1207736 Bytes =  1.2 MB
   Load Address: 80060000
   Entry Point:  80060000
   Verifying Checksum at 0x9fea0040 ...OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80060000) ...
## Giving linux memsize in bytes, 67108864

Starting kernel ...

[    0.000000] Linux version 3.18.23 (admin@compile-01-prod) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r48749) ) #34 Tue May 10 08:20:13 UTC 2016
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 00019374 (MIPS 24Kc)
[    0.000000] SoC: Atheros AR9330 rev 1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 04000000 @ 00000000 (usable)
[    0.000000] User-defined physical RAM map:
[    0.000000]  memory: 04000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x03ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x03ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x03ffffff]
[    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line:  console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ar7240-nor0:256k(u-boot),64k(u-boot-env),14656k(rootfs),1280k(uImage),64k(NVRAM),64k(ART) mem=64M rootfstype=squashfs,jffs2 noinitrd
[    0.000000] PID hash table entries: 256 (order: -2, 1024 bytes)
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Writing ErrCtl register=00000000
[    0.000000] Readback ErrCtl register=00000000
[    0.000000] Memory: 60676K/65536K available (2935K kernel code, 142K rwdata, 332K rodata, 228K init, 201K bss, 4860K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:51
[    0.000000] Clocks: CPU:400.000MHz, DDR:400.000MHz, AHB:200.000MHz, Ref:25.000MHz
[    0.000000] Calibrating delay loop... 265.42 BogoMIPS (lpj=1327104)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.080000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.080000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090000] NET: Registered protocol family 16
[    0.090000] MIPS: machine is Generic AR71XX/AR724X/AR913X based board
[    0.110000] Switched to clocksource MIPS
[    0.120000] NET: Registered protocol family 2
[    0.120000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.120000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.120000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.120000] TCP: reno registered
[    0.120000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.120000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.130000] NET: Registered protocol family 1
[    0.130000] RPC: Registered named UNIX socket transport module.
[    0.130000] RPC: Registered udp transport module.
[    0.130000] RPC: Registered tcp transport module.
[    0.140000] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.140000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.150000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.160000] NFS: Registering the id_resolver key type
[    0.160000] Key type id_resolver registered
[    0.160000] Key type id_legacy registered
[    0.160000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.170000] msgmni has been set to 118
[    0.170000] io scheduler noop registered
[    0.170000] io scheduler deadline registered (default)
[    0.170000] Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled
[    0.180000] ar933x-uart: ttyATH0 at MMIO 0x18020000 (irq = 11, base_baud = 1562500) is a AR933X UART
[    0.180000] TCP: cubic registered
[    0.190000] NET: Registered protocol family 17
[    0.190000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.190000] 8021q: 802.1Q VLAN Support v1.8
[    0.200000] Key type dns_resolver registered
[    0.200000] bootconsole [early0] disabled

Ho anche provato a fermare l'autoboot quando fa il conto alla rovescia e risponde ai comandi, ho digitato help e mi da la lista dei comandi disponibili e poi ho fatto restart.

a me non sembra che dica qualche errore però chiedo aiuto perché di linux non ci capisco molto.

Grazie in anticipo.

Ciao,
essendo il tuo primo post, ti chiederei cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con attenzione il REGOLAMENTO ... Grazie.

Guglielmo

gpb01:
Ciao,
essendo il tuo primo post, ti chiederei cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con attenzione il REGOLAMENTO ... Grazie.

Guglielmo

Si scusa se non l'ho fatto prima.

Comunque ho continuato a cercare e alla fine ho deciso di provare a fare il reflash di U-boot, kernel, Linux. La procedura va a buon fine ma ancora non ho connessione con l'ambiente linux, dopo il riavvio mi esce lo stesso log del primo post (cioè ci mette meno di 1 secondo ad avviarsi?) nella descrizione dice che il primo riavvio è più lento (??)

Come posso fare per vedere se linux risponde ai comandi della mcu?
Forse è un problema di bootloader della mcu?

Se ti colleghi in ssh come root@IP_YUN riesci a fare login e a controllare l'ambiente Linux ?

Se la parte Linux funziona hai provato gli esempi che sono nell'IDE, per "Bridge" ?

Un ultimo dubbio ... di quanto tempo fa è la scheda ? Dietro cosa c'è scritto Arduino.cc o Arduino.org ?

Guglielmo

La scheda l'ho comprata l'anno scorso, esattamente il 26/06/2015 e sopra c'è scritto arduino.cc

Ma il l'arduinoISP che ho usato per il bootloader è .org non è che mi ha messo il bootloader sbagliato?
Per usarlo ho dovuto aprire l'ide .org perché l'altra non lo riconosceva.

Per l'ssh ora provo e ti faccio sapere.

EDIT: con ssh non posso accedere perché non ho un ip dove accedere; quando collego l'arduino al router (con il cavo) sul router non viene rilevato nessun ip per l'arduino.

Ho provato a caricare degli sketch, a volte si caricano, a volte si interrompono sull'uploading.
comunque lo sketch "process" degli esempi del bridge quando apro il terminale non mostra nulla.
Inoltre ho notato che ogni volta che carico uno sketch l'arduino si disconnette dalla seriale e si riconnette su un'altra porta COM, se per esempio prima era COM10 e dopo il caricamento è COM11. (ma non lo fa sempre)

Laku83:
Per usarlo ho dovuto aprire l’ide .org perché l’altra non lo riconosceva.

L’ultima versione (Arduino.cc IDE 1.6.9) dovrebbe … puoi provare :wink:

Guglielmo

No attualmente sto usando la 1.6.9.
Seleziono come programmatore "ArduinoISP" e non "Arduino as ISP"
e poi seleziono "burn bootloader" e mi da questo errore

avrdude: Error: Could not find USBtiny device (0x2341/0x49)
Error while burning bootloader.

forse perché l'ide cerca l'arduino ISP.cc, ma l'arduino ISP.org ha VID 0x2a03?

... evidentemente si ... ::slight_smile:

Mi spiace ... questa faccenda sta creando solo difficoltà agli utenti ... :frowning:

Guglielmo

non c'è modo di aggiungere programmatori all'IDE?

o mettere il firmware dello yun.cc nell'IDE.org?

da dove vengono presi i firmware quando si fa il burn?

Altrimenti lo devo ricomprare nuovo :frowning: ed ora che è fuori produzione troverò solo .org?

Oppure potrei provare a fare il burn con un arduino nano, ma non so se funziona

Ho avuto un idea... al lavoro ho un altro arduino yun (funzionante), c'è un modo di copiare tutto il software da un arduino all'altro?

Cercando su google non trovo la procedura comunque con il serial terminal vedo che la versione linux è molto più vecchia

   Image Name:   MIPS OpenWrt Linux-3.8.3
   Created:      2013-08-19  14:23:28 UTC

nel changelog di openwrt su github non ho trovato riferimenti a una versione così vecchia

Ma magari con un'altra versione potrebbe sbloccarsi la situazione che ne pensi?

Il bootloader lo trovi nella cartella dentro ad Arduino hardware\arduino\avr\bootloaders\caterina\ ... vedi se prendendo quello di .cc e copiando nell'IDE di .org riesci a programmarlo.

Ovviamente salva l'originale per poterlo rimettere al suo posto.

Guglielmo

Il trucco di sostituire i file funziona alla grande.
Ma anche cambiando il bootloader non succede nulla --> non credo sia questo.

Sul forum ho trovato questa discussione:

che indirizza a questa guida:
http://www.arduino.org/learning/tutorials/advanced-guides/how-to-upgrade-lininoio-os-from-u-boot

Ed ora la scheda pare funzionare, anche se ho un differente OS.
Ho notato che rispetto alla guida su .cc ci sono dei comandi per cancellare dei settori di memoria e poi copiarci i nuovi dati; infatti seguendo la guida su arduino.cc sembrava che ogni volta che riavviavo avevo sempre le stesse versioni di u-boot, kernel, e OS.

Forse seguendo la guida sopra usando le immagini openwrt originali riesco a tornare al punto di partenza, ma non sono sicuro che gli indirizzi di memoria siano gli stessi.

Comunque per ora mi accontento... non voglio rischiare di perdere tutto.

PS: come password ho messo: dobbiamopregare :slight_smile: :slight_smile:

Grazie Guglielmo per il supporto morale e non, può essere che ci incontriamo un giorno, io vado spesso ai maker faire a roma.

Laku83:
può essere che ci incontriamo un giorno, io vado spesso ai maker faire a roma.

Volentieri, io quest'anno sicuramente sarò li Sabato 15/10 ... :slight_smile:

Guglielmo