Probleme mit 433MHz Funkmodulen und ProMini

Hallo Ihr Lieben,
stehe im Moment vor einem recht seltsamen Effekt was ich nicht in den Griff bekomme.

Ich verwende für ein Funksteuerungsprojekt einen Pro Mini Klon von AZDelivery und programmiere den mit einem USB-Modul. Hab das gerade nicht zur Hand - falls das wichtig ist was genau, suche ich das noch raus.

Der Empfänger steuert einen Servo - was - solange er am Computer über USB angeschlossen ist - auch wuuuuunderbar smooth und direkt funktioniert.
Versorge ich den mini jetzt per Batterie, scheinen die Timings nicht mehr zu stimmen. Er steuert letztentlich die richtige Position an, aber mit Verzögerung. Die LED am mini blinkt unregelmäßig und seltsam. Dabei macht es keinen Unterschied ob ich meinen Spannungswandler zwischen habe der mit alles auf 5V runterregelt oder ich direkt per Netzteil 5V reinfüttere.

Wegen der Servo.h muss ich für RH_Ask auf #define RH_ASK_ARDUINO_USE_TIMER2 gehen, sonst funktioniert das mit dem Servo gar nicht.

Hier mal der Empfänger-Sketch. Die Werte die von der Fernbedienung kommen, gibt er mir über die Serielle-Verbindung am PC korrekt aus. Wir haben also für val Werte von 1 bis 180.

#define RH_ASK_ARDUINO_USE_TIMER2
#include <RH_ASK.h>
#include<SPI.h>
#include<Servo.h>
Servo servoblau;


#define ledPin  13
#define rxPin  12
#define txPin  11



RH_ASK rx(2000,rxPin,txPin,3,true);
 

void setup()

{
  Serial.begin(9600);
  pinMode(ledPin,OUTPUT);
   
  if (!rx.init())
  {
    Serial.println("init failed");
  }
  else
  {
    Serial.println("-- START RX");
  }
  
  
  servoblau.attach(8); 
}


int old_val = 0;

void loop()
{ 
  uint8_t buf[RH_ASK_MAX_MESSAGE_LEN];
  uint8_t buflen = sizeof(buf);
 
   if (rx.recv(buf,&buflen)) // condizione non blocking
   {
    digitalWrite(ledPin,HIGH);
    String msg = "";
    for (int i=0; i< buflen; i++)
    {
      msg+=char(buf[i]); 
    }
    int val = msg.toInt();
    if(val != old_val)
    {
      if(val >= (old_val+0) | val <= (old_val-0))
      {
        Serial.println(val);
        servoblau.write(val ); //Position 
        //delay(200); 
        old_val=val;
      }
    }
  }
  digitalWrite(ledPin,LOW);

}

Verdammt, das lief schonmal aber ich habe keine Ahnung warum jetzt nicht mehr XD Vermutlich liegts am neuen Servo - keine Ahnung. Wäre für jede Hilfe echt dankbar… drehe langsam durch ^^

Was für Batterien verwendest du ?
Da reicht vermutlich der Strom nicht aus.

Masse verbunden?

Aktuell frage ich mich jedoch, was das mit Problem des Funkmoduls zu tun hat.

Ich tippe auch auf Einbrüche der Versorgungsspannung

Masse ist verbunden. Ist ein 14,4V Akku mit 1580 mAh. Spannungswandler den ich verwende kann maximal 5A ab - und regelt auf 5V runter. Damit lief der Servo am saubersten über den USB.

Mein Labornetzgerät liefert 5V bei max 5A - deutlich mehr als mein USB Port. Er zeigt an das wenn der Servo sicht bewegt ca. 0,8A fließen - gibt also Luft nach oben.

Aktuell frage ich mich jedoch, was das mit Problem des Funkmoduls zu tun hat.
Habe die Probleme mit nrf24l01 Modulen nicht - daher ist das für ein Funkproblem :wink: Wobei das natürlich scheinbar nur die Wirkung ist... Ursache woanders?!

Servo ist dieser hier
https://www.amazon.de/gp/product/B00BXIF2HE/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1

Aber auch ein anderes Model mit deutlich weniger Power macht die selben Effekte.

