Is TelosB mote compatible with Contiki-OS? - contiki

I found exp5438 and z1 motes, which have TI MSP430x as a MCU, in the Contiki code tree, and we know that TI MSP430 is the TelosB mote's microcontroller.
I would like to know if TelosB motes are compatible with Contiki ?

The telosB mote is compatible with Contiki OS, in fact I am using them with Contiki. To program them, in case you are using Instant Contiki, you will need to install the GCC for the MSP430 micro controller. You can use the next command:
sudo apt-get install gcc-msp430
On the other hand, I think to solve the problem of your answer I think you just need to be root. So try the next:
sudo -s
make TARGET=sky hello-world.upload
I hope that help you out.
Cheers!

currently I am using telosb to run contiki applications. I followed the official site tutorial and apparently if u do make TARGET=sky it compiles the source files. However, doing make TARGET=sky hello-world.upload does not work. Shows
make sky-reset sky-upload
make[1]: Entering directory `/home/user/contiki-2.6/examples/hello-world'
make -k -j 1 sky-reset-sequence
make[2]: Entering directory `/home/user/contiki-2.6/examples/hello-world'
Done
make[2]: Leaving directory `/home/user/contiki-2.6/examples/hello-world'
make -j 1 sky-upload-sequence
make[2]: Entering directory `/home/user/contiki-2.6/examples/hello-world'
Done
make[2]: Leaving directory `/home/user/contiki-2.6/examples/hello-world'
make[1]: Leaving directory `/home/user/contiki-2.6/examples/hello-world'
rm hello-world.ihex
which according to the official site tutorial means that the board is not connected. I am very certain it is connected. Also, make login never shows anything for me since the previous command didnt work.
Eventually, a friend of mine discovered a way to flash contiki applications into telosb. However, you need TinyOS development environment in your Instant Contiki. You can find information on setting up TinyOS environment in Ubuntu on www.eetutorials.com.
This doesn't seem like a proper way of doing it but well so far it works for me when running simple applications
Step 1:
Compile your applications by doing:
make TARGET=sky application-name
Step 2:
msp430-objcopy application-name.sky -O ihex application-name.ihex
sudo tos-bsl --telosb -c /dev/ttyUSB0 -r -e -I -p application-name.ihex
However, make login still doesn't show anything hence I have been seeing my printf outputs
via Serial Port Terminal application which need to be installed. My guess is that contiki supports sky but not really for telosb? I am no expert and I can't tell the difference between the 2 boards. However, hope this information help and hope a contiki expert can further clarify on this.
Cheers

telosb mote is the same as a tmote sky or sky. The name is all the same platform.
I dont know from which vendor you have the board, but they have to work.
I am also using sky motes with contiki and i had no complications from the beginning.
Try to use the code in the following site: Unreadable output results when typing "make login"
This will print a message every second.
PS: Try to update your question if you found more information, dont add an answer since it confuses people.

Related

Sawtooth network and CoopEdge - installation problem with dockerfile

