Home
FreakLabs Forum
Welcome, Guest
Please Login or Register.    Lost Password?
Re:Freescale MC13224 Review (14 viewing) MCrespo , E1995 , (12) Guests
Go to bottom Post Reply Favoured: 2
TOPIC: Re:Freescale MC13224 Review
#456
spazvt (User)
Apprentice Freak
Posts: 2
graphgraph
User Offline Click here to see the profile of this user
Freescale MC13224 Review 5 Years, 2 Months ago Karma: 0  
This thread discusses the Content article: Freescale MC13224 Review

The MC13224 is being integrated into another CEL/LSR module for easy product integration.

I asked Freescale about getting the 802.15.4 MAC recompiled with GCC so we could use the open source compilers, but it looks like we're stuck with buying a license for IAR Embedded Workbench for ARM in order to develop on the MC13224.

"Regarding GCC support on the MC13224X. The BeeKit only supports IAR. While it is possible to use an ARM compiler that supports EABI, you would have to manually copy the files out of the codebase and make all the changes to configure the stack (old school). I am sure support will be more limited as well, but it should work. In my opinion the $5K investment in the IAR compiler is well worth it." -- Freescale
 
Report to moderator   Logged Logged  
 
Last Edit: 2009/02/11 16:05 By cjwang. Reason: Changing the link to a URL instead. It was broken before.
  The administrator has disabled public write access.
#457
Akiba (Admin)
Admin
Posts: 1245
graph
User Online Now Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 2 Months ago Karma: 25  
Thanks for the update on the MC13224. When they say "manually copy the files out of the codebase and make all the changes to configure the stack (old school)", do they mean that the source code is available and we need to manually re-compile it using a GCC-ARM EABI variant?

One of the main issues with requiring IAR as a design tool is that the $5k investment is out of reach of most of the hobbyist/enthusiast/academic developers. Although most companies laugh at this market, they are usually the early adopters and provide feedback on blogs and newsgroups that is used by the engineers at the big companies to evaluate different chip choices. It's always been a frustration of mine that big companies never see this.

By the way, thanks for the link to the CEL module. Looks like the first one out that supports the MC13224. If its possible to bypass Freescale's built-in MAC software and use my own MAC, then I'm interested to check it out. Using GCC of course
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#458
spazvt (User)
Apprentice Freak
Posts: 2
graphgraph
User Offline Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 2 Months ago Karma: 0  
I believe Freescale's policy is that they make the SMAC source code open, but only provide object files/libraries for the 802.15.4 MAC and BeeStack. If we can find the source, great, but I'm assuming it's other files being referred to.

Good reference describing the different flavors that Freescale offers: http://www.freescale.com/files/rf_if/doc/app_note/AN3403.pdf?fsrch=1
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#471
Mads (User)
Apprentice Freak
Posts: 13
graphgraph
User Offline Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 2 Months ago Karma: 0  
Hi,

If you examine the FSL dev kits you will see that you get a free 32 KB version of IAR with the kit.

this is plenty for 802.15.4 MAC development as the MAC is in rom and more than pleny for the SMAC as it is very small.

so you do not have to buy a license. (other than that the license is actually not 5K but less - you can get the biggest kit for that price)

br,
Mads
 
Report to moderator   Logged Logged  
 
Last Edit: 2009/02/17 02:23 By mads.
  The administrator has disabled public write access.
#472
Akiba (Admin)
Admin
Posts: 1245
graph
User Online Now Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 2 Months ago Karma: 25  
Hi Mads.
Any idea if Freescale will ever come out with a GCC port of their Beestack?
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#489
Mads (User)
Apprentice Freak
Posts: 13
graphgraph
User Offline Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 2 Months ago Karma: 0  
Hi,
You would have to ask Freescale that question.

But i doubt that you will see big coorporations support such compilers due to support reasons. the IAR compilers used by both Freescale and TI are supported and if you got issues you have a place to turn to for support, which is not garanteed with gcc.

