I am using the Arduino Yun board and I have a strange problem with the (unexpected) loss of connection. That is, when I start Arduino Yun then it works as expected and the connection through Ethernet works; after a while (approximately between two and five minutes) the connection stops to work and in order to solve the problem I must manually access the LuCI panel, go to the Network >> Interfaces menu and click the "Connect" button on the right side of the "WAN eth1" row present in the page. Making so the Internet connection is re-enabled and it starts working again but after a little more I have the same problem, again. To solve the problem I must repeat the above actions again and again.
I really do not understand what could be the problem. Why is it happening? Where can I check and how to debug what is happening?
Note: If it can be useful as information, I wrote a simple sketch that performs HTTP requests every ten seconds. Through the Process library on the Arduino side it runs a Python script that I added to the '/root' directory on the Linino side. The script makes use of cURL and the HTTP response (max 20 kb) is stored to a file in the '/tmp' directory.
After some search, I discovered that my problem could be related to this one, so to this and finally to this: "ar9331's usb stability issue". In few words, it could be a hardware problem related to the AR9331 chip at all.
I tried to upgrade from hotplug2 to standard udev at Openwrt as said here by sonnyyu but it did not solve the problem.
I report what I made by following the sonnyyu' istructions (not at all):
1. Access the Linino shell (through ssh):
ssh root@arduino.local
2. Run the command:
opkg update
3. Run the command:
opkg remove hotplug2
4. Run the command (I use the vim editor, you can use the nano):
I didn't found the above code in the '/etc/init.d/boot' file. So, I didn't do anything with that since I thought sonnyyu wanted to mean to comment out it, if present. 6. Run the command:
reboot
Note: After running the above command I was logget out from the shell. I waited quite a while but I can no longer access the shell so I removed and restored power to the Arduino Yun. 7. Run the command:
vim /etc/init.d/udev
8. Add the following code to the '/etc/init.d/udev' file:
The upgrade from hotplug2 to standard udev might be work around to fix AR9331 has a hardware bug where spurious RF emissions affect the USB PLL. Nothing to do with wifi connection but USB stability issue.
The better method is use kernel r39212 and later which has patch (work around for USB stability issue.) , or replace AR9331 with new revision one which the hardware problem is fixed ?
sonnyyu:
The upgrade from hotplug2 to standard udev might be work around to fix AR9331 has a hardware bug where spurious RF emissions affect the USB PLL. Nothing to do with wifi connection but USB stability issue.
OK, I got it.
sonnyyu:
The better method is use kernel r39212 and later which has patch (work around for USB stability issue.) , or replace AR9331 with new revision one which the hardware problem is fixed ?
What issues can I face relating the USB stability? Where I can know more about?