@@ -25,6 +25,7 @@ PS4BT PS4(&Btd, PAIR);
2525// PS4BT PS4(&Btd);
2626
2727boolean printAngle, printTouch;
28+ uint8_t oldL2Value, oldR2Value;
2829
2930void setup () {
3031 Serial.begin (115200 );
@@ -56,28 +57,46 @@ void loop() {
5657 Serial.print (F (" \t R2: " ));
5758 Serial.print (PS4.getAnalogButton (R2));
5859 }
60+ if (PS4.getAnalogButton (L2) != oldL2Value || PS4.getAnalogButton (R2) != oldR2Value) // Only write value if it's different
61+ PS4.setRumbleOn (PS4.getAnalogButton (L2), PS4.getAnalogButton (R2));
62+ oldL2Value = PS4.getAnalogButton (L2);
63+ oldR2Value = PS4.getAnalogButton (R2);
64+
5965 if (PS4.getButtonClick (PS)) {
6066 Serial.print (F (" \r\n PS" ));
6167 PS4.disconnect ();
6268 }
6369 else {
64- if (PS4.getButtonClick (TRIANGLE))
70+ if (PS4.getButtonClick (TRIANGLE)) {
6571 Serial.print (F (" \r\n Traingle" ));
66- if (PS4.getButtonClick (CIRCLE))
72+ PS4.setRumbleOn (RumbleLow);
73+ }
74+ if (PS4.getButtonClick (CIRCLE)) {
6775 Serial.print (F (" \r\n Circle" ));
68- if (PS4.getButtonClick (CROSS))
76+ PS4.setRumbleOn (RumbleHigh);
77+ }
78+ if (PS4.getButtonClick (CROSS)) {
6979 Serial.print (F (" \r\n Cross" ));
70- if (PS4.getButtonClick (SQUARE))
80+ PS4.setLedFlash (10 , 10 ); // Set it to blink rapidly
81+ }
82+ if (PS4.getButtonClick (SQUARE)) {
7183 Serial.print (F (" \r\n Square" ));
84+ PS4.setLedFlash (0 , 0 ); // Turn off blinking
85+ }
7286
73- if (PS4.getButtonClick (UP))
87+ if (PS4.getButtonClick (UP)) {
7488 Serial.print (F (" \r\n Up" ));
75- if (PS4.getButtonClick (RIGHT))
89+ PS4.setLed (Red);
90+ } if (PS4.getButtonClick (RIGHT)) {
7691 Serial.print (F (" \r\n Right" ));
77- if (PS4.getButtonClick (DOWN))
92+ PS4.setLed (Blue);
93+ } if (PS4.getButtonClick (DOWN)) {
7894 Serial.print (F (" \r\n Down" ));
79- if (PS4.getButtonClick (LEFT))
95+ PS4.setLed (Yellow);
96+ } if (PS4.getButtonClick (LEFT)) {
8097 Serial.print (F (" \r\n Left" ));
98+ PS4.setLed (Green);
99+ }
81100
82101 if (PS4.getButtonClick (L1))
83102 Serial.print (F (" \r\n L1" ));
0 commit comments