ESP32 VS Code Arduino Framework CPU Takt

OP #7072246
Lesenswert?

hallo zusammen,
ich habe gerade mit dem ESP32 angefangen und suche eine Möglichkeit den 
CPU Takt unter VS Code einzustellen. Ich weiß, dass es in der Arduino 
IDE geht, finde aber die passende Einstellung in VS Code nicht. Ich 
weiß, dass es oft nicht sinnvoll ist den Takt zu reduzieren um Strom zu 
sparen, ich glaube aber, dass mein derzeitiges Entwicklungsboard ein 
Problem mit der Stromversorgung hat. Auf vollen 240MHz funktioniert 
Bluetooth nur sehr sporadisch. Wenn ich in der Arduino IDE den Takt 
reduziere, funktioniert es.

Edit: hier noch der Code. Ist nur ein Beispiel aus dem Internet, reicht 
aber zum Testen bis jetzt
1
#include "BluetoothSerial.h" 
2

3
// init Class:
4
BluetoothSerial ESP_BT; 
5

6
// init PINs: assign any pin on ESP32
7
int led_pin_1 = 4;
8
int led_pin_2 = 0;
9
int led_pin_3 = 2;     // On some ESP32 pin 2 is an internal LED, mine did not have one
10

11
// Parameters for Bluetooth interface
12
int incoming;
13

14
void setup() {
15
  Serial.begin(19200);
16
  ESP_BT.begin("ESP32_Control"); //Name of your Bluetooth interface -> will show up on your phone
17

18
  pinMode (led_pin_1, OUTPUT);
19
  pinMode (led_pin_2, OUTPUT);
20
  pinMode (led_pin_3, OUTPUT);
21
}
22

23
void loop() {
24
  
25
  // -------------------- Receive Bluetooth signal ----------------------
26
  if (ESP_BT.available()) 
27
  {
28
    incoming = ESP_BT.read(); //Read what we receive 
29

30
    // separate button ID from button value -> button ID is 10, 20, 30, etc, value is 1 or 0
31
    int button = floor(incoming / 10);
32
    int value = incoming % 10;
33
    
34
    switch (button) {
35
      case 1:  
36
        Serial.print("Button 1:"); Serial.println(value);
37
        digitalWrite(led_pin_1, value);
38
        break;
39
      case 2:  
40
        Serial.print("Button 2:"); Serial.println(value);
41
        digitalWrite(led_pin_2, value);
42
        break;
43
      case 3:  
44
        Serial.print("Button 3:"); Serial.println(value);
45
        digitalWrite(led_pin_3, value);
46
        break;
47
    }
48
  }
49
}
Gast #7072376
Lesenswert?

David P. schrieb:
> Ich weiß, dass es oft nicht sinnvoll ist den Takt zu reduzieren um
> Strom zu sparen, ich glaube aber, dass mein derzeitiges
> Entwicklungsboard ein Problem mit der Stromversorgung hat.

Dann löse das doch erst mal. Denn so großartig weniger wird das nicht, 
wenn du nur die Taktfrequenz änderst. Mit zu schwacher Stromversorgung 
wird er niemals stabil laufen.

Es ist ein ziemlich häufiger Fehler, die Stromversorgung auf die 
durchschnittliche Stromaufnahme auszulegen, anstatt auf die maximale.
Gast #7072624
Lesenswert?

David P. schrieb:
> Ich weiß nicht, ob es genau an der Stromversorgung hängt, das war nur
> das einzige was mir eingefallen ist.

Und das erste, was man überprüfen sollte. Das kann man doch ausrechnen. 
Für den ESP kannst du 500mA ansetzen. Was brauchst du sonst noch und wie 
viel liefert dein Netzteil und der Spannunsgregler?
OP #7072655
Lesenswert?

Bei meinem Board war vorher ein AMS1117(?) verbaut, falls ich mich 
richtig erinnere. Diesen habe ich aber irgendwann mal gegen einen 
MCP1700 getauscht, aufgrund des geringeren Leerlaufstroms. Ich hatte 
knapp über 200mA gefunden als Maximalstrom für den ESP32. Dafür wäre der 
MCP1700 ja genug. Scheinbar habe ich da den falschen Wert gefunden. 
Sonst betreibe ich gerade nichts. Es geht erstmal darum, die Software 
zum laufen zu bekommen
Gast #7072658
Lesenswert?

Der MCP1700 ist definitiv zu schwach.

> Es geht erstmal darum, die Software zum laufen zu bekommen

Erstmal muss die Stromversorgung stimmen, davon hängt alles weitere ab. 
Solange die Hardware nicht in Ordnung ist wird selbst perfekte Software 
nicht stabil laufen.
OP #7072663
Lesenswert?

Stefan ⛄ F. schrieb:
>> Es geht erstmal darum, die Software zum laufen zu bekommen
>
> Erstmal muss die Stromversorgung stimmen, davon hängt alles weitere ab.
> Solange die Hardware nicht in Ordnung ist wird selbst perfekte Software
> nicht stabil laufen.

Das war nur als Erklärung gemeint, warum nichts anderes verbaut ist. Mit 
instablier Hardware lässt sich natürlich nicht arbeiten. Kannst du etwas 
stärkeres als einen MCP1700 empfehlen?
Kann ich einfach 2 davon parallel schalten?
Gast #7072866
Lesenswert?

David P. schrieb:
> Mir ist bewusst dass ich noch keinen deep sleep nutze. Ich wollte
> erstmal Bluetooth an sich zum Laufen bekommen, weil ich damit noch nicht
> gearbeitet habe. Der Rest kommt jetzt nach und nach.

Na dann bestelle dir bei Aliexpress ein paar HT7833 und Kondensatoren, 
die kann man immer mal brauchen.

Achtung: Die haben eine andere Pinbelegung, als der AMS1117!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren