WSN/Zigbee开源协议栈
1. msstatePAN
http://www.ece.msstate.edu/~reese/msstatePAN/ Last Updated: Mar 6, 2007
较为简单,容易上手。附带一个较为详细说明文档。整个协议栈是基于状态机的实现的。只是其中程序排版不太规范。通过这协议栈使我对FSM重新的认识。如果你的程序构架不是基于操作系统的,有限状态机应该是一个很好的选择。而且OS中进程的状态也是个各个状态间的切换。
Robert Reese 也出了本书《Finite State Machine Datapath Design, Optimization, and Implementation》
下载地址: http://www.elecfans.com/soft/35/2009/2009072237323.html
2. freaklabs : http://freaklabs.org/
这个是最近才发现,介绍很详细。程序排版很规范,让人看着舒服。而且自己做了硬件,貌似看着还是腐蚀的电路板。代码注释挺详细的,而且对于zigbee的各个层的也归纳性的介绍,详见网站。
硬件支持CPU: Freescal MC13244 / Atmel AT86RF230 + RF: TI CC2420/2520
防止翻译失真,还是附上原文。
http://freaklabs.org/index.php/F ... e-Zigbee-Stack.html
Motivation:
One of the problems with the current state of Zigbee is that the software is either provided by semiconductor suppliers and bound to their hardware, or is proprietary and requires heavy licensing fees. This causes some major issues that I have a problem with:
1) It's very difficult for individual electronics enthusiasts to create their own Zigbee designs since they usually cannot afford the licensing fees or the costs of the proprietary tools (compilers, debuggers, etc) associated with developing a Zigbee application. In many cases, some of the most innovative creations come from individual enthusiasts or people with specific domain knowledge that might not be addressed by software or semiconductor vendors. I'm hoping that having a free stack with full source code access will allow people the freedom to create interesting things and hopefully create projects that can improve other people's lives.
2) It's almost impossible to mix and match hardware to optimize an application. Some designs are limited to using an ARM microcontroller since it may be part of an SOC that's needed for a specific application, ie: MP3 or video decoding. However the application would benefit from the addition of wireless communications. There currently isn't an easy way to take an MCU such as an ARM based one and mix it with an 802.15.4 radio from a different vendor to make a Zigbee application. This is because the Zigbee software given away by semiconductor vendors is either in binary form or contains a license clause which only permits the use of the software with their hardware. Software companies selling proprietary stacks usually charge stack licensing fees that can go upwards of $50k and also require fees for driver modification for specific MCUs. One of the goals of this project is to provide a free Zigbee stack which will give designer's flexibility in choosing their components with no proprietary lock-in.
3. TinyOS : http://www.tinyos.net/
目前在WSN领域最权威的操作系统,里面完成协议设计自带仿真软件。看过不少文章,它最多。而且网上资料也很多。
TinyOS is an open-source operating system designed for wireless embedded sensor networks. It features a component-based architecture which enables rapid innovation and implementation while minimizing code size as required by the severe memory constraints inherent in sensor networks. TinyOS's component library includes network protocols, distributed services, sensor drivers, and data acquisition tools – all of which can be used as-is or be further refined for a custom application. TinyOS's event-driven execution model enables fine-grained power management yet allows the scheduling flexibility made necessary by the unpredictable nature of wireless communication and physical world interfaces.
成立了 TinyOS ZigBee Working Group 已经开始设计开源的zigbee,期待中.......
http://www.tinyos.net/scoop/special/working_group_tinyos_zigbee
1. msstatePAN
http://www.ece.msstate.edu/~reese/msstatePAN/ Last Updated: Mar 6, 2007
较为简单,容易上手。附带一个较为详细说明文档。整个协议栈是基于状态机的实现的。只是其中程序排版不太规范。通过这协议栈使我对FSM重新的认识。如果你的程序构架不是基于操作系统的,有限状态机应该是一个很好的选择。而且OS中进程的状态也是个各个状态间的切换。
Robert Reese 也出了本书《Finite State Machine Datapath Design, Optimization, and Implementation》
下载地址: http://www.elecfans.com/soft/35/2009/2009072237323.html
2. freaklabs : http://freaklabs.org/
这个是最近才发现,介绍很详细。程序排版很规范,让人看着舒服。而且自己做了硬件,貌似看着还是腐蚀的电路板。代码注释挺详细的,而且对于zigbee的各个层的也归纳性的介绍,详见网站。
硬件支持CPU: Freescal MC13244 / Atmel AT86RF230 + RF: TI CC2420/2520
防止翻译失真,还是附上原文。
http://freaklabs.org/index.php/F ... e-Zigbee-Stack.html
Motivation:
One of the problems with the current state of Zigbee is that the software is either provided by semiconductor suppliers and bound to their hardware, or is proprietary and requires heavy licensing fees. This causes some major issues that I have a problem with:
1) It's very difficult for individual electronics enthusiasts to create their own Zigbee designs since they usually cannot afford the licensing fees or the costs of the proprietary tools (compilers, debuggers, etc) associated with developing a Zigbee application. In many cases, some of the most innovative creations come from individual enthusiasts or people with specific domain knowledge that might not be addressed by software or semiconductor vendors. I'm hoping that having a free stack with full source code access will allow people the freedom to create interesting things and hopefully create projects that can improve other people's lives.
2) It's almost impossible to mix and match hardware to optimize an application. Some designs are limited to using an ARM microcontroller since it may be part of an SOC that's needed for a specific application, ie: MP3 or video decoding. However the application would benefit from the addition of wireless communications. There currently isn't an easy way to take an MCU such as an ARM based one and mix it with an 802.15.4 radio from a different vendor to make a Zigbee application. This is because the Zigbee software given away by semiconductor vendors is either in binary form or contains a license clause which only permits the use of the software with their hardware. Software companies selling proprietary stacks usually charge stack licensing fees that can go upwards of $50k and also require fees for driver modification for specific MCUs. One of the goals of this project is to provide a free Zigbee stack which will give designer's flexibility in choosing their components with no proprietary lock-in.
3. TinyOS : http://www.tinyos.net/
目前在WSN领域最权威的操作系统,里面完成协议设计自带仿真软件。看过不少文章,它最多。而且网上资料也很多。
TinyOS is an open-source operating system designed for wireless embedded sensor networks. It features a component-based architecture which enables rapid innovation and implementation while minimizing code size as required by the severe memory constraints inherent in sensor networks. TinyOS's component library includes network protocols, distributed services, sensor drivers, and data acquisition tools – all of which can be used as-is or be further refined for a custom application. TinyOS's event-driven execution model enables fine-grained power management yet allows the scheduling flexibility made necessary by the unpredictable nature of wireless communication and physical world interfaces.
成立了 TinyOS ZigBee Working Group 已经开始设计开源的zigbee,期待中.......
http://www.tinyos.net/scoop/special/working_group_tinyos_zigbee