Skip to content

Commit

Permalink
test drive
Browse files Browse the repository at this point in the history
  • Loading branch information
captFuture committed May 3, 2022
1 parent f060d84 commit dfe096d
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 30 deletions.
4 changes: 3 additions & 1 deletion src/lvgl_loop.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ if (first == 0){
lv_label_set_text_fmt(label," ");
first = 1;
}
lv_label_set_text_fmt(txt1, "speed: %d", driveSpeed );
//lv_label_set_text_fmt(txt1, "speed: %d", driveSpeed );
lv_label_set_text_fmt(txt1, "SetSpeed: %d", myDrive );
lv_label_set_text_fmt(txt2, "configNum: %d", configNum);
lv_label_set_text_fmt(txt3, "%d", configNum);

Expand All @@ -19,6 +20,7 @@ lv_gauge_set_value (gauge, 0, driveSpeed );
lv_gauge_set_value (gauge2, 0, batVoltage );
lv_gauge_set_value (gauge3, 0, forwardReverseValue*-1);
lv_gauge_set_value (gauge3, 1, forwardReverseInput);
lv_gauge_set_value (gauge3, 2, myDrive);


if(motorOn){
Expand Down
5 changes: 3 additions & 2 deletions src/lvgl_setup.h
Original file line number Diff line number Diff line change
Expand Up @@ -133,11 +133,12 @@

needle_colors[0] = lv_color_hex(0x049CD8); // blau
needle_colors[1] = lv_color_hex(0xE52521); // rot
needle_colors[2] = lv_color_hex(0x43B047); // gruen

lv_page_set_scrollbar_mode(tab3, LV_SCROLLBAR_MODE_OFF); //scroll off
gauge3 = lv_gauge_create( tab3, NULL); // Display gauge on tab3
gauge3 = lv_gauge_create(tab3, NULL); // Display gauge on tab3

lv_gauge_set_needle_count(gauge3, 2, needle_colors);
lv_gauge_set_needle_count(gauge3, 3, needle_colors);
lv_obj_set_size( gauge3, 240, 240);
lv_gauge_set_range( gauge3, -800, 800); // y range
lv_obj_align( gauge3, NULL, LV_ALIGN_CENTER, 0, -5);
Expand Down
16 changes: 14 additions & 2 deletions src/main.ino
Original file line number Diff line number Diff line change
Expand Up @@ -159,13 +159,25 @@ int first = 0;
#include "hoverboard_telemetry.h"

void accelerAte(int16_t start, int16_t target){
myDrive = target;
/*myDrive = start;
while(myDrive > target){
myDrive = myDrive - 1;
}*/
myDrive = target;

oldmyDrive = myDrive;
OLDforwardReverseValue = target; // start = target
}

void decelerAte(int16_t start, int16_t target){
myDrive = target;
/*myDrive = start;
while(myDrive < target){
myDrive = myDrive + 1;
}*/
myDrive = target;

oldmyDrive = myDrive;
OLDforwardReverseValue = target; // start = target
}

void calibrateCenter(int16_t statex, int16_t statey){
Expand Down
34 changes: 9 additions & 25 deletions src/nunchuk.h
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,9 @@

if(data) {
OLDleftRightValue = leftRightValue;
OLDforwardReverseValue = forwardReverseValue;

wii_i2c_nunchuk_state state;
wii_i2c_decode_nunchuk(data, &state);


/*M5.Lcd.setCursor(0, 0, 2);
M5.Lcd.setTextSize(1);
M5.Lcd.print("x: "); M5.Lcd.println(state.x);
M5.Lcd.print("y: "); M5.Lcd.println(state.y);
M5.Lcd.print("switches: "); M5.Lcd.print((state.c) ? "C pressed" : "C not pressed "); M5.Lcd.println((state.z) ? "Z pressed" : "Z not pressed");
M5.Lcd.print("Motor: "); M5.Lcd.println((motorOn) ? "true" : "false");
M5.Lcd.print("Config: "); M5.Lcd.println(configNum);
M5.Lcd.print("rpm: "); M5.Lcd.println(driveSpeed);
M5.Lcd.print("fac: "); M5.Lcd.println(speedFactor);
M5.Lcd.print("km/h: "); M5.Lcd.println(driveSpeed * speedFactor);*/

if(state.c){
motorOn = !motorOn;
calibrateCenter(state.x, state.y);
Expand Down Expand Up @@ -59,21 +43,21 @@
forwardReverseValue = forwardReverseValue - forwardReverseCalibration;
}

if(forwardReverseInput < -50){
/*if(forwardReverseInput < -50){
forwardReverseInput = -50; // limit backward
}
}*/

leftRightValue = map(leftRightValue, -100, 100, config.steer_min, config.steer_max);
forwardReverseValue = map(forwardReverseInput, -100, 100, config.speed_min+(config.boost_max*configNum), config.speed_max-(config.boost_max*configNum));

//M5.Lcd.print("x: "); M5.Lcd.println(leftRightValue);
//M5.Lcd.print("y: "); M5.Lcd.println(forwardReverseValue);


if(OLDforwardReverseValue > forwardReverseValue){ // brake
accelerAte(OLDforwardReverseValue, forwardReverseValue);
}else if(OLDforwardReverseValue < forwardReverseValue){
accelerAte(OLDforwardReverseValue, forwardReverseValue);
}
//decelerAte(OLDforwardReverseValue, forwardReverseValue);
myDrive = forwardReverseValue;
}else if(OLDforwardReverseValue < forwardReverseValue){
//accelerAte(OLDforwardReverseValue, forwardReverseValue);
myDrive = forwardReverseValue;
}

//float SentSpeedFactor = 2.0 * 3.14 * 0.08255 * 60 /1000;
//float tempSentSpeed = (float)forwardReverseValue * SentSpeedFactor;
Expand Down

0 comments on commit dfe096d

Please sign in to comment.