Code Monkey home page Code Monkey logo

cc2531_usb_wpan_adapter's Introduction

WPAN Adapter firmware for CC2531 USB Dongle

Firmware for Texas Instruments CC2531 Dongle to be used with this Linux kernel driver for CC2531 WPAN Adapter firmware.

Enables a CC2531 dongle to be used as a proper WPAN adapter through the Linux WPAN subsystem.

Features

  • All packets received are send to USB host.
  • Transmit with optional IEEE 802.15.4 CSMA.
  • Read/write all registers over USB.
  • 2Mbaud 1N8 uart log output on pin P1.6
  • SPI-like real time TX/RX packet sniffer output (tx: P1.3, data: P1.4, clock: P1.5)
  • Supports USB Device Firmware Upgrade (with DFU bootloader)

Protocol

Control endpoint

In addition to the standard USB 2.0 control requests, the following control endpoint requests are supported:

bmRequestType bRequest wValue wIndex Data
Read XDATA 0xC0 0x00 Register or RAM Address D/C Contents of RAM or register(s)
Write XDATA 0x40 0x01 Register or RAM Address D/C Data to be written, starting at address wValue
Read FIFO 0xC0 0x02 FIFO Address D/C Contents of FIFO
Write FIFO 0x40 0x03 FIFO Address D/C Bytes to be written into specified address
Transmit 0x40 0x04 Non-zero: Disable CSMA, transmit immediately D/C IEEE 802.15.4 frame to be written to radio FIFO
Set CSMA parameters 0x40 0x05 (retries << 8)|(be_max << 4)|(be_min << 0) D/C D/C
DFU_DETACH 0x21 0x00 D/C D/C D/C

D/C: Don't care

Status endpoint

Endpoint 1 (Interrupt IN) sends one byte status messages to host. Transmit success (0) or failure (non-zero).

Receive endpoint

Endpoint 5 (Bulk IN) sends received IEEE 802.15.4 frames to host.

Requirements

How to flash DFU image to CC2531 dongle running DFU bootloader.

Requires dfu-util.

dfu-util -D wpan_fw.dfu

Build requirements

How to build

# Check out repo with all sub-modules:
git clone --recursive 'https://github.com/rosvall/cc2531_usb_wpan_adapter.git' 
cd cc2531_usb_wpan_adapter

# Build
make

# Flash to USB dongle using device firmware upgrade
make download

See also

cc2531_usb_wpan_adapter's People

Contributors

rosvall avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.