Slotcar Platooning Communication

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání

General description

The goal of this project is to provide communication between PC and vehicular platoons using specifications of Zigbee network stack as a base.

Oscilloscope settings

  • Use trigger in Normal mode, set it to descreasing edge of MRDY signal, timescale 50 us and y scale 1V, trigger to 1.5V. After using reset sequence, the data comes after cca 780-800 ms.

Function description

ZB_APP_REGISTER_REQUEST

The ZB_APP_REGISTER_REQUEST command should be sent by the host processor to register the application endpoint.

Parameters:

  • AppEndPoint – specifies the endpoint of the device. An endpoint is a virtual address within a ZigBee device. Endpoint 0 is reserved to describe the generic device capabilities, and endpoint 255 is reserved for broadcasting all endpoints; endpoints 1-240 are available for user applications.
  • AppProfileID – specifies the profile id of the application. This should be set to same value to all devices in the network. This number is assigned by the ZigBee Alliance. Application Profile IDs are 16-bit numbers and range from 0x0000 to 0x7fff for public profiles and 0xbf00 to 0xffff for manufacturer-specific profiles. 0104 - for Home Automation.
  • DeviceId – this is an application-specific identifier. It identifies the device type within the particular profile id. This is not used by the ZigBee stack in any way other than to identify itself when requested. Table 6 – Device ID for Home Automation profile - [[1]].
  • DeviceVersion – this is an application-specific identifier. It identifies the version of the device. This is not used by the ZigBee stack in any way other than to identify itself when requested.
  • Unused - Unused parameter.
  • InputCommandsNum – specifies the number of Input commands that this application will process.
  • InputCommandsList – list of input command identifiers that are processed by this application. Each command identifier is 2 bytes long, LSB first.
  • OutputCommandsNum – specifies the number of Output commands that this application will generate.
  • OutputCommandsList – list of output command identifiers that are generated by this application. Each command identifier is 2 bytes long, LSB first.

Input

  • AppEndPoint = 0x02;
  • AppProfileID [2] = {0x01, 0x04};
  • DeviceId[2] = {0x00, 0x06};
  • DeviceVersion = 0x00;
  • InputCommandsNum = 0x01;
  • InputCommandsList [] = {0x10, 0x01};
  • OutputCommandsNum = {0x01};
  • OutputCommandsList [] = {0x20, 0xF1};

Output

  • Length = 0x01;
  • Cmd0 = 0x66;
  • Cmd1 = 0x0A;
  • Status = 0xB8; If status is B8 - ZApsDuplicateEntry. It could mean that it´s trying to register an endpoint in the dongle that is already registered.

Notes

  • After reset sequence to measure the first initial communication on the oscilloscope, wait for cca 500 ms. The first drop in SRDY is just a disturbance, not the indication to be ready to receive data.
  • B1 USER: User and Wake-Up button connected to the I/O PA0. On SmartRF05 Evalution Board: P10-19.
  • LD7 detects MRDY position: if MRDY is low - LD7 is on, if MRDY is high - LD7 is off.

Random ideas

  • There are several ways for applying power to the SmartRF05. The power source can be selected using the power source selection jumper on header P11 (1-2 for battery, 2-3 for USB). SRDY signal doesnt change according to expectaion if USB was selected as power source.
Pin CC2530 Debug Pin CC2530 P1+P10 STM32pin Color from STM32 side Color from CC2530 side
MOSI P18-18 P10-11 PB14 red orange
MISO P18-12 P10-9 PB13 braun white

Back to slotcar platooning

Reference

- ZIC2410 User Guide Profile and ZigBee™ Cluster Library (ZCL) for the CEL ZigBee Stack 0005-05-08-04-001. California eastern laboratories
- Andy Wheeler. Demystifying the Building of ZigBee Applications. CTO Ember Corporation
- ZigBee applications - Part 6: Profiles
- CC2530ZNP Interface Specification