Contiki OS中的RZRAVEN USB Stick(Jackdaw)使用指南
概述
RZRAVEN USB Stick(代号Jackdaw)是Contiki操作系统支持的一款重要硬件平台,它能够在IPv6网络中充当嵌入式节点与计算机之间的桥梁。本文将详细介绍这款设备的功能特性、使用方法以及相关技术细节。
设备简介
Jackdaw由RZUSBSTICK硬件加载Contiki的"ravenusbstick"示例固件组成,主要功能包括:
- 网络接口功能:模拟以太网接口,将计算机数据通过无线方式传输到终端节点
- 802.15.4嗅探功能:在提供网络功能的同时可嗅探原始802.15.4帧
- USB串口调试功能:提供调试接口和参数配置能力
- USB大容量存储功能:约59KB容量,用于存储驱动程序
设备连接流程
当插入Jackdaw时,设备会按以下顺序尝试建立连接:
- 首先尝试作为网络接口+串口设备
- 若失败则仅作为网络接口
- 最后作为大容量存储设备
首次使用时,设备会显示为未格式化的USB存储设备,用户可像普通U盘一样进行格式化操作。
驱动安装(Windows)
Windows系统会提示安装驱动程序,用户需要将驱动路径指向Contiki源代码中的INF文件目录。如果设备已格式化并包含驱动文件,可直接从设备加载驱动。
系统配置
Linux系统配置
Linux对Jackdaw有良好的支持。插入设备后,可通过以下步骤验证:
- 使用
dmesg
命令查看设备识别情况 - 使用
ifconfig
检查是否分配了链路本地地址(fe80开头) - 如需手动分配地址,可使用IPv6地址配置命令
调试接口通常显示为/dev/ttyACM0
,可使用gtkterm等终端模拟器连接。
Windows XP配置
安装驱动后,需进行以下网络配置:
- 在网络连接中右键设备选择"属性"
- 点击"安装"按钮,选择"协议"类型
- 添加"Microsoft TCP/IP version 6"协议
- 取消选中其他所有选项
调试端口可在设备管理器的"端口(COM & LPT)"下查看,推荐使用Bray++ Terminal等终端模拟器连接。
调试端口使用
Jackdaw通过CDC串口提供调试功能,主要操作菜单如下:
********** Jackdaw Menu ******************
* h,? Print this menu *
* m Print current mode *
* s Set to sniffer mode *
* n Set to network mode *
* 6 Toggle 6lowpan *
* r Toggle raw mode *
* u Switch to mass-storage*
******************************************
工作模式说明
- 网络模式:默认模式,调整IP包中的地址以反映所在网络
- 嗅探模式:保持IP包不变,无法形成网络但可进行原始数据嗅探
- 6lowpan开关:控制是否将6lowpan消息解码为有效IPv6消息
- 原始模式:将所有802.15.4帧以原始格式发送到计算机
Wireshark使用技巧
使用Jackdaw进行网络分析时:
- 6lowpan模式下可直接分析IPv6流量
- 原始模式下可同时查看802.15.4帧信息
- 可使用"ipv6"或"wpan"过滤器筛选特定流量
- 建议使用Wireshark 1.1.2或更高版本以获得完整802.15.4支持
注意:从Jackdaw发送的802.15.4数据包会显示"Bad FCS",这是由硬件特性导致的正常现象。
地址转换机制
Jackdaw实现了802.15.4网络(8字节地址)与以太网(6字节地址)之间的地址转换:
- 生成有效的以太网地址和802.15.4地址
- 转换IP包内的地址信息
- 确保节点发现等消息的兼容性
这是当前解决方案,未来将实现更完善的路由功能。
高级功能
强制模式切换
通过短接设备背面的两个引脚(位于"ATMEL"标志下方),可以强制设备进入特定模式:
- 反向逻辑模式:保持主模式(网络接口+调试端口)
- 大容量存储模式:用于驱动安装等场景
大容量存储模式
该模式使用AVR内部部分Flash作为存储空间,注意:
- 每次重新编程AVR都会擦除存储内容
- 首次使用需要格式化
- 可用于存储驱动文件等小容量数据
总结
RZRAVEN USB Stick(Jackdaw)是Contiki生态中功能强大的开发工具,特别适合IPv6和802.15.4网络的研究与开发。通过合理使用其多种工作模式和调试功能,开发者可以高效地进行网络协议分析、设备调试等工作。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考