Saturday, May 3, 2014

Ubuntu 12.04 + TinyOS


Salam.

As I said before, I would like to share to the readers about my final year project. A brief introduction of what it is and how it operates. It is an open source software which make it editable by anyone. Normally, open source sotfware do require skill in C,C++programming language, which I dont really pro at. What CIE (Computer Information Engineering) in IIUM taught me the surface of basic programming language, which covers Visual Basic, C , C++, a little bit of Macromedia Flash and Java. The Lab class for each of the language is not that formal, and incomplete in a sense that you will not master the language in the laboratory itself. It require some kind of commitment to it. I need to revise it over and over again to understand the pattern of the coding and soon master it. But that is impossible for me, because my heart is not in it. Last 2 semester, I took Algorithm and Programming subject, which introduces a basic of OOP (Object Oriented Program). The subject is new to CIE's syllabus, and it gives me hard time to understand the concept. Soon I started to discover that it is a BASIC thing in making a program. There are 3 codes that are stitched together in order to run the program. Whenever I learn about the codings, I will forget it later after the final. Argh, It costs my future in C programming. -.-"

So, I decided my future to be in Networking. I would like to expose myself to this field before I do Masters. Because I was planning to do Masters in Electronics; Networking and Computing skills. But, I don't want to get myself into Computer Science which is quite similar to engineering field of studies. So, it should be less in programming and more in hardware interface and troubleshooting, from what I have imagined. Actually, when I was in standard 6, I was exposed to scripting, if you know 'Ragnarok Online' game. Yes, I learned how to make a server, configure IP address and make a simple script for NPC at the age of 12. Basically on that time, I learn HTML coding by myself. I'm not that good back then, because all I did was editing my Myspace page. Yeah, that historical social network for teenager. Haha.

Knowing that its hard to get help in networking programming, makes it difficult for me to learn. It will be so much easier for me if someone can demonstrate it infront of me, so that I can ask many things. By watching on youtube and tutorials, is not enough. Atleast for me. Haha. So lazy. I met this brother, he is good in C programming, Matlab and electronics stuff. The name is Zuhaili. He said that network programming is not that popular around IIUM, mainly because of outdated electronics equipment. Plus , it depends on the lecturer to introduce new tools for engineering projects such as TinyOS and Raspberry Pi. Furthermore, the campus is not investing on electronics apparatus and equipment, students are using the old version of oscilloscope. Experience tough time just to get the oscilloscope to work. And sometimes the result is negative not because human error, but the calibration error made by the calibration tool itself. Urgh!

So, introducing TinyOS 2.1.2 that operates in Ubuntu OS.

http://www.tinyos.net/tos-jwall.jpg 
http://design.ubuntu.com/wp-content/uploads/ubuntu-logo14.png

TinyOS is free and opensource software component-based operating system and platform targeting wireless sensor networks (WSNs). It is written in nesC programming language. It is in co-operation with Intel Research and Crossbow Technology. Its supplementary tools are mainly in the form of java and shell script front-ends. In collaboration with Crossbow Technologies, it means that there is specific sensors that are made for the TinyOS to work. In my case, I used MIB520 programming board and Iris XM2110 sensors.

http://www.cmt-gmbh.de/Produkte/WirelessSensorNetworks/Images/MIB520CB_gross.jpg                 http://www.openautomation.net/uploadsproductos/iris_sml.jpg


So basically, TinyOS is not an operating system like Apple or Windows. Its just an interface that run in Ubuntu Operating Systems. 
http://blog.aguskurniawan.net/image.axd?picture=2012%2F8%2Fnesc.png 
What do the Iris (WSN) do is transmitting the radio signal to the receiver (MIB520). It gives the Received Strength Signal Indicator (RSSI) so that the pattern and wave can be analyzed in the form of graph or whatsoever. Basically my project this semester focus on getting the RSSI value, and calculate their means,standard deviation and variance. So I need to represent them in graph using Matlab. 

The only threat I have encountered is the limited access to the lab. The lab were for postgraduates only. An undergraduate only can access it if there is masters student inside and at office hour only, which means the lab will close at 5 O'clock everyday. Haiyaa....

I guess, thats all for this time. If you happen to know someone that is good in network programming, let me know ya. ;) - 3rd May 2014.

P/S: I choose to write rather than finishing the project. Why?

4 comments:

  1. Bro we are trying to do something related to what you have done in your FYP please if you can give us some guidance regarding the project and how you managed to get RSSI from the (XM-2110) mote. We have the exact same hardware as you have. Any code related help or conceptual help will be immensely helpful.

    ReplyDelete
    Replies
    1. Have you tried any of TinyOS tutorial on tinyos.net?

      Delete

 

Bittersweet Life Copyright © 2011 - |- Template created by O Pregador - |- Powered by Blogger Templates