other than that you got the hole license issue of mixing open source with closed source

br,
Mads
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#490
Akiba (Admin)
Admin
Posts: 1245
graph
User Online Now Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 2 Months ago Karma: 25  
Okay. Just wanted to check, since the IAR compiler is out of range of most of the hobbyist/enthusiast community.

Just as an FYI, GCC has no open source implications on the final compiled binary. Its just that if the libraries were able to be compiled with GCC, it would make it easier for individuals to try out BeeStack as well.
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#505
Umberto (User)
Apprentice Freak
Posts: 4
graphgraph
User Offline Click here to see the profile of this user
Gender: Male wireless & embedded solutions
Re:Freescale MC13224 Review 5 Years, 1 Month ago Karma: 0  
It would be interesting to know which kind of issues could arise with a compiler. Typically problems related to a misunderstanding of C language, compilation process and compiler options.

The company where I work is a DAP for Freescale and received some samples of MC13224V since July. I must admit that making that platform to work with GCC is becoming harder day after day.

We are trying to make it work as a bare-metal system, without any use of the embedded ROM and BeeKit libraries: there is a lot of work to do! We succeeded into starting the platform and making some leds flashing.

It would have been very nice to completely use the on-board drivers for all the modules, but we did not succeed in linking BeeKit-IAR libraries with Codesourcery-GCC.

Next step is to make that silicon to be managed by Contiki.
At the end of the roadmap, the user could choose between (Sics)6LoWPAN and/or FreakZ!
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#517
Akiba (Admin)
Admin
Posts: 1245
graph
User Online Now Click here to see the profile of this user
Re:Freescale MC13224 Review 5 Years, 1 Month ago Karma: 25  
I would agree that GCC is a better way to go simply because the audience is bigger. The code size and performance differences between GCC and IAR, at least for ARM, are either negligible or very small. However I think the most companies aren't too concerned with catering to the hacker and hobbyist markets that surround GCC. They usually have the opinion that any serious company would purchase IAR if they were going to make a product.

From my experience in sales, it's actually the opposite. At the crucial stages where the decision on chip and platform is first made by the engineers (contrary to popular belief, the decision is not made by managers), being able to use GCC is a big plus because the engineers can compile and test the libraries immediately. Otherwise, the engineers need to fill out additional paperwork for a purchase req for the compiler. And you all know how engineers love paperwork and bureaucracy. This has killed many projects that I have seen.
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#527
Chris Herzog (Visitor)
Click here to see the profile of this user
Birthdate:
Using GCC with BeeStack other Freescale supplied code (was Re:Freescale MC13224 Review) 5 Years, 1 Month ago  
It is possible to link the Freescale supplied ABI with GCC generated code but changes to the linker are needed. The relocation formats used are not compatible with the GCC linker out of the box. We've made the changes needed and fed them back to the Code Sorcery folks - we can make them available if someone else wants them as well.

To date, we've experienced much better code density with the IAR compiler compared to GCC - we've spent some time looking into various options to improve this but there no obvious low hanging fruit; more a lot of small things that need to be tried and evaluated.

It'd be nice because saving money on dev tools appeals to everyone but in the end; time is money and getting something done faster and smaller has real value as well...


Chris Herzog This e-mail address is being protected from spam bots, you need JavaScript enabled to view it
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#528
Umberto (User)
Apprentice Freak
Posts: 4
graphgraph
User Offline Click here to see the profile of this user
Gender: Male wireless & embedded solutions
Re:Using GCC with BeeStack other Freescale supplied code (was Re:Freescale MC13224 Review) 5 Years, 1 Month ago Karma: 0  
Obviously, it would be very interesting to have those patches, in order to compiler IAR-BeeKit libraries with GCC.

I think that the core of this thread is more philosophical than practical. The code size - sometimes - depends on how you write code and on the knowledge of the platform and the optimizations the compiler uses.

