GND "Schalten"?

hey,

ich habe eine frage zum "schalten" von gnd. (ich weis nicht wie ich es besser ausdrücken soll...)
Das Problem: Ich habe hier ein GSM Modul was ich neustarten kann, wenn ich den RST pin vom Modul kurz mit GND verbinde. Da ich das nicht immer per hand machen will, möchte ich das vom Arduino machen lassen und dachte ich mache das so:
pinMode(RST_PIN, OUTPUT);
digitalWrite(RST_PIN,LOW);

Nur leider klappt das nicht. Ich dachte LOW ist sozusagen GND? Was ist da falsch? wenn ich das Kabel händisch an GND (vom Arduino) halte funz es...

Vielen Dank schonmal!!

Gruß,

Pcace

pinMode(RST_PIN, OUTPUT);
digitalWrite(RST_PIN,LOW);
delay(50);
digitalWrite(RST_PIN,HIGH);

Versuchs mal so, normalerweise wird reset ausgeführt, wenn GND weggeht, nicht wenn es kommt. Bei deinem Draht an Pin heben nimmst du ihn ja auch wieder weg.

Hast du den Pin mittels einem Pull UP wiederstand ? Das ist manchmal nötig. So sollte auch das Low vom Arduino besser schalten

Losspost:
Hast du den Pin mittels einem Pull UP wiederstand ? Das ist manchmal nötig. So sollte auch das Low vom Arduino besser schalten

Bei einem Ausgang brauchst du keinen "PullUp"-Widerstand. Auch nicht den internen.

Ich meine auch nicht am ausgang sonder dachte eher an den Reset Pin, da sonst doch die Gefahr besteht das er sich von selbst resettet

Losspost:
Ich meine auch nicht am ausgang sonder dachte eher an den Reset Pin, da sonst doch die Gefahr besteht das er sich von selbst resettet

Dann musst du das auch so schreiben.
Leider kann ich keine Gedanken lesen.

Und außerdem ist das Sache des GSM-Moduls, welches den sicher haben wird.
Anders wird es ja nie funktionieren.

@pcace
Um welches GSM dreht sich das hier ?

Wenn du den Pin immer Low machst geht das möglicherweise nicht richtig.

Wenn dann den in setup() den Pin auf HIGH setzen und dann auf OUTPUT. Und dann im Betrieb ein paar Millisekunden einen Low-Impuls geben.

Hey es ist exakt was ich verscucht hab:

  delay(5000);
  pinMode(rst_pin, OUTPUT);
  digitalWrite(rst_pin, LOW);
  delay(50);
  digitalWrite(rst_pin, HIGH);

Nur passiert einfach garnichts...
Das modul ist ein A7 von Ai-Thinker (http://www.makerfabs.com/desfile/files/A6_A7_A6C_datasheet-EN.pdf)

Wie gesagt, wenn ich den pin direkt an GND halte, ist das modul sofort aus. (anschalten kann ich es per:

  digitalWrite(pwr_pin, 1);
  digitalWrite(LED_BUILTIN, 1);
  delay(2000);
  digitalWrite(pwr_pin, 0);
  digitalWrite(LED_BUILTIN, 0);
  Serial.write("GSM/GPS MODULE POWERED ON");

)

danke schonmal für hilfe!!!

Gruß

Was für einen Arduino verwendest du ?
Mit welcher Spannung betreibst du das GSM ?
Hast du evtl. Levelshifter berücksichtigt ?

Betreibst du das GSM solo oder auf einem fertigen Shield ?

Hey, es ist ein Arduino UNO. Das A7 betreibe ich mit 5V aus dem Arduino. Die serielle schnittstelle wird über einen Pegelwandler 5V-> 3.3V betrieben. Das funktioniert auch super, jedenfalls kann ich ohne Probleme AT* Commands sneden und empfangen.

Nur eben der Reset wäre wirkich cool. Im Moment habe ich wiegesagt den Resetpin an Dpin5 am Arduino hängen. Nur verstehe ich nicht wie ich das nun resetten kann^^ Wenn ich das kabel vom Arduino pin abziehe und an irgendein GND (egal wo...) halte resettet sich das A7.

Wenn jemand noch eine Idee hätte? ich hatte mir noch kurz gedacht, man könnte das mit einem BC547 machen (Emitter an GND, Collector an Reset pin vom A7, und die Basis über 1k an den Pin am arduino, aber auch das klappt nicht!)

Jede hilfe ist wilkommen!!

Ich habe keine Ahnung was das GSM für Strom braucht, könnte mir aber vorstellen, der Strom aus dem Arduino reicht nicht.

Hast du den Reset mit einem Transistor auch mal getestet, indem du + 5 Volt über einen Widerstand auf die Basis gibst ?

HotSystems:
Ich habe keine Ahnung was das GSM für Strom braucht, könnte mir aber vorstellen, der Strom aus dem Arduino reicht nicht.

Hast du den Reset mit einem Transistor auch mal getestet, indem du + 5 Volt über einen Widerstand auf die Basis gibst ?

Das wird es wohl sein. Laut Datenblatt:

Module hardware RESET pin, this PIN when
using low level <0.05V, current is 70ma,
recommends using NMOS control; Pull
down mean the module hardware
shutdown, the pin during normal work
when there is leakage, will cause the
module is not stable, it is difficult to
register network

70mA sind ein bischen viel für einen Digitalausgang eines Arduino.
Das schreit nach einem einfachen SchalterMOSFet z.B 2n7000.

-NoGi

Hey, vielen Dank für die Mühe!

Ich bin mir im Moment einfach grad garnicht mehr so sicher ob ich es überhaupt brauche - denn das Modul scheint wesentlich stabiler zu sein as ich dachte... die anfänglichen Probleme (dich ich auf Instabilität geschoben habe) waren alle samt verschwunden als ich auf ein Hardware serial TX/RX vom Teensy umgestiegen bin....

Was könnte ich noch anstatt des 2n7000 nutzen - probieren würde ich es ja doch ganz gern ^^

Gruß!

Ich sehe im Moment noch nicht zwingend die Verwendung eines Transistors.

Wo hast du denn das GSM am Arduino angeschlossen ?
An welchem Pin ?

70mA verkraftet eigentlich jeder (bipolare) Transistor.

Ich würde einfach mal nachmessen, wieviel Strom der Pin tatsächlich zieht. Vielleicht hat sich jemand verschrieben, und es sind nur 70µA.