Using the Freescale MC1322x Series ARM7 Processor with integrated 802.15.4
The purpose of this site is to
develop Open Source tools and
hardware for the
Freescale MC13224V
processor.
Guides and Documentation
Software Packages
The project currently contains the software packages described below:
- mc1322x-oe: is the Openembedded overlay to make a toolchain for the mc13224.
- mc1322x-rowley: MC13224v project files
for Rowley CrossWorks.
- libmc1322x: Simple build
system, library, and test programs for mc13224v based hardware. Easy
to include into your own projects as a submodule to build stand-alone
programs.
- linux802154-serialdev: Firmware that implements the
Linux
802.15.4 serial device driver.
- contiki-mc1322x: this package is the Contiki tree modified
to support this part.
- python-on-a-chip:
Working python-on-a-chip
port. See the econotag branch.
Getting the code
Toolchains
$ git clone git://git.devl.org/git/malvira/mc1322x-oe.git
$ git clone git://git.devl.org/git/malvira/mc1322x-rowley.git
$ git clone http://github.com/jsnyder/arm-eabi-toolchain.git
libmc1322x
$ git clone git://git.devl.org/git/malvira/libmc1322x.git
Branches:
- master: stable mc1322x code --- use this
- injecting-isr: experimental maca isr using seq_inject ROM call --- doesn't work quite right but may avoid the need for check_maca
Linux serial driver for the mc13224v
$ git clone git://git.devl.org/git/malvira/linux802154-serialdev.git
Contiki
$ git clone git://git.devl.org/git/malvira/contiki-mc1322x.git
Branches:
- CVS: import of Contiki CVS
- master: tracks Contiki CVS + mc1322x.
- mc1322x-2.4: Contiki 2.4 + mc1322x
- WIP-2.4: development branch of mc1322x-2.4.
Python on a chip
http://code.google.com/p/python-on-a-chip/
PyMite VM is working. Requires the following toolchain:
http://github.com/jsnyder/arm-eabi-toolchain
QEMU
$ git clone git://git.devl.org/git/malvira/qemu.git
Very basic support for qemu. No peripherals yet, but you can load
images to address 0x00000000 and 0x00400000.
See README.qemu.mc1322x
for details.
The machine does not support the NVM (onboard flash memory) which
might contain important factory calibration data. This would be very
nice to have.
Please see
our
development branch in
our qemu tree
for more details.
General Status
- Working Openembedded build environment (see mc1322x-oe)
- Working pin toggle code (see blink-allio.c)
- Working UART bootloader tool (see mc1322x-load.pl)
- Basic QEMU mc1322x machine
(see our qemu clone) including support for factory
ROM images (no NVM support yet).
- Working UART (see uart1-loopback.c)
- Working radio initialization
(see rftest-rx.c
and rftest-tx.c)
including set_power and set_channel (no energy_detect scan
yet). Performs the factory calibration that is stored in NVM and is
different for each chip. Option for NCD demodulation (which increased
receive sensitivity from -94dBm to -100dBm and current draw by
2mA). Queued TX and RX packets.
- Read, write, and erase support for on-board non-volatile storage (NVM)
- Working calls to ROM services (tested so far: _rom_data_init, NVM_Detect, NVM_Read, NVM_Write, NVM_Erase, NVMSetSVar)
- Working flash loader (flasher.bin and mc1322x-load.pl)
- Working interrupts
- Working timers
- Working ADCs (sample code adc.h
and adc.c)
- Contiki support.
- Python-on-a-chip support.
-
Working Linux
802.15.4 serial
device driver.
Mailing List
The mailing list for this project
is mc1322x@devl.org. Click here
to subscribe. View
the archives.
Patchworks tracker
Patches sent to the mailing list are caught by
our Patchworks
server located
here: http://patchwork.devl.org
mc1322x Website
This website is tracked in Git -
you can
browse its development history
or clone it from git://git.devl.org/git/malvira/mc1322x-homepage.git.
The site is covered by GPLv2
and maintained by Mariano Alvira.
This website is based on a design by Petr Baudis for GIT which was
based on a design by Jonas Fonseca
for the ELinks homepage.
Links
open-mc13224v --- these guys are also writing free mc1322x code.
Freaklabs.org --- open source zigbee stack
Contiki --- the easy way to
do TCP/IP and wireless networks is to have someone else do them!
Open-ZB --- open zigbee
Freescale --- product page for the MC13224V
Yargarto --- ARM toolchain for windows and mac.
Linux 802.15.4 stack
python-on-a-chip