Troubleshooting
Permission denied
If you try to connect to a mote and receive a permission error, you may need to add yourself to the dialout group. The error may look something like the following:
/home/user/contiki/tools/sky/serialdump-linux -b115200 /dev/ttyUSB0 connecting to /dev/ttyUSB0 (115200) /dev/ttyUSB0: Permission denied make: *** [login] Error 255
Trying the following command which should give the desired output
make TARGET=sky sky-motelist
(sky can be replaced by the mote which is being used e.g z1)
The desired output
../../tools/sky/motelist-linux Reference Device Description ---------- ---------------- --------------------------------------------- M4A7J5HF /dev/ttyUSB0 Moteiv tmote sky
This means it is a common serial port connection problem with Ubuntu 12.04 LTS.
To resolve the issue do the following.
sudo apt-get remove modemmanager sudo adduser $USER dialout (or) sudo usermod -a -G dialout $USER // adds the user to the dialout // replace $USER by the username sudo reboot id -Gn
And check now if the device is attached to the dialout user group.
ls -l /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 0 Mar 5 19:58 /dev/ttyUSB0
There is no need to mess with dev rules or permissions.
Issue with make login
If you are trying to execute the serial-dump application (contiki/tools/sky/serialdump-linux) and see the message: "No such file or directory" or "Command not found", it means that you are running in a 64-bit operating system that does not have proper 32-bit libraries installed. Since serialdump-linux is a pre-compiled 32-bit tool you need to execute the following command to install the necessary libraries:
sudo apt-get install ia32-libs
If the above doesnot work
Then, try few commands like:
ldd serialdump-linux
The output look similar to the following:
ldd serialdump-linux linux-gate.so.1 => (0xf772d000) libc.so.6 => /lib32/libc.so.6 (0xf75b4000) /lib/ld-linux.so.2 (0xf772e000)
Then it means that you have to install 32-bit packages. Remember to add i386 architecture or you won't be able to install 32-bit packages:
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install ia32-libs