9 Comm::Comm(
int priority,
size_t stackSize, uint8_t outEp, uint8_t inEp) :
10 mTask(priority,
"Comm", stackSize, *this), mUsbRxStream(outEp, 128), mUsbTxStream(inEp, 128) {
19 Hw::sLsm303dlhc.init();
23 LibPktHandler::PKT* pkt;
25 if (result == LibPktHandler::RES_SUCCESS) {
26 switch (pkt->hdr.cmd) {
29 buffer[0] = Hw::sLed3;
30 buffer[1] = Hw::sLed4;
31 buffer[2] = Hw::sLed6;
32 buffer[3] = Hw::sLed8;
33 buffer[4] = Hw::sLed10;
34 buffer[5] = Hw::sLed9;
35 buffer[6] = Hw::sLed7;
36 buffer[7] = Hw::sLed5;
37 mPktHandler.sendPkt(mUsbTxStream, CMD_GET_LEDS,
sizeof(buffer), buffer);
41 Hw::sLed3 = pkt->data[0];
42 Hw::sLed4 = pkt->data[1];
43 Hw::sLed6 = pkt->data[2];
44 Hw::sLed8 = pkt->data[3];
45 Hw::sLed10 = pkt->data[4];
46 Hw::sLed9 = pkt->data[5];
47 Hw::sLed7 = pkt->data[6];
48 Hw::sLed5 = pkt->data[7];
49 mPktHandler.sendPkt(mUsbTxStream, CMD_SET_LEDS, 4, pkt->data);
52 case CMD_GET_ACC_XYZ: {
54 Hw::sLsm303dlhc.readAccXyz(&xyz[0], &xyz[1], &xyz[2]);
55 mPktHandler.sendPkt(mUsbTxStream, CMD_GET_ACC_XYZ,
sizeof(xyz), &xyz);
60 mPktHandler.freePkt(&pkt);