Arduino Yun
Jump to navigation
Jump to search
Contents
Arduino Yun
Crash Course
- if you don't know the yun password ask someone that would know in person
- all of the cs yuns use the same password
- getting started http://arduino.cc/en/Guide/ArduinoYun
- Arduino IDE 1.5.8 BETA must be used, get it here: http://arduino.cc/en/Main/Software
- micro usb port is used for power and for uploading sketches
- IP address can be used in a web browser or to ssh
- SD cards and flash drives are automatically mounted to /mnt/
- OS is OpenWrit and uses OPKG (similar to apt-get) http://arduino.cc/en/Tutorial/YunPackageManager
- has Python 2.7
- advised that C++ be cross-compiled
- GCC exists in version 1.5+
- the "Bridge" library creates a bridge between Arduino and Linux
- read this for more information: http://arduino.cc/en/Reference/YunBridgeLibrary
- or this for an example: http://arduino.cc/en/Tutorial/Bridge
- example Web pages can be added to /www/ and accessed normally
- source REST has a built-in interface for pins under /data
- source Pins 21, 22, and 23 can be accessed in /sys/class/gpio/ (in linux)
- example LuCI web interface can be hacked somehow (magic?)
each Yun
- is numbered
- has a designated box
- has a label on it with its number and the last two octets of its IP address (I.E. cs4 130.63 is csyun4 with the IP 159.28.130.63)
- 159.28 is Earlham's IP address
Resources
need sorting ->
Current Yuns
csyun1
- registered
- configured
- 90A2DAF510F8
- ec2011
- 159.28.130.243
- owner: charliep
- OpenWRT v1.0
csyun2
- registered? (no internet access)
- configured?
- 90A2DAF30034
- ec2009
- 159.28.130.242
- owner: charliep
- OpenWRT v1.0
csyun3
- registered
- configured
- 90A2DAF210E7
- ec2012
- 159.28.130.191
- owner: charliep
- OpenWRT v1.0
csyun4
- ARC yun
- registered
- configured
- 90A2DAF031AC
- ec2016
- 159.28.130.63
- owner: charliep
- OpenWRT v1.0
csyun5
- registered
- configured
- 90A2DAF9035F
- ec2017
- 159.28.131.13
- owner: charliep
- OpenWRT v1.0
csyun6
- registered
- configured
- 90A2DAF51147
- ec2024
- 159.28.131.16
- owner: charliep
- OpenWRT v1.0
csyun7
- ARC yun
- registered
- configured
- 90A2DAF30459
- 159.28.131.46
- owner: charliep
- OpenWRT v1.0
Details
Package Manager
Uses a package manager called opkg. Very similar to apt-get and yum. Has a healthy selection of software.
Comes preinstalled with
- python 2.7
- node.js
- vim / nano
Boot
- The Arduino side boots up almost instantaneously.
- However, the Linux side takes about as long as a normal PC to boot up.
- The white light seems to indicate that the wifi is working as well as other things.
Sketch Upload
- You can't upload sketches through wifi on ECWireless. It works on normal LANs. (Why?)
- It's normal for the USB to lose connection and to immediately reestablish connection. The Arduino programmable USB seems to be piggybacking on linux as a virtual COM port.
- Sometimes the recognized COM port will change after the first sketch upload. It seems this is due to the linux side swapping to the correct Arduino COM port.
- If the connection is not reestablished (why?) you can use the "USB stops being recognized" bit below.
Serial
- Serial talks via the Arduino serial monitor
- Bridge establishes communication between Arduino and Linux processors
- Console uses bridge to establish a console (similar to serial) that can be accessed with telent from the Yun's local terminal
troubleshooting
Network
I had trouble getting it on ECWireless.
- I went to go to ITS and had them register the Yuns manually. ITS has registered our Yuns' as "college owned" so that they don't require authentication.
- In the Yun web configuration panel I set them to connect to ECWireless and then was able to ssh to them directly.
- However, I could not upload sketches via wifi. This is due to the configuration of ECWireless.
It's possible to get a Yun's IP by uploading a ShellCommand sketch and running the "ifconfig" command.
- very useful when on a non-static IP network
- For example, this could be used to get a Yun's IP address when it's on Guest Wireless.
USB stops being recognized
This fixed my problem: arduino form
- nano /usr/bin/run-avrdude
- Change the efuse value from FB to CB
- execute "/usr/bin/run-avrdude /etc/arduino/Caterina-Yun.hex"