I'm learning about blockchain and now I'm starting with Sawtooth network as I have heard that it's quite popular. I came across and research paper about CoopEdge and it's very interesting (github link: https://github.com/coopedge/prototype).
However, I don't know clearly how to make this work. I personally send an email and still don't have the response so I have to try it with basic knowledge (blindly, somehow). There are two folder sawtooth-core and sawtooth-poer. I went with poer because the publication was talking about it. There are two type of dockerfile - docker-compose.yml and docker-compose-installed.yaml. I installed the first one with docker-compose and there was no problem. However, when I tried to install the latter one I keep getting the error:
Step 9/13 : RUN export VERSION=$(./bin/get_version) && sed -i -e "0,/version.*$/ s/version.*$/version\ =\ \"${VERSION}\"/" Cargo.toml && /root/.cargo/bin/cargo deb --deb-version $VERSION
---> Running in 7d244fc29e30
/bin/sh: 1: ./bin/get_version: Permission denied
91mcargo-deb: Argument to option 'deb-version' missing
I tried several methods by searching the internet but no luck so far. I also tried to install with root (sudo -i) but still it doesn't work at all.
Another thing is I don't know the second docker-file is mandatory for installation as there is no document or guidance provided by the author.
I appreciate any help that could solve this permission problem. Thank so much.
P.s: I'm using virtual machine with Ubuntu 18.04.

What is the difference between make and make -j5?

I have been trying to include OpenCV extra modules by following the link OpenCV Contrib. After solving several errors obtained during the cmake command, when I did make -j5, it stopped giving error
[ 27%] Built target IlmImf
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
When I ran simple make command, it started compiling and making the targets what happens when we make OpenCV in the build directory.
I again then tried make -j5 but this time I received some other error while make again compiled.
I wanted to know what's the differnce between make and make -j5 !!
Thanks in advance for the reply !!
-j [jobs], --jobs[=jobs] Specifies the number of jobs (commands) to run simultaneously. If there is more than one -j option, the last one is effective. If the -j option is given without an argument, make will not limit the number of jobs that can run simultaneously.
This is from man make. Errors are the same, but compilation process can encounter them in different order

msp430 flasher in Contiki (exp5438 uploading)

I'm trying to upload the blink.c file in Contiki on a exp5438 board. I'm running Instant Contiki 2.6 on my MacBook inside VirtualBox.
When I try to do the upload to the board, it gives me this error for the msp430 flasher! Is there a work around which can help me run the blink program on the board? I'm really pulling my hair out on this. :D
msp430flasher -n msp430x5438a -e ERASE_MAIN -w blink.hex -v -z [VCC]
/bin/sh: 1: msp430flasher: not found
make: *** [test-blink.upload] Error 127
Help appreciated!
You need to install the MSP430Flasher tool from TI (available for win32 and linux), and also of course a MSP430 FET progammer: http://processors.wiki.ti.com/index.php/MSP430_Flasher_-_Command_Line_Programmer
You might need to edit also the platform/exp5438/Makefile.exp5438 file and change the msp430flasher commands at the bottom for MSP430Flasher (mind the case-sensitiveness!).

Error installing Last Value Cache pluggable exchange

I am trying to install the LVC exchange to my RabbitMQ broker. I downloaded the public umbrella and ran make as per the instructions on the RabbitMQ website.
Next I downloaded the LVC pluggin and followed their instructions. However make didn't work so I am unable to continue. Has anyone managed to install it, if so please can you give me full directions, from the very beginning. Otherwise if anyone one has any ideas as to what I am doing wrong then please let me know. Below is the output from make.
ERL_LIBS=./build/dep-apps erlc -Wall +debug_info -I ./include -pa ebin -o ebin src/rabbit_exchange_type_lvc.erl
src/rabbit_exchange_type_lvc.erl:11: can't find include lib "rabbit_common/include/rabbit_exchange_type_spec.hrl"
make: * [ebin/rabbit_exchange_type_lvc.beam] Error 1
I have the same problem trying to install the Recent History Exchange.
The solution was to this to remove the include line about rabbit_exchange_type_spec. I found this information here. Tried it and and ran make again. The make finished and I was able to enable the plugin after moving it to the correct location.

Do I need to re-make and re-install couchdb everytime I want to test a change to the source?

I am trying to contribute more with couchdb code, but I have really no idea how it is done the right way.
I have cloned the source from apache git repository and built it with
./configure
make && sudo make install
Then I wanted to change a file from the source called couch_httpd_show.erl
Do I need to run make && sudo make install again for every change I make to the source code and want to see how it behaves?
I am sure there's a more practical way to do it, because this approach is a bit time and patience consuming right?
Yes, there is a shortcut.
./configure
make dev
./utils/run
This builds and runs CouchDB entirely in the current directory. Instead of running as a background daemon, CouchDB will run in the foreground and output log messages to the terminal. It uses some local directories to store stuff: ./tmp/log for logs, ./tmp/lib for databases, and (if I remember correctly) ./etc/couch/local_dev.ini for configuration.
If you run this instead:
./utils/run -i
then you will also have an interactive Erlang prompt, which you can use to help debug.
When I work on CouchDB, I run this in the shell:
make dev && ./utils/run -i
After I change some code, I press ^C, up-arrow, return.
When I joined Couchio, I was responsible for production CouchDB deployments. I asked Chris Anderson for advice about something and he said, "Sorry, ask Jan. I've been just using utils/run for years!"
You can rebuild that one file and drop the output beam in place and restart.
erlc <file.erl>
& then copy the .beam file into place. To restart couchdb use either init:restart(). in the erlang shell or POST /_restart to CouchDB.
Although you might want to consider using the commandline erlang & javascript test suite also to ensure you didn't break anything.

Resources