[Tinyos-help] [Info] A complete Imote2 installation & programming guide on Ubuntu

Nelson Dopico nelson at gaps.ssr.upm.es
Fri Nov 5 06:43:13 PDT 2010


Paul,

I guess that my help is not going to be that useful for you, anyway I will point a few things that sometimes one may forget:

a) Check XScale's libraries and/or coding recommendations. That might be done in:

http://download.intel.com/design/intelxscale/31628302.pdf

http://download.intel.com/design/intelxscale/31451001.pdf

b) Go through your code and optimize it. I know that it is easier to say than actually doing it.

c) Check your operating clock frequency. In the event that you are using the one by default in iMote-TinyOS2 (13MHz) be aware that you may raise it up to 400-500 MHz. For further info, go to tinyos2-contrib. There is a folder with specific scripts for compilation that may substitute the regular ones so that you can rise it and/or use 32Mbyte for data rather than just 256Kbytes. We experienced some trouble months ago while using 32Mbytes, but can't really say that it was a code bug. Supposedly, it works.

Good luck,

Nelson


On 11/04/2010 05:10 PM, Paul Joonhwa Shin wrote:
>
> Hi Nelson,
>
> Consulting your technical report, I set up an Imote2 development
> environment by installing your pre-built arm-none-eabi 4.3.3 deb package
> to use iwMMXt instuction set. And, then I ran my blob tracking
> application, which continuously captures and processes 320x240 gray
> images while sending the center of mass of the object.
>
> I compared the capturing rate between on (1) arm-none-eabi 4.3.3
> environment and on (2) regular xscale-elf environment.
> The average time for image capture and processing on (1) was about
> 500ms, while the average time on (2) was about 600ms.
> So, there's an improvement, but just a little.
>
> Do you have any ideas to optimize it further?
>
> Thanks,
> Paul
>
>
>
> Paul Joonhwa Shin wrote:
>> Hi Nelson,
>>
>> Thank you so much for your information. I would try that out to see
>> the integer-based SIMD mode is automatically enabled by default.
>>
>> Thanks,
>> Paul
>>
>>
>>
>> Nelson Dopico wrote:
>>> Hello Paul,
>>>
>>> As far as I know, SIMD mode is part of iwMMXt instruction set,
>>> therefore you need enable at least iwMMXt -- consequently, you will
>>> require an eabi compiler rather than elf. I am unaware how to "force"
>>> the compiler to generate SIMD operations in specific sections of your
>>> code unless you code partially in assembler -- supposing that you are
>>> programming in C/C++. I guess that it must be enabled by default as
>>> long as you use integers and you specify the iwmmxt instruction set
>>> as it is pointed in section 4.2 of the technical report.
>>>
>>> Anyway, check out these two links
>>>
>>> http://download.intel.com/design/intelxscale/31628302.pdf
>>>
>>> http://download.intel.com/design/intelxscale/31451001.pdf
>>>
>>> Good luck!
>>>
>>> Nelson
>>>
>>>
>>> On 10/26/2010 04:36 PM, Paul Joonhwa Shin wrote:
>>>> Hi Nelson,
>>>>
>>>> I looked at your post, and found it is well-documented and looks very
>>>> useful.
>>>>
>>>> I scanned through your technical report, and have a question. So, are
>>>> you saying that basically it is possible to operate integers in SIMD
>>>> mode with iwMMXt instruction set? Could you give me some more
>>>> information about how to actually use it in programming and how to
>>>> enable it? I am particularly interested in SIMD mode since I am trying
>>>> to do some image processing on Imote2.
>>>>
>>>> Thanks,
>>>> Paul
>>>>
>>>>
>>>>
>>>> Nelson Dopico wrote:
>>>>> Hello Paul!
>>>>>
>>>>> You may find useful to include a reference to debian packages that
>>>>> have no conflicts with micaz toolchain instalations. Check this post
>>>>> for further information:
>>>>> http://www.gaps.ssr.upm.es/en/research/wsn/138-compiling-for-an-arm-architecture-imote2-tinyos
>>>>>
>>>>>
>>>>>
>>>>> Cheers,
>>>>>
>>>>> Nelson
>>>>>
>>>>>
>>>>>> Date: Mon, 25 Oct 2010 12:54:05 -0400
>>>>>> From: Paul Joonhwa Shin <paulshin at purdue.edu>
>>>>>> Subject: [Tinyos-help] [Info] A complete Imote2 installation &
>>>>>> programming guide on Ubuntu
>>>>>> To: TinyOS - Help <tinyos-help at millennium.berkeley.edu>
>>>>>> Message-ID: <4CC5B62D.8080300 at purdue.edu>
>>>>>> Content-Type: text/plain; charset=UTF-8; format=flowed
>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I am a PhD student at Purdue. I just want to contribute to this
>>>>>> community with
>>>>>> my hands-on experience for imote2 installation & programming.
>>>>>>
>>>>>> After struggling a month or so, I could finally set up all
>>>>>> environments for
>>>>>> Imote2 programming on Ubuntu 10.04.
>>>>>>
>>>>>> Although I found more than ten web pages, describing their successful
>>>>>> configuration and installation procedures, they are missing some
>>>>>> problem
>>>>>> cases
>>>>>> that I encountered.
>>>>>>
>>>>>> So I made a web page that contains my experience and my own
>>>>>> procedures that
>>>>>> worked on Ubuntu 10.04. Of course, most of them are from other
>>>>>> existing
>>>>>> sources
>>>>>> but I also include things that I have never found on the web
>>>>>> including this
>>>>>> community.
>>>>>>
>>>>>> In addition, I just collected useful resources from other web pages.
>>>>>> So you
>>>>>> could browse almost all available sources on a single page. I of
>>>>>> course put
>>>>>> where they are from.
>>>>>>
>>>>>> I hope it would be useful for newbies like whom I was.
>>>>>>
>>>>>> Paul's Guide:
>>>>>> http://web.ics.purdue.edu/~paulshin/research_Imote2.html
>>>>>>
>>>>>> Thanks,
>>>>>> Paul Joonhwa Shin
>>>>>>
>>
>



More information about the Tinyos-help mailing list