@@ -23,7 +23,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2323OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2424SOFTWARE.
2525
26- Version: 1.1.1
26+ Version: 1.1.2
2727*/
2828#include < ESP8266WiFi.h>
2929#include < WiFiClient.h>
@@ -140,7 +140,7 @@ void handleWebSocketMessage(AsyncWebSocket *server, AsyncWebSocketClient *client
140140 buffer[len] = 0 ;
141141 Serial.printf (" Handle WS: %s - len: %d\n " , buffer, len);
142142
143- char * token = strtok (buffer, " :" );
143+ char *token = strtok (buffer, " :" );
144144
145145 if (!strcmp (" cmd" , token)) {
146146 // Serial.println("cmd");
@@ -158,18 +158,42 @@ void handleWebSocketMessage(AsyncWebSocket *server, AsyncWebSocketClient *client
158158 // status
159159 client->text (" cmd:get:status:" + String (ledState1));
160160 } else if (!strcmp (" speed" , token)) {
161- String speed;
162- // speed
163- if (interruptInterval1 == INT_SLOW)
164- speed = " 1" ;
165- else if (interruptInterval1 == INT_MED)
166- speed = " 2" ;
167- else if (interruptInterval1 == INT_FAST)
168- speed = " 3" ;
169- else if (interruptInterval1 == INT_FASTEST)
170- speed = " 4" ;
171-
172- client->text (" cmd:get:speed:" + String (speed));
161+ String speed = " 1" ;
162+ // speed - cmd:get:speed:interrupt:speed
163+ char *intNum = strtok (NULL , " :" );
164+ Serial.println (" interrupt:" + String (intNum));
165+ if (intNum[0 ] == ' 1' ) {
166+ // interrupt - 1
167+ if (interruptInterval1 == INT_SLOW)
168+ speed = " 1" ;
169+ else if (interruptInterval1 == INT_MED)
170+ speed = " 2" ;
171+ else if (interruptInterval1 == INT_FAST)
172+ speed = " 3" ;
173+ else if (interruptInterval1 == INT_FASTEST)
174+ speed = " 4" ;
175+ } else if (intNum[0 ] == ' 2' ) {
176+ // interrupt - 2
177+ if (interruptInterval2 == INT_SLOW)
178+ speed = " 1" ;
179+ else if (interruptInterval2 == INT_MED)
180+ speed = " 2" ;
181+ else if (interruptInterval2 == INT_FAST)
182+ speed = " 3" ;
183+ else if (interruptInterval2 == INT_FASTEST)
184+ speed = " 4" ;
185+ } else if (intNum[0 ] == ' 3' ) {
186+ // interrupt - 3
187+ if (interruptInterval3 == INT_SLOW)
188+ speed = " 1" ;
189+ else if (interruptInterval3 == INT_MED)
190+ speed = " 2" ;
191+ else if (interruptInterval3 == INT_FAST)
192+ speed = " 3" ;
193+ else if (interruptInterval3 == INT_FASTEST)
194+ speed = " 4" ;
195+ }
196+ client->text (" cmd:get:speed:" + String (intNum) + " :" + String (speed));
173197 } else if (!strcmp (" config" , token)) {
174198 // config
175199 String fileData;
@@ -197,10 +221,14 @@ void handleWebSocketMessage(AsyncWebSocket *server, AsyncWebSocketClient *client
197221 ledState1 = !ledState1;
198222 client->text (" cmd:set:toggle:" + String (ledState1));
199223 } else if (!strcmp (" speed" , token)) {
200- unsigned long tmpSpeed;
201- // speed
224+ // default to slow
225+ unsigned long tmpSpeed = INT_SLOW;
226+ // speed - cmd:set:speed:interrupt:speed
227+ char *intNum = strtok (NULL , " :" );
228+ Serial.println (" interrupt:" + String (intNum));
202229 char *speed = strtok (NULL , " :" );
203- Serial.println (speed);
230+ Serial.println (" speed:" + String (speed));
231+
204232 if (strlen (speed) == 1 ) {
205233 if (speed[0 ] == ' 1' )
206234 tmpSpeed = INT_SLOW;
@@ -210,14 +238,30 @@ void handleWebSocketMessage(AsyncWebSocket *server, AsyncWebSocketClient *client
210238 tmpSpeed = INT_FAST;
211239 else if (speed[0 ] == ' 4' )
212240 tmpSpeed = INT_FASTEST;
213-
241+ }
242+ if (intNum[0 ] == ' 1' ) {
243+ // interrupt - 1
214244 if (tmpSpeed != interruptInterval1) {
215245 interruptInterval1 = tmpSpeed;
216- // update the interval for ledTimerISR
246+ // update the interval
217247 ISR_Timer.changeInterval (timer1_idx, interruptInterval1);
218248 }
249+ } else if (intNum[0 ] == ' 2' ) {
250+ // interrupt - 2
251+ if (tmpSpeed != interruptInterval2) {
252+ interruptInterval2 = tmpSpeed;
253+ // update the interval
254+ ISR_Timer.changeInterval (timer2_idx, interruptInterval2);
255+ }
256+ } else if (intNum[0 ] == ' 3' ) {
257+ // interrupt - 3
258+ if (tmpSpeed != interruptInterval2) {
259+ interruptInterval3 = tmpSpeed;
260+ // update the interval
261+ ISR_Timer.changeInterval (timer3_idx, interruptInterval3);
262+ }
219263 }
220- client->text (" cmd:set:speed:" + String (speed));
264+ client->text (" cmd:set:speed:" + String (intNum) + " : " + String ( speed));
221265 } else if (!strcmp (" config" , token)) {
222266 String (buf);
223267 // config
0 commit comments