Hilft ein Video?

VashTS:
…...

Aktuell frage ich mich jedoch, was das mit Problem des Funkmoduls zu tun hat.
Habe die Probleme mit nrf24l01 Modulen nicht - daher ist das für ein Funkproblem :wink: Wobei das natürlich scheinbar nur die Wirkung ist... Ursache woanders?!

Dann solltest du mal das Problem mit dem nicht funktionierenden Funkmodul näher beschreiben.

Welche Funkmodule sind es, die nicht funktionieren ?

Ich benutze diese Module

und diesen Nano

Dann solltest du mal das Problem mit dem nicht funktionierenden Funkmodul näher beschreiben.
Okay!

Also so lange der Empfänger (Pro Mini) über USB am Computer läuft, funktioniert der Funk wie er soll. Schließe ich Ihn über Batterie oder Labornetzteil an - sprich ohne diesen hier
https://www.ebay.de/itm/10X-FT232RL-USB-TTL-Serial-Modul-FTDI-3-3V-und-5V-ISP-Arduino-Pro-Mini-Adapter-/382976214179?hash=item592b2944a3

dann funktioniert es auch, aber anderst, sprich unregelmäßig und nicht mehr in Echtzeit. Der Servo fährt noch die richtigen Positionen an, er bekommt vom Sender auch die richtigen Stellwerte.

Ich mache gleich mal ein Video - dann wird mein Problem hoffentlich klarer. Funkmodul, Arduino und Servo habe ich bereits getauscht - scheint also alles okay zu sein.

Hmkay, hab mal 2 Videos gemacht. Im 1. läuft es wie es soll, Arduino ist per USB angeschlossen, Masse geht an Spannungswandler, Spannungswandler an Servo.

Im Video 2 läuft alles über den Spannungswandler. Aber wie Ihr seht, hakelt es seltsam rum. Das geht sogar soweit, das er sich "blockiert" und dann einfach keine Funksignale mehr erkennt. Der Servo hängt dann auf 0 oder 180 fest, aber Signale kommen nicht mehr an.

Video 1
Video 2

Danke schonmal für Eure Hilfe...

Also anhand deiner Beschreibung kann ich keinen Fehler erkennen.

Du solltest einfach mal ein Schaltbild zeichnen, auf dem genau zu erkennen ist, wie du alles angeschlossen hast.

Alles klar, ich habe mal was mit Target probiert. War ein krampf, hoffe das passt so.

In der 1 habe ich die Probleme mit den Timings, da läuft alles über die Stromquelle. In 2 ist der promini mit dem ftdi232 angeschlossen und der Servo über Netzteil.

Hast du die Unterschiede vom Servoverhalten im Video gesehen? Das Drehen wird unterschiedlich wiedergegeben in den 2 Clips.

In der Schaltung 2 ist der Fehler, dass du VCC des FTDI an Vin angeschlossen hast.
Da bekommt der Pro Mini zu wenig Spannung.
Dann hast du keine stabile Funktion.

Der ist schon am richtigen, mache gleich nochmal ein Foto. Habe 2 VCC - wobei ich davon ausgehe das der VCC an der kurzen Seite der VIN ist,

Und wie gesagt, 2 funktioniert problemlos. Meine Probleme habe ich mit der 1...

Meine Überlegungen gehen derzeit eher in die Richtung das beim Pro Mini iwas fehlt was der FTDI hat. Leider habe ich vom Anbieter noch keine Infos bekommen, aber ich denke nicht das die Probleme vom reinen Aufbau kommen. Den habe ich bis zum erbrechen überprüft und in allen möglichen Konstellationen probiert.

VashTS:
Der ist schon am richtigen, mache gleich nochmal ein Foto. Habe 2 VCC - wobei ich davon ausgehe das der VCC an der kurzen Seite der VIN ist,
....

Wie kommst du da drauf ?

Der Vin ist hier def. falsch.
Vin benötigt min. 7 Volt, damit der Pro Mini richtig arbeitet.
Und VCC ist VCC nicht Vin. VCC benötigt 5 Volt und da wäre der FTDI auch richtig.

Wenn du es anders aufgebaut hast, muss du auch ein richtiges Schaltbild liefern, so verwirrt es uns nur.

