• Hallo Zusammen, Aufgrund der aktuellen Situation setzten wir die Möglichkeit aus, sich mit Gmail zu registrieren. Wir bitten um Verständnis Das RCMP Team

Projekt ESP32 Arduino RC Sound und Licht Controller

Bastler1024

Mitglied
New board, new processor.
No image on the display.
1. Check the TFT_eSPI config file
2. Check the wiring and the display itself. I ordered 2 LCDs - both were broken and not working. Had to order another one from another seller.
3. Try a simple sketch to test the display:

Code:
#include <TFT_eSPI.h>

TFT_eSPI tft = TFT_eSPI();

void setup() {
  tft.init();

  tft.setRotation(3);
}

void loop() {
  tft.fillScreen(TFT_GREEN);
  delay(300);
  tft.fillRect(0,0,160,80,TFT_YELLOW);
  delay(300);
  tft.fillRect(0,0,70,70,TFT_BLUE);
  delay(300);
  tft.fillRect(20,20,30,30,TFT_RED);
  delay(1000);
  tft.setTextColor(TFT_WHITE, TFT_BLACK);
  tft.setCursor(0, 0, 2);

  tft.println("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
  delay(3000);

}
 

Bastler1024

Mitglied
hast du mal versucht Bluetooth einzubinden und darüber die Konfiguration (Servo Anschläge ...) zu machen?
Lassen sich überhaupt in deinen Code Bluetooth oder Wifi Bibliotheken einbinden?
Die Frage bzgl. Bluetooth habe ich mir auch gestellt, vor allem weil ich über Bluetooth später die Elektronik im Trailer steuern wollte. Aktiviertes WiFi zieht deutlich mehr Strom und ist eher uninteressant. Ein anderes Problem könnte sein, dass WiFi/Bluetooth einen Core vom ESP32 fast exklusiv für sich beanspruchen, was sich auf den restlichen zeitkritischen Code des Controllers auswirken könnte.
Für die Konfiguration kam mir die serielle Schnittstelle in den Sinn und eine Web App, die einfach im Browser funktioniert. Die Konfigurierbarkeit ist jedoch nicht grenzenlos - Funktionen, die über den Präprozossor (#define-s im Code) gar nicht im Code vorhanden sind, können logischerweise auch nicht konfiguriert werden...
 
Die Frage bzgl. Bluetooth habe ich mir auch gestellt
Ich hab vor einer Weile mal Tests gemacht und bin zum Schluss gekommen, dass wireless den ESP32 zu stark belastet. Klar wäre es nett, BT zu haben, die Philosophie ist aber eine andere: Konfigurieren über das ressourcenschonende #define (was nicht benötigt wird, wird gar nicht auf den ESP geladen) vor dem Heraufladen.
Bin natürlich für eure Erkenntnisse und Vorschläge offen.
 

GeeKaa

Mitglied
1. Check the TFT_eSPI config file
2. Check the wiring and the display itself. I ordered 2 LCDs - both were broken and not working. Had to order another one from another seller.
3. Try a simple sketch to test the display:.
Thanks.
Your sketch compiled without any problems.

Esp32 only vin and gnd.
Display on 17,18,19,23.
No image.
Still waiting for the other displays
 
Zuletzt bearbeitet:

Benny

Mitglied
Habe mich näher mit dem Projekt beschäftigt. Echt cool da steckt eine Menge Detailarbeit drin.
Habe daher gestern Abend einen Brettaufbau gestartet und tatsächlich ziemlich schnell sound gehabt.
Jetzt ist es leider so, dass bei Gas an der FB der Motor anspringt und beim zweiten mal dann auch hochfährt, bleibt jedoch bei vollgassound (500) hängen obwohl Gas an FB auf neutral steht. Rückwärts gleiches Verhalten mit piep.
Habe am Oszi nachgesehen das Eingangssignal vom Empfänger kommt schön linear rein, keine Sprünge oder ähnliches.
Wo in welchem Header muss ich suchen?
 
Echt cool da steckt eine Menge Detailarbeit drin.
Danke.
Das kann passieren, wenn die Maximaldrehzahl (uint32_t MAX_RPM_PERCENTAGE in der Fahrzeugdatei) zu hoch eingestellt ist. Der Prozessor ist dann mit dem Playback-Interrupt so stark ausgelastet, dass die Eingangssignale nicht mehr aktualisiert werden können. Es existiert zwar ein Limit, je nachdem welche Kommunikationsart verwendet wird, es kann aber sein, dass dies in der Zwischenzeit zu hoch ist, da ja einiges an zusätzlichem Code hinzu gekommen ist...

Verwendest du denn ein eigenes Fahrzeugprofil? Ansteuerung wohl über PWM? Ich empfehle SBUS, das benötigt am wenigsten Prozessorzeit, um die Eingänge zu lesen.
 

GeeKaa

Mitglied
For my display (Waveshare) I needed to
#define ST7735_GREENTAB160x80 // For 160 x 80 display (BGR, inverted, 26 offset)
to get the correct colors and to remove the white line at the bottom of the display.
:)
Can I use the 3V3 from the Esp32 for the VCC of the display?
The display consumes 19 mA.
 
Zuletzt bearbeitet:

GeeKaa

Mitglied
:confused:
Display connected to the circuit board.
VCC of display to 3v3.
Still no image. Compiler warning though.

D:Arduino libraries/FastLEDsrc/FastLED.h:14:21: note: #pragma message: FastLED version 3.004.000
# pragma message "FastLED version 3.004.000"
^
In the file included in D:、FastLED/FastLED.h:65:0,
from D:、Rc_Engine_Sound_ESP32.ino:71:
D:、Arduino:libraries/fastspi.h:145:23: note: #pragma message: No hardware SPI pins defined. All SPI access will be bitbanged by default.
# pragma message "No hardware SPI pins defined. All SPI access will default to bitbanged output"

What else can I do?
 

GeeKaa

Mitglied
It works well with the sketch of Bastler 1024 number #1864 on a separate Esp32 with power supply and display on 3V3.
The notification is a warning. Upload is going well. Engine, light and sound work. Display has backlight but nothing more.
 
Strange. :unsure:

Your "9_adjustmentsDashboard.h" looks like this?
Code:
/* DASHBOARD SETTINGS ************************************************************************************************
 * 
 * for the Dashboard by Gamadril :https://github.com/Gamadril/Rc_Engine_Sound_ESP32
 *
 * Before you can use it:
 * create the folder TFT_eSPI_Setups inside your Arduino TFT_eSPI library directory
 * move/copy the file Setup43_ST7735_ESP32_80x160.h to TFT_eSPI_Setups directory
 * replace the line #include <User_Setup.h> in the file User_Setup_Select.h inside TFT_eSPI library folder with #include <TFT_eSPI_Setups/Setup43_ST7735_ESP32_80x160.h>
 * modify the Setup43_ST7735_ESP32_80x160.h file if you use other pins for the display connection
 *
 */

#define SPI_DASHBOARD // A 0.96" SPI LCD is used as dashboard: https://www.ebay.ch/itm/174458054566?hash=item289e82a7a6:g:LpAAAOSwtL1fdDtI
// WARNING:
// Pins 18 (SCL), 19 (DC), 21 (RES) & 23 (SDA) are used for the dashboard in this case!
// The dispay CS pin needs to be connected to GND.
// Shaker, sidelights and both beacon flashers will not work!

uint8_t dashRotation = 1; // 3 = normal, 1 = upside down
 
#define MAX_REAL_SPEED 110                 // max speed in km/h to show on the dashboard
int manualGearRatios[3] = {305, 165, 100}; // TAMIYA gear ratios: 1st 1:32.49, 2nd 1:17.66, 3rd 1:10.66, value div 100 (used for real shifting transmissions only!)
#define RPM_MAX 500                        // always 500
// removed in front of "#define SPI_DASHBOARD" ?
 
Top Bottom