2017-06-07 2 views
0

Je rencontre un problème en essayant de télécharger l'application "blink" sur les motes. Je ne peux pas exécuter la commande make telosb reinstall bsl,/dev/ttUSB0 ou make telosb reinstall alors que dans le répertoire apps/Blink, ce qui m'empêche de poursuivre mon projet. J'ai essayé en tant qu'utilisateur, superutilisateur et en tant que root. J'ai décrit ci-dessous les réponses des commandes variables. [Ubuntu 16.04, TinyOS 2.1.2, version NCC 1.4.2, la version 1.3.6 nescc]TinyOS ne compilant pas/téléversant à TelosB mote

(A) à la racine et la commande make telosb je reviens:

mkdir -p build/telosb compiling BlinkAppC to a telosb binary ncc -o build/telosb/main.exe -Os -fnesc-separator=__ -Wall -Wshadow -Wnesc-all -target=telosb -fnesc-cfile=build/telosb/app.c -board= -DDEFINED_TOS_AM_GROUP=0x22 -DIDENT_APPNAME=\"BlinkAppC\" -DIDENT_USERNAME=\"root\" -DIDENT_HOSTNAME=\"liam-Latitude-E\" -DIDENT_USERHASH=0x9236fe46L -DIDENT_TIMESTAMP=0x59384a62L -DIDENT_UIDHASH=0xdc08609fL BlinkAppC.nc -lm compiled BlinkAppC to build/telosb/main.exe 2538 bytes in ROM 56 bytes in RAM msp430-objcopy --output-target=ihex build/telosb/main.exe build/telosb/main.ihex writing TOS image

(B) Avec utilisateur régulier et la commande make telosb je reviens:

mkdir -p build/telosb /bin/sh: 1: cannot create build/telosb/ident_flags.txt: Permission denied /home/liam/tinyos-main/support/make/ident_flags.extra:13: recipe for target 'ident_cache' failed make: *** [ident_cache] Error 2

(C) Avec un super-utilisateur et la commande sudo make telosb je reviens:

make: *** No rule to make target 'telosb'. Stop.

(D) à la racine et la commande make telosb reinstall je reviens:

cp build/telosb/main.ihex build/telosb/main.ihex.out found mote on /dev/ttyUSB0 (using bsl,auto) installing telosb binary using bsl tos-bsl --telosb -c /dev/ttyUSB0 -r -e -I -p build/telosb/main.ihex.out MSP430 Bootstrap Loader Version: 1.39-goodfet-8 Mass Erase... Transmit default password ... Invoking BSL... Transmit default password ... Current bootstrap loader version: 1.61 (Device ID: f16c) Changing baudrate to 38400 ... MSP430 Bootstrap Loader Version: 1.39-goodfet-8 Mass Erase... Transmit default password ... Invoking BSL... Transmit default password ... Current bootstrap loader version: 1.61 (Device ID: f16c) Changing baudrate to 38400 ... Traceback (most recent call last): File "/usr/bin/tos-bsl", line 1918, in <module> main(0); File "/usr/bin/tos-bsl", line 1843, in main speed=speed, File "/usr/bin/tos-bsl", line 1218, in actionStartBSL self.actionChangeBaudrate(speed) #change baudrate File "/usr/bin/tos-bsl", line 1345, in actionChangeBaudrate self.serialport.setBaudrate(baudrate) AttributeError: 'Serial' object has no attribute 'setBaudrate' /home/liam/tinyos-main/support/make/msp/bsl.extra:45: recipe for target 'program' failed make: *** [program] Error 1

(E) considérant que, un utilisateur régulier et make telosb reinstall je reviens:

cp build/telosb/main.ihex build/telosb/main.ihex.out cp: cannot create regular file 'build/telosb/main.ihex.out': Permission denied /home/liam/tinyos-main/support/make/msp/msp.rules:92: recipe for target 'setid' failed make: *** [setid] Error 1

J'ai été partout sur Internet et en ligne foru ms et n'ont pas encore trouvé de solution. J'ai fait des recherches autour de (D) et j'ai découvert que python 2 aurait peut-être changé le nom de la variable 'setBaudRate'. Je ne suis pas sûr de savoir comment changer ça non plus.

Nous vous remercions de votre temps et de votre aide!

édition: ajout de versions ncc et nescc.

Répondre

0

This La réponse de dépassement de pile s'applique à TinyOS.

Il s'avère donc que pyserial 3.0.1 n'est pas compatible avec l'application TinyOS, Blink. Je suis assez certain que pyserial 3.0.1 est venu avec le paquet pour TinyOS. Pour résoudre ce problème, utilisez la commande sudo pip install "pySerial>=2.0,<=2.99999". Pour moi, il a rebondi:

The directory '/home/liam/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. The directory '/home/liam/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag. Collecting pySerial<=2.99999,>=2.0 Installing collected packages: pySerial Found existing installation: pyserial 3.0.1 DEPRECATION: Uninstalling a distutils installed project (pySerial) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project. Uninstalling pyserial-3.0.1: Successfully uninstalled pyserial-3.0.1 Successfully installed pySerial-2.7

Mais l'application clignement encore téléchargé et a bien fonctionné.