It is straightforward that using opensource tools can be awkward and could make code to grew of some kilobytes; but at the end, I think it is strictly related to what you consider the real value of a company: development tools (and speed-up in creating new solutions) or people working on that solutions.
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#529
Akiba (Admin)
Admin
Posts: 1245
graph
User Online Now Click here to see the profile of this user
Re:Using GCC with BeeStack other Freescale supplied code (was Re:Freescale MC13224 Review) 5 Years, 1 Month ago Karma: 25  
On one hand, IAR's ARM compiler can actually produce tighter compiled code. However especially for ARM architectures, GCC is the weapon of choice. By forsaking this compiler, you're making it very difficult for the majority of the ARM users to evaluate the stack, and in my opinion, shooting yourself in the foot.

Even though IAR can produce tighter code, saving a couple of kilobytes doesn't matter in many ARM designs, especially if the designer is already familiar with GCC. And since GCC is the compiler used for embedded Linux, which is particularly strong on ARM9 chips, I would say that the installed base of GCC ARM users is much larger than the installed base of IAR ARM users.

It's none of my business, and I don't really care which compiler is supported by Freescale, however if you ask me about IAR vs GCC for ARM architectures, then I would definitely say GCC-ARM...hands down...
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#673
Heiko Witthoeft (Visitor)
Click here to see the profile of this user
Birthdate:
Re:Using GCC with BeeStack other Freescale supplied code (was Re:Freescale MC13224 Review) 5 Years ago  
Hi,
i have ported the mc13224 on an GCC compiler (Rowley Crossworks) it runs very fine now, the last device missing is the Modemdevice, they havent described all the registers, so we have to reengineer a bit ^^. Well just wanted to say that it is possible to use the device under GCC.

But there is no way to use the ROM-functions. If someone has completed the work with the modem without any freescale software, im glad for an solution. if there are questions from your site:
This e-mail address is being protected from spam bots, you need JavaScript enabled to view it
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#674
Akiba (Admin)
Admin
Posts: 1245
graph
User Online Now Click here to see the profile of this user
Re:Using GCC with BeeStack other Freescale supplied code (was Re:Freescale MC13224 Review) 5 Years ago Karma: 25  
Wow, that's great that you got the MC13224 working on GCC. I wish Freescale would provide native support for it. There's an open source project for the MC13224 by RedWire as well. Here's the url: http://mc1322x.devl.org/
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#676
Umberto (User)
Apprentice Freak
Posts: 4
graphgraph
User Offline Click here to see the profile of this user
Gender: Male wireless & embedded solutions
Re:Using GCC with BeeStack other Freescale supplied code (was Re:Freescale MC13224 Review) 4 Years, 12 Months ago Karma: 0  
It is possible to use ROM functions, but you cannot get the "benefits" of ROM-patching!
The code stored in http://mc1322x.devl.org seems quite good. I think Mariano Alvira did a great job with reverse-engineering of radio initialization functions.

In order to employ the ROM functions, you should use the code as provided by Mariano and the header files provided with Freescale's Beekit (both MAC and SMAC based solutions).

To use ROM functions you have to perform a few steps:

  1. extract the ROM symbols from the provided libraries
    Code:

    arm-elf-objdump -t LLC.a | grep ABS | awk '{printf( "0x%s, %s\n", $1, $6 )}'
    and keep only those symbols whose address is below 0x00400000 and - at the same time - are listed into Freescale's headers
  2. for each pair <address, symbol>, you should put an entry in an assembly file, following this example:
    Code:

    .global uart_open .type uart_open, %function .thumb_set uart_open, 0x00002a98 .weak uart_open
    The listed example shows the definition of a symbol "uart_open" (aka UartOpen) as a thumb function for MC1322X revision 2.0.
We succeeded in making the MC1322X to run a complete Contiki image, but we enjoyed the work at mc1322x.devl.org for the radio initialization! In case you need some more information, do not hesitate to contact me ( This e-mail address is being protected from spam bots, you need JavaScript enabled to view it )!
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
Go to top Post Reply
get the latest posts directly to your desktop