HotSystems:
Wie kommst du da drauf ?

Der Vin ist hier def. falsch.
Vin benötigt min. 7 Volt, damit der Pro Mini richtig arbeitet.
Und VCC ist VCC nicht Vin. VCC benötigt 5 Volt und da wäre der FTDI auch richtig.

Wenn du es anders aufgebaut hast, muss du auch ein richtiges Schaltbild liefern, so verwirrt es uns nur.

Was er meint: VCC vom FTDI232 ist am 6-Poligen FTDI-Header an VCC (mit VCC durchgeschliffen) und da ist er richtig angeschlossen.

In Schaltplänen hat er vermutlich den Pinout eines Nanos statt Pro Minis verwendet, das verwirrt in der Tat. Beim Pro heißt Vin z.B. RAW.

wapjoe:
Was er meint: VCC vom FTDI232 ist am 6-Poligen FTDI-Header an VCC (mit VCC durchgeschliffen) und da ist er richtig angeschlossen.

In Schaltplänen hat er vermutlich den Pinout eines Nanos statt Pro Minis verwendet, das verwirrt in der Tat. Beim Pro heißt Vin z.B. RAW.

Klar kannst du weiter raten. Dem schließe ich mich allerdings nicht an.
Aus meiner Sicht ist die Schaltung falsch. Wenn sein Aufbau anders aussieht, kann ich das nicht sehen und fange auch nicht an, irgend etwas zu erraten.
Ich versuche den Fehler des TO zu finden, kann mich aber nur an den Infos orientieren, die der TO liefert.

HotSystems:
Klar kannst du weiter raten. Dem schließe ich mich allerdings nicht an.
Aus meiner Sicht ist die Schaltung falsch. Wenn sein Aufbau anders aussieht, kann ich das nicht sehen und fange auch nicht an, irgend etwas zu erraten.
Ich versuche den Fehler des TO zu finden, kann mich aber nur an den Infos orientieren, die der TO liefert.

Ja das stimmt natürlich, hellsehen kann ich auch nicht. Also mal auf Infos warten...

Da die Version aber doch die funktionierende ist, kann es doch daran nicht liegen.

ElEspanol:
Da die Version aber doch die funktionierende ist, kann es doch daran nicht liegen.

Das ist korrekt.
Nur da in der "funktionierenden" schon ein Fehler steckt, würde ich gern mal alle Infos haben, um auch den echten Fehler zu finden.
Bisher fehlen noch die versprochenen Bilder.

Sop, da bin ich wieder. Verzeiht, bin selbstständig und habe nicht soviel Luft das Projekt wie ich gerne gehabt hätte. Dazu kommt privater schissnick...

Was er meint: VCC vom FTDI232 ist am 6-Poligen FTDI-Header an VCC (mit VCC durchgeschliffen) und da ist er richtig angeschlossen.

In Schaltplänen hat er vermutlich den Pinout eines Nanos statt Pro Minis verwendet, das verwirrt in der Tat. Beim Pro heißt Vin z.B. RAW.

Das ist so richtig - das RAW VCC ist wusste ich aber auch noch nicht, danke für die Info. Hab auch gleich versucht, leider alles gleich geblieben.

Bisher fehlen noch die versprochenen Bilder.

Die haben wir jetzt. Bild 1 ist das funktionierende über den FTDI, Servo über LaborNT angeschlossen.
Bild 1

Bild 2 ist das nicht funktionierende wo alles über das Labornetzteil läuft. Testweise an der Seite angeschlossen bei RAW und GND. Sonst hatte ich es an der FTDI Leiste bei VCC und GND.
Bild2

Vom LaborNT kommen wie später vom Akku die 12V - der Spannungswandler macht 3.3V draus. Der Servo läuft - wenn der FTDI angeschlossen ist - smoother mit 3.3V - zudem brauche ich nicht die 12kg Stellkraft sondern nur ca. 5 - sollte also reichen.
Der kleine Pro-Mini liegt daneben, damit Ihr die Pins gut lesen könnt. Lasst es mich wissen falls Ihr noch etwas benötigt oder nicht erkennen könnt... Danke für Eure Mühe!