[mc1322x] New maca driver and integration with Contiki 2.4

Mariano Alvira mar at devl.org
Thu Mar 18 13:19:05 EDT 2010


Hello everyone,

I've just completed integrating the new maca driver and libmc1322x
code into the contiki port --- anyone using contiki should check this
out sooner than later (branch mc1322x-2.4).

I've incorporated libmc1322x as a subtree in contiki/cpu/mc1322x. This
has the great advantage of being able to easily pull in updates from
libmc1322x so we do not have a lot of out-of-sync code.

I've also changed how the platforms work. Now we have redbee-dev,
redbee-econotag, and redbee-usb instead of a single mc1322x
platform. These then use the different configurations present in
libmc1322x/board (most importantly are the xtal trim values).

The plan for the immediate future is to start a 2.4-patches branch
that will have all of the various alignment (and any other) patches to
the core contiki code. Keeping these in a separate branch will make
submitting them upstream easier. Once that's all sorted, I plan to
work on syncing master up with CVS. I haven't looked at that yet, but
I know there has been a lot of churn in Contiki CVS, so I hope it
won't be too bad.

A lot of you have been helping me offline with code contributions and
such. Thank you! It's a huge help! 

Here is list of things to do, that should be easy, that I might not
get to soon, and would be make perfect quick projects (hint hint):

- incorporate Jon's adc files into libmc1322x, including an adc test
  program in /tests

     http://mc1322x.devl.org/files/adc.h
     http://mc1322x.devl.org/files/adc.c

- pull in NCD-demod into master from
  libmc1322x/old-master-with-NCD-demod so I can finally kill that
  branch

- The only ROM calls I use are for the NVM. I'm using it to read the
  calibration data from NVM for maca_init and to flash with
  flasher.bin. It turns out that it's always the ST flash and it's
  using the standard SPI module but at base 0x8000C000. It should not
  be hard to interface with it that way and to not use the ROM
  routines at all. This would free up a lot of space in start.S and
  simplify the thumb interworking requirements. For more details see:

     http://devl.org/pipermail/mc1322x/2009-April/000000.html

- finish converting all the tests to using printf so I can finally
  kill /tests/put.c

- go help Dean with the python-on-a-chip port

- go join the Linux Zigbee mailing list. Add features and fix bugs
  (like kernel oops when you try to set an invalid channel). Take my
  patches and make them use IFF_PROMISC so that setting promiscuous
  mode lets you see all of the packets on wireshark.

- I just got some CEL Freestar Pros and plan to add them to
  libmc1322x/boards someday (implying that we support the PA
  correctly). If you have Freestar Pros then feel free to beat me to
  it.

- Likewise, if you have the Freescale hardware, feel free to add them
  to boards as well.

- TinyOS. Anyone? Could be fun!

- Find people who are still using Xbee's for stuff and tell them to
  stop.

And for the brave:

  - CCA
  - ED

And for the really brave:

  - Auto-ack'ing

Take care,

-Mar.




More information about the mc1322x mailing list