a bugfix.

This commit is contained in:
Dooho Yi 2026-04-22 14:05:51 +09:00
parent 02e3872303
commit 6831e47207

View file

@ -91,7 +91,7 @@
// ** IDENTITY **
#define MY_SPECIES ("YELLOW")
#define MY_NAME ("YELOWEE {a.k.a. yellow1}")
#define MY_NAME ("YELOWEE {a.k.a. yellow5}")
//arduino
#include <Arduino.h>
@ -190,25 +190,28 @@ std::vector< std::vector<float> > yellowA = {
//
extern Task riff_A_task;
int wordA = 0;
float rateA = 150.0; // * 100 (scaling factor)
float rateA = 20.0; // * 20 (scaling factor)
// 94:b9:7e:?? ?? ?? => 100
// 94:b9:7e:14:4e:2c => 150 (?)
// 94:b9:7e:14:49:b6 => 20
// 94:b9:7e:14:49:b6 => 20 (x)
// E8:DB:84:DF:40:C3 => 20
float intervalA = 500.0; //500 ms
void riff_A() {
if (riff_A_task.isLastIteration()) {
//we are done. stop now.
rest_task.restart();
} else {
//check out next letter!
//check out next letter! (==value)
speed = yellowA[wordA][riff_A_task.getRunCounter()-1] * rateA;
set_speed_task.restart();
}
//info
Serial.print("riff_A (i=");
Serial.print(riff_A_task.getRunCounter()-1);
Serial.print(", r=");
Serial.print(speed);
Serial.println(")");
//if we are done... schedule a 'rest_task'
if (riff_A_task.isLastIteration()) {
rest_task.restartDelayed(intervalA + 100);
}
}
Task riff_A_task(0, TASK_ONCE, &riff_A, &runner, false);
//
@ -224,7 +227,7 @@ Task riff_A_start_task(0, TASK_ONCE, &riff_A_start, &runner, false);
//
//riff_B
std::vector< std::vector<float> > yellowB = {
{0.685715,0.723811,0.800002,0.485714,0.519047,0.552381,0.580953,0,0,0,0,0,0,0,0,0.533333,0.571429,0.604762,0.638096,0.653969,0.669842,0.685715,0.695239,4.17233e-07,0.00952381,0.00952381,0.00952381,0.00952381,0.00952381,0.00952381,0.00952381,0.366666,0.380951,0.399999,0.423809,0.933336,0.952384,0.957145,0.961907,0,0,0,0,0,0,0.438095,0.457142,0.457142,0,0.361904},
{0.685715,0.723811,0.800002,0.485714,0.519047,0.552381,0.580953,0,0,0,0,0,0,0,0,-0.0285652,-0.257127,-0.29522,-0.333314,-0.361884,-0.399977,-0.419024,-0.428548,4.17233e-07,0.00952381,0.00952381,0.00952381,0.00952381,0.00952381,0.00952381,0.00952381,0.0666683,0.00952798,-0.0571358,-0.276174,-0.285697,-0.304744,-0.314267,0.961907,0,0,0,0,0,0,0.438095,0.457142,0.457142,0,0.361904},
//50
{0,0.742857,0.00952387,0.00952387,0.00952387,0.00952387,0.742857,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.742857,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.742857,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.742857,0.00952387,0.00952387,0.00952387,0.742857,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.742857,0.00952387,0.00952387,0.00952387,0.00952387,0.714286,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,0.00952387,-5.96046e-08},
@ -239,25 +242,28 @@ std::vector< std::vector<float> > yellowB = {
//
extern Task riff_B_task;
int wordB = 0;
float rateB = 150.0; // * 100 (scaling factor)
float rateB = 10.0; // * 10 (scaling factor)
// 94:b9:7e:?? ?? ?? => 100
// 94:b9:7e:14:4e:2c => 150 (?)
// 94:b9:7e:14:49:b6 => 20
// 94:b9:7e:14:49:b6 => 10 (x)
// E8:DB:84:DF:40:C3 => 10
float intervalB = 500.0; //500 ms
void riff_B() {
if (riff_B_task.isLastIteration()) {
//we are done. stop now.
rest2_task.restart();
} else {
//check out next letter!
speed2 = yellowB[wordB][riff_B_task.getRunCounter()-1] * rateB;
set_speed2_task.restart();
}
//info
Serial.print("riff_B (i=");
Serial.print(riff_B_task.getRunCounter()-1);
Serial.print(", r=");
Serial.print(speed2);
Serial.println(")");
//if we are done... schedule a 'rest_task'
if (riff_B_task.isLastIteration()) {
rest2_task.restartDelayed(intervalB + 100);
}
}
Task riff_B_task(0, TASK_ONCE, &riff_B, &runner, false);
//
@ -301,7 +307,7 @@ Task riff_B_start_task(0, TASK_ONCE, &riff_B_start, &runner, false);
// count++;
// }
// }
// Task conductor_lonely_task(1000, TASK_FOREVER, &conductor_lonely, &runner, false); //check every 10 sec.
// Task conductor_lonely_task(1000, TASK_FOREVER, &conductor_lonely, &runner, false);
// //*-*-*-*-*-*-*-*-*-*-*-*-*
// ==[DISABLE]==