From d638d726e2842f1e7262716f2dab6fa1fa632a7c Mon Sep 17 00:00:00 2001 From: Kristian Lauszus Date: Sat, 26 May 2012 01:46:18 +0200 Subject: [PATCH] Several minor adjustments --- PS3BT.cpp | 73 ++++++------- PS3BT.h | 8 +- examples/PS3/PS3BT/PS3BT.ino | 202 +++++++++++++++++++++++++++++++++++ examples/PS3BT/PS3BT.ino | 202 ----------------------------------- keywords.txt | 25 ++--- 5 files changed, 255 insertions(+), 255 deletions(-) create mode 100644 examples/PS3/PS3BT/PS3BT.ino delete mode 100644 examples/PS3BT/PS3BT.ino diff --git a/PS3BT.cpp b/PS3BT.cpp index 9166d7eb..78712b6b 100644 --- a/PS3BT.cpp +++ b/PS3BT.cpp @@ -369,6 +369,9 @@ void PS3BT::PrintEndpointDescriptor( const USB_ENDPOINT_DESCRIPTOR* ep_ptr ) /* Performs a cleanup after failed Init() attempt */ uint8_t PS3BT::Release() { + PS3Connected = false; + PS3MoveConnected = false; + PS3NavigationConnected = false; pUsb->GetAddressPool().FreeAddress(bAddress); bAddress = 0; bPollEnable = false; @@ -486,13 +489,13 @@ double PS3BT::getAngle(Angle a) { double accYval; double accZval; - if(PS3BTConnected) { + if(PS3Connected) { // Data for the Kionix KXPC4 used in the DualShock 3 const double zeroG = 511.5; // 1.65/3.3*1023 (1,65V) accXval = -((double)getSensor(aX)-zeroG); accYval = -((double)getSensor(aY)-zeroG); accZval = -((double)getSensor(aZ)-zeroG); - } else if(PS3MoveBTConnected) { + } else if(PS3MoveConnected) { // It's a Kionix KXSC4 inside the Motion controller const uint16_t zeroG = 0x8000; accXval = getSensor(aXmove); @@ -534,7 +537,7 @@ bool PS3BT::getStatus(Status c) } String PS3BT::getStatusString() { - if (PS3BTConnected || PS3NavigationBTConnected) + if (PS3Connected || PS3NavigationConnected) { char statusOutput[100]; @@ -566,7 +569,7 @@ String PS3BT::getStatusString() return statusOutput; } - else if(PS3MoveBTConnected) + else if(PS3MoveConnected) { char statusOutput[50]; @@ -586,12 +589,12 @@ String PS3BT::getStatusString() } void PS3BT::disconnect()//Use this void to disconnect any of the controllers { - if (PS3BTConnected) - PS3BTConnected = false; - else if (PS3MoveBTConnected) - PS3MoveBTConnected = false; - else if (PS3NavigationBTConnected) - PS3NavigationBTConnected = false; + if (PS3Connected) + PS3Connected = false; + else if (PS3MoveConnected) + PS3MoveConnected = false; + else if (PS3NavigationConnected) + PS3NavigationConnected = false; //First the HID interrupt channel has to be disconencted, then the HID control channel and finally the HCI connection l2cap_disconnection_request(0x0A, interrupt_dcid, interrupt_scid); @@ -1030,7 +1033,7 @@ void PS3BT::ACL_event_task() else if (l2capinbuf[6] == interrupt_dcid[0] && l2capinbuf[7] == interrupt_dcid[1])//l2cap_interrupt { //Serial.print("\r\nL2CAP Interrupt"); - if(PS3BTConnected || PS3MoveBTConnected || PS3NavigationBTConnected) + if(PS3Connected || PS3MoveConnected || PS3NavigationConnected) { readReport(); #ifdef PRINTREPORT @@ -1155,30 +1158,29 @@ void PS3BT::L2CAP_task() #ifdef DEBUG Notify(PSTR("\r\nDualshock 3 Controller Enabled\r\n")); #endif - PS3BTConnected = true; + PS3Connected = true; } else if (remote_name[0] == 'N') { // First letter in Navigation Controller ('N') setLedOn(LED1); // This just turns LED constantly on, on the Navigation controller #ifdef DEBUG Notify(PSTR("\r\nNavigation Controller Enabled\r\n")); #endif - PS3NavigationBTConnected = true; + PS3NavigationConnected = true; } else if(remote_name[0] == 'M') { // First letter in Motion Controller ('M') moveSetBulb(Red); timerBulbRumble = millis(); #ifdef DEBUG Notify(PSTR("\r\nMotion Controller Enabled\r\n")); #endif - PS3MoveBTConnected = true; + PS3MoveConnected = true; } l2cap_state = L2CAP_EV_L2CAP_DONE; } break; case L2CAP_EV_L2CAP_DONE: - if (PS3MoveBTConnected)//The Bulb and rumble values, has to be send at aproximatly every 5th second for it to stay on + if (PS3MoveConnected)//The Bulb and rumble values, has to be send at aproximatly every 5th second for it to stay on { - dtimeBulbRumble = millis() - timerBulbRumble; - if (dtimeBulbRumble > 4000)//Send at least every 4th second + if (millis() - timerBulbRumble > 4000)//Send at least every 4th second { HIDMove_Command(HIDMoveBuffer, HID_BUFFERSIZE);//The Bulb and rumble values, has to be written again and again, for it to stay turned on timerBulbRumble = millis(); @@ -1217,11 +1219,13 @@ void PS3BT::L2CAP_task() /************************************************************/ void PS3BT::readReport() { + if (l2capinbuf == NULL) + return; if(l2capinbuf[8] == 0xA1)//HID_THDR_DATA_INPUT { - if(PS3BTConnected || PS3NavigationBTConnected) + if(PS3Connected || PS3NavigationConnected) ButtonState = (uint32_t)(l2capinbuf[11] | ((uint16_t)l2capinbuf[12] << 8) | ((uint32_t)l2capinbuf[13] << 16)); - else if(PS3MoveBTConnected) + else if(PS3MoveConnected) ButtonState = (uint32_t)(l2capinbuf[10] | ((uint16_t)l2capinbuf[11] << 8) | ((uint32_t)l2capinbuf[12] << 16)); //Notify(PSTR("\r\nButtonState"); @@ -1251,7 +1255,9 @@ void PS3BT::readReport() } void PS3BT::printReport() //Uncomment "#define PRINTREPORT" to print the report send by the PS3 Controllers -{ +{ + if (l2capinbuf == NULL) + return; if(l2capinbuf[8] == 0xA1)//HID_THDR_DATA_INPUT { for(uint8_t i = 10; i < 58;i++) @@ -1504,12 +1510,10 @@ void PS3BT::HID_Command(uint8_t* data, uint16_t nbytes) buf[7] = control_scid[1]; for (uint16_t i = 0; i < nbytes; i++)//L2CAP C-frame - buf[8 + i] = data[i]; + buf[8 + i] = data[i]; - dtimeHID = millis() - timerHID; - - if (dtimeHID <= 250)// Check if is has been more than 250ms since last command - delay((uint32_t)(250 - dtimeHID));//There have to be a delay between commands + if (millis() - timerHID <= 250)// Check if is has been more than 250ms since last command + delay((uint32_t)(250 - (millis() - timerHID)));//There have to be a delay between commands pUsb->outTransfer(bAddress, epInfo[ BTD_DATAOUT_PIPE ].epAddr, (8 + nbytes), buf); @@ -1600,12 +1604,10 @@ void PS3BT::HIDMove_Command(uint8_t* data,uint16_t nbytes) buf[7] = interrupt_scid[1]; for (uint16_t i = 0; i < nbytes; i++)//L2CAP C-frame - buf[8 + i] = data[i]; + buf[8 + i] = data[i]; - dtimeHID = millis() - timerHID; - - if (dtimeHID <= 250)// Check if is has been less than 200ms since last command - delay((uint32_t)(250 - dtimeHID));//There have to be a delay between commands + if (millis() - timerHID <= 250)// Check if is has been less than 200ms since last command + delay((uint32_t)(250 - (millis() - timerHID)));//There have to be a delay between commands pUsb->outTransfer(bAddress, epInfo[ BTD_DATAOUT_PIPE ].epAddr, (8 + nbytes), buf); @@ -1622,15 +1624,14 @@ void PS3BT::moveSetBulb(uint8_t r, uint8_t g, uint8_t b)//Use this to set the Co } void PS3BT::moveSetBulb(Colors color)//Use this to set the Color using the predefined colors in "enums.h" { - //set the Bulb's values into the write buffer - HIDMoveBuffer[3] = (uint8_t)(color >> 16); - HIDMoveBuffer[4] = (uint8_t)(color >> 8); - HIDMoveBuffer[5] = (uint8_t)(color); - - HIDMove_Command(HIDMoveBuffer, HID_BUFFERSIZE); + moveSetBulb((uint8_t)(color >> 16),(uint8_t)(color >> 8),(uint8_t)(color)); } void PS3BT::moveSetRumble(uint8_t rumble) { +#ifdef DEBUG + if(rumble < 64 && rumble != 0) // The rumble value has to at least 64, or approximately 25% (64/255*100) + Notify(PSTR("\r\nThe rumble value has to at least 64, or approximately 25%")); +#endif //set the rumble value into the write buffer HIDMoveBuffer[7] = rumble; diff --git a/PS3BT.h b/PS3BT.h index 27a2decd..2e0e4fad 100644 --- a/PS3BT.h +++ b/PS3BT.h @@ -361,9 +361,9 @@ public: void moveSetBulb(Colors color);//Use this to set the Color using the predefined colors in "enum Colors" void moveSetRumble(uint8_t rumble); - bool PS3BTConnected;// Variable used to indicate if the normal playstation controller is successfully connected - bool PS3MoveBTConnected;// Variable used to indicate if the move controller is successfully connected - bool PS3NavigationBTConnected;// Variable used to indicate if the navigation controller is successfully connected + bool PS3Connected;// Variable used to indicate if the normal playstation controller is successfully connected + bool PS3MoveConnected;// Variable used to indicate if the move controller is successfully connected + bool PS3NavigationConnected;// Variable used to indicate if the navigation controller is successfully connected bool buttonChanged;//Indicate if a button has been changed bool buttonPressed;//Indicate if a button has been pressed bool buttonReleased;//Indicate if a button has been released @@ -411,9 +411,7 @@ private: uint32_t ButtonState; uint32_t OldButtonState; uint32_t timerHID;// timer used see if there has to be a delay before a new HID command - uint32_t dtimeHID;// delta time since last HID command uint32_t timerBulbRumble;// used to continuously set PS3 Move controller Bulb and rumble values - uint32_t dtimeBulbRumble;// used to know how longs since last since the Bulb and rumble values was written uint8_t my_bdaddr[6]; //Change to your dongles Bluetooth address in PS3BT.cpp uint8_t hcibuf[BULK_MAXPKTSIZE];//General purpose buffer for hci data diff --git a/examples/PS3/PS3BT/PS3BT.ino b/examples/PS3/PS3BT/PS3BT.ino new file mode 100644 index 00000000..7830aa01 --- /dev/null +++ b/examples/PS3/PS3BT/PS3BT.ino @@ -0,0 +1,202 @@ +/* + Example sketch for the PS3 Bluetooth library - developed by Kristian Lauszus + For more information visit my blog: http://blog.tkjelectronics.dk/ or + send me an e-mail: kristianl@tkjelectronics.com + */ + +#include +USB Usb; +/* You can create the instance of the class in two ways */ +PS3BT PS3(&Usb); // This will just create the instance +//PS3BT PS3(&Usb,0x00,0x15,0x83,0x3D,0x0A,0x57); // This will also store the bluetooth address - this can be obtained from the dongle when running the sketch + +boolean printTemperature; +boolean printAngle; + +void setup() +{ + Serial.begin(115200); + + if (Usb.Init() == -1) { + Serial.print(F("\r\nOSC did not start")); + while(1); //halt + } + Serial.print(F("\r\nPS3 Bluetooth Library Started")); +} +void loop() +{ + Usb.Task(); + + if(PS3.PS3Connected || PS3.PS3NavigationConnected) { + if(PS3.getAnalogHat(LeftHatX) > 137 || PS3.getAnalogHat(LeftHatX) < 117 || PS3.getAnalogHat(LeftHatY) > 137 || PS3.getAnalogHat(LeftHatY) < 117 || PS3.getAnalogHat(RightHatX) > 137 || PS3.getAnalogHat(RightHatX) < 117 || PS3.getAnalogHat(RightHatY) > 137 || PS3.getAnalogHat(RightHatY) < 117) { + if(PS3.getAnalogHat(LeftHatX) > 137 || PS3.getAnalogHat(LeftHatX) < 117) { + Serial.print(F("LeftHatX: ")); + Serial.print(PS3.getAnalogHat(LeftHatX)); + Serial.print("\t"); + } if(PS3.getAnalogHat(LeftHatY) > 137 || PS3.getAnalogHat(LeftHatY) < 117) { + Serial.print(F("LeftHatY: ")); + Serial.print(PS3.getAnalogHat(LeftHatY)); + Serial.print("\t"); + } if(PS3.getAnalogHat(RightHatX) > 137 || PS3.getAnalogHat(RightHatX) < 117) { + Serial.print(F("RightHatX: ")); + Serial.print(PS3.getAnalogHat(RightHatX)); + Serial.print("\t"); + } if(PS3.getAnalogHat(RightHatY) > 137 || PS3.getAnalogHat(RightHatY) < 117) { + Serial.print(F("RightHatY: ")); + Serial.print(PS3.getAnalogHat(RightHatY)); + } + Serial.println(""); + } + + //Analog button values can be read from almost all buttons + if(PS3.getAnalogButton(L2_ANALOG) > 0 || PS3.getAnalogButton(R2_ANALOG) > 0) { + if(PS3.getAnalogButton(L2_ANALOG) > 0) { + Serial.print(F("L2: ")); + Serial.print(PS3.getAnalogButton(L2_ANALOG)); + Serial.print("\t"); + } if(PS3.getAnalogButton(R2_ANALOG) > 0) { + Serial.print(F("R2: ")); + Serial.print(PS3.getAnalogButton(R2_ANALOG)); + } + Serial.println(""); + } + + if(PS3.buttonPressed) + { + Serial.print(F("PS3 Controller")); + + if(PS3.getButton(PS)) { + Serial.print(F(" - PS")); + PS3.disconnect(); + } else { + if(PS3.getButton(TRIANGLE)) + Serial.print(F(" - Traingle")); + if(PS3.getButton(CIRCLE)) + Serial.print(F(" - Circle")); + if(PS3.getButton(CROSS)) + Serial.print(F(" - Cross")); + if(PS3.getButton(SQUARE)) + Serial.print(F(" - Square")); + + if(PS3.getButton(UP)) { + Serial.print(F(" - Up")); + PS3.setAllOff(); + PS3.setLedOn(LED4); + } if(PS3.getButton(RIGHT)) { + Serial.print(F(" - Right")); + PS3.setAllOff(); + PS3.setLedOn(LED1); + } if(PS3.getButton(DOWN)) { + Serial.print(F(" - Down")); + PS3.setAllOff(); + PS3.setLedOn(LED2); + } if(PS3.getButton(LEFT)) { + Serial.print(F(" - Left")); + PS3.setAllOff(); + PS3.setLedOn(LED3); + } + + if(PS3.getButton(L1)) + Serial.print(F(" - L1")); + //if(PS3.getButton(L2)) + //Serial.print(F(" - L2")); + if(PS3.getButton(L3)) + Serial.print(F(" - L3")); + if(PS3.getButton(R1)) + Serial.print(F(" - R1")); + //if(PS3.getButton(R2)) + //Serial.print(F(" - R2")); + if(PS3.getButton(R3)) + Serial.print(F(" - R3")); + + if(PS3.getButton(SELECT)) { + Serial.print(F(" - Select - ")); + Serial.print(PS3.getStatusString()); + } if(PS3.getButton(START)) { + Serial.print(F(" - Start")); + printAngle = !printAngle; + while(PS3.getButton(START)) + Usb.Task(); + } + Serial.println(""); + } + } + if(printAngle) { + Serial.print(F("Pitch: ")); + Serial.print(PS3.getAngle(Pitch)); + Serial.print(F("\tRoll: ")); + Serial.println(PS3.getAngle(Roll)); + } + } + else if(PS3.PS3MoveConnected) + { + if(PS3.getAnalogButton(T_MOVE_ANALOG) > 0) { + Serial.print(F("T: ")); + Serial.println(PS3.getAnalogButton(T_MOVE_ANALOG)); + } if(PS3.buttonPressed) { + Serial.print(F("PS3 Move Controller")); + + if(PS3.getButton(PS_MOVE)) { + Serial.print(F(" - PS")); + PS3.disconnect(); + } else { + if(PS3.getButton(SELECT_MOVE)) { + Serial.print(F(" - Select")); + printTemperature = !printTemperature; + while(PS3.getButton(SELECT_MOVE)) + Usb.Task(); + } if(PS3.getButton(START_MOVE)) { + Serial.print(F(" - Start")); + printAngle = !printAngle; + while(PS3.getButton(START_MOVE)) + Usb.Task(); + } if(PS3.getButton(TRIANGLE_MOVE)) { + Serial.print(F(" - Triangle")); + PS3.moveSetBulb(Red); + } if(PS3.getButton(CIRCLE_MOVE)) { + Serial.print(F(" - Circle")); + PS3.moveSetBulb(Green); + } if(PS3.getButton(SQUARE_MOVE)) { + Serial.print(F(" - Square")); + PS3.moveSetBulb(Blue); + } if(PS3.getButton(CROSS_MOVE)) { + Serial.print(F(" - Cross")); + PS3.moveSetBulb(Yellow); + } if(PS3.getButton(MOVE_MOVE)) { + PS3.moveSetBulb(Off); + Serial.print(F(" - Move")); + Serial.print(F(" - ")); + Serial.print(PS3.getStatusString()); + } + //if(PS3.getButton(T)) + //Serial.print(F(" - T")); + + Serial.println(""); + } + } + if(printAngle) { + Serial.print(F("Pitch: ")); + Serial.print(PS3.getAngle(Pitch)); + Serial.print(F("\tRoll: ")); + Serial.println(PS3.getAngle(Roll)); + } + else if(printTemperature) { + String templow; + String temphigh; + String input = String(PS3.getSensor(tempMove)); + + if (input.length() > 3) { + temphigh = input.substring(0, 2); + templow = input.substring(2); + } else { + temphigh = input.substring(0, 1); + templow = input.substring(1); + } + Serial.print(F("Temperature: ")); + Serial.print(temphigh); + Serial.print(F(".")); + Serial.println(templow); + } + } + delay(1); +} diff --git a/examples/PS3BT/PS3BT.ino b/examples/PS3BT/PS3BT.ino deleted file mode 100644 index df667a4e..00000000 --- a/examples/PS3BT/PS3BT.ino +++ /dev/null @@ -1,202 +0,0 @@ -/* - Example sketch for the PS3 Bluetooth library - developed by Kristian Lauszus - For more information visit my blog: http://blog.tkjelectronics.dk/ or - send me an e-mail: kristianl@tkjelectronics.com - */ - -#include -USB Usb; -/* You can create the instance of the class in two ways */ -PS3BT BT(&Usb); // This will just create the instance -//PS3BT BT(&Usb,0x00,0x15,0x83,0x3D,0x0A,0x57); // This will also store the bluetooth address - this can be obtained from the dongle when running the sketch - -boolean printTemperature; -boolean printAngle; - -void setup() -{ - Serial.begin(115200); - - if (Usb.Init() == -1) { - Serial.print(F("\r\nOSC did not start")); - while(1); //halt - } - Serial.print(F("\r\nPS3 Bluetooth Library Started")); -} -void loop() -{ - Usb.Task(); - - if(BT.PS3BTConnected || BT.PS3NavigationBTConnected) { - if(BT.getAnalogHat(LeftHatX) > 137 || BT.getAnalogHat(LeftHatX) < 117 || BT.getAnalogHat(LeftHatY) > 137 || BT.getAnalogHat(LeftHatY) < 117 || BT.getAnalogHat(RightHatX) > 137 || BT.getAnalogHat(RightHatX) < 117 || BT.getAnalogHat(RightHatY) > 137 || BT.getAnalogHat(RightHatY) < 117) { - if(BT.getAnalogHat(LeftHatX) > 137 || BT.getAnalogHat(LeftHatX) < 117) { - Serial.print(F("LeftHatX: ")); - Serial.print(BT.getAnalogHat(LeftHatX)); - Serial.print("\t"); - } if(BT.getAnalogHat(LeftHatY) > 137 || BT.getAnalogHat(LeftHatY) < 117) { - Serial.print(F("LeftHatY: ")); - Serial.print(BT.getAnalogHat(LeftHatY)); - Serial.print("\t"); - } if(BT.getAnalogHat(RightHatX) > 137 || BT.getAnalogHat(RightHatX) < 117) { - Serial.print(F("RightHatX: ")); - Serial.print(BT.getAnalogHat(RightHatX)); - Serial.print("\t"); - } if(BT.getAnalogHat(RightHatY) > 137 || BT.getAnalogHat(RightHatY) < 117) { - Serial.print(F("RightHatY: ")); - Serial.print(BT.getAnalogHat(RightHatY)); - } - Serial.println(""); - } - - //Analog button values can be read from almost all buttons - if(BT.getAnalogButton(L2_ANALOG) > 0 || BT.getAnalogButton(R2_ANALOG) > 0) { - if(BT.getAnalogButton(L2_ANALOG) > 0) { - Serial.print(F("L2: ")); - Serial.print(BT.getAnalogButton(L2_ANALOG)); - Serial.print("\t"); - } if(BT.getAnalogButton(R2_ANALOG) > 0) { - Serial.print(F("R2: ")); - Serial.print(BT.getAnalogButton(R2_ANALOG)); - } - Serial.println(""); - } - - if(BT.buttonPressed) - { - Serial.print(F("PS3 Controller")); - - if(BT.getButton(PS)) { - Serial.print(F(" - PS")); - BT.disconnect(); - } else { - if(BT.getButton(TRIANGLE)) - Serial.print(F(" - Traingle")); - if(BT.getButton(CIRCLE)) - Serial.print(F(" - Circle")); - if(BT.getButton(CROSS)) - Serial.print(F(" - Cross")); - if(BT.getButton(SQUARE)) - Serial.print(F(" - Square")); - - if(BT.getButton(UP)) { - Serial.print(F(" - Up")); - BT.setAllOff(); - BT.setLedOn(LED4); - } if(BT.getButton(RIGHT)) { - Serial.print(F(" - Right")); - BT.setAllOff(); - BT.setLedOn(LED1); - } if(BT.getButton(DOWN)) { - Serial.print(F(" - Down")); - BT.setAllOff(); - BT.setLedOn(LED2); - } if(BT.getButton(LEFT)) { - Serial.print(F(" - Left")); - BT.setAllOff(); - BT.setLedOn(LED3); - } - - if(BT.getButton(L1)) - Serial.print(F(" - L1")); - //if(BT.getButton(L2)) - //Serial.print(F(" - L2")); - if(BT.getButton(L3)) - Serial.print(F(" - L3")); - if(BT.getButton(R1)) - Serial.print(F(" - R1")); - //if(BT.getButton(R2)) - //Serial.print(F(" - R2")); - if(BT.getButton(R3)) - Serial.print(F(" - R3")); - - if(BT.getButton(SELECT)) { - Serial.print(F(" - Select - ")); - Serial.print(BT.getStatusString()); - } if(BT.getButton(START)) { - Serial.print(F(" - Start")); - printAngle = !printAngle; - while(BT.getButton(START)) - Usb.Task(); - } - Serial.println(""); - } - } - if(printAngle) { - Serial.print(F("Pitch: ")); - Serial.print(BT.getAngle(Pitch)); - Serial.print(F("\tRoll: ")); - Serial.println(BT.getAngle(Roll)); - } - } - else if(BT.PS3MoveBTConnected) - { - if(BT.getAnalogButton(T_MOVE_ANALOG) > 0) { - Serial.print(F("T: ")); - Serial.println(BT.getAnalogButton(T_MOVE_ANALOG)); - } if(BT.buttonPressed) { - Serial.print(F("PS3 Move Controller")); - - if(BT.getButton(PS_MOVE)) { - Serial.print(F(" - PS")); - BT.disconnect(); - } else { - if(BT.getButton(SELECT_MOVE)) { - Serial.print(F(" - Select")); - printTemperature = !printTemperature; - while(BT.getButton(SELECT_MOVE)) - Usb.Task(); - } if(BT.getButton(START_MOVE)) { - Serial.print(F(" - Start")); - printAngle = !printAngle; - while(BT.getButton(START_MOVE)) - Usb.Task(); - } if(BT.getButton(TRIANGLE_MOVE)) { - Serial.print(F(" - Triangle")); - BT.moveSetBulb(Red); - } if(BT.getButton(CIRCLE_MOVE)) { - Serial.print(F(" - Circle")); - BT.moveSetBulb(Green); - } if(BT.getButton(SQUARE_MOVE)) { - Serial.print(F(" - Square")); - BT.moveSetBulb(Blue); - } if(BT.getButton(CROSS_MOVE)) { - Serial.print(F(" - Cross")); - BT.moveSetBulb(Yellow); - } if(BT.getButton(MOVE_MOVE)) { - BT.moveSetBulb(Off); - Serial.print(F(" - Move")); - Serial.print(F(" - ")); - Serial.print(BT.getStatusString()); - } - //if(BT.getButton(T)) - //Serial.print(F(" - T")); - - Serial.println(""); - } - } - if(printAngle) { - Serial.print(F("Pitch: ")); - Serial.print(BT.getAngle(Pitch)); - Serial.print(F("\tRoll: ")); - Serial.println(BT.getAngle(Roll)); - } - else if(printTemperature) { - String templow; - String temphigh; - String input = String(BT.getSensor(tempMove)); - - if (input.length() > 3) { - temphigh = input.substring(0, 2); - templow = input.substring(2); - } else { - temphigh = input.substring(0, 1); - templow = input.substring(1); - } - Serial.print(F("Temperature: ")); - Serial.print(temphigh); - Serial.print(F(".")); - Serial.println(templow); - } - } - delay(1); -} diff --git a/keywords.txt b/keywords.txt index 8b11fbcf..89597cf3 100644 --- a/keywords.txt +++ b/keywords.txt @@ -1,16 +1,17 @@ -################################################ -# Syntax Coloring Map For PS3 Bluetooth Library -################################################ +#################################################### +# Syntax Coloring Map For PS3 Bluetooth/USB Library +#################################################### -################################################ +#################################################### # Datatypes (KEYWORD1) -################################################ +#################################################### PS3BT KEYWORD1 +PS3USB KEYWORD1 -################################################ +#################################################### # Methods and Functions (KEYWORD2) -################################################ +#################################################### setBdaddr KEYWORD2 setMoveBdaddr KEYWORD2 @@ -32,18 +33,18 @@ setLedToggle KEYWORD2 moveSetBulb KEYWORD2 moveSetRumble KEYWORD2 -PS3BTConnected KEYWORD2 -PS3MoveBTConnected KEYWORD2 -PS3NavigationBTConnected KEYWORD2 +PS3Connected KEYWORD2 +PS3MoveConnected KEYWORD2 +PS3NavigationConnected KEYWORD2 buttonChanged KEYWORD2 buttonPressed KEYWORD2 buttonReleased KEYWORD2 isWatingForConnection KEYWORD2 -################################################ +#################################################### # Constants and enums (LITERAL1) -################################################ +#################################################### LED1 LITERAL1 LED2 LITERAL1 LED3 LITERAL1