rs232-TTL arduino Mahr Marcator

hi, i'm trying to connect a Mahr marcator with rs232 to my arduino uno.

In Marcator doc i see that

Screenshot from 2021-06-10 18-41-18

and the specs are 4800 bauds and 7E2.

If I connect Marcator with an rs232-usb to my pc and i configure minicom with 4800 and 7E2 everything works well.

on arduino i have a mega uno and a rs232 to ttl module. If i connect rs232 from arduino with my pc i'm able to communicate (4800 and 7E2)

I thinks that everything works well, but if i try to connect marcator with my arduino RS232 it doesn't read.

I'm a bit struggled with pin connection because my marcator cable have a female connection and my arduino rs232 always have a female connection.

here the sketch that i'm using

#include <CustomSoftwareSerial.h>

CustomSoftwareSerial* customSerial;  

// Init value
void setup() {
  Serial.begin(4800);
  Serial.write("mahr reader");

  customSerial = new CustomSoftwareSerial(2, 3); // rx, tx
  customSerial->begin(4800, CSERIAL_7E2);


}

void loop() {
  if (customSerial->available()){
    char inByte= customSerial->read();
    Serial.println(inByte);
  }
}

can you help me?

You either have a Mega or an UNO but both in one board isn't possible.

Which usually means you have to cross the TX/RX signals. As you failed to provide a wiring diagram as well as links to the used RS232-TTL module we're unable to check that.

i was looking at my rs232 to ttl and i seen that it doesn't have connection on pin from 6-9

but on Marcator docs it need pin 7 on vcc.

If i connect marcator rs232 to my arduino directly

rs232 pin 2 to arduino pin 2 RX
rs232 pin 3 to arduino pin GND
rs232 pin 7 to arduino pin 5v

I'm able to collect data, but i see strange characters. I think it depends on the wrong voltage on pin3 pin 7.

I think i need a max3232 to set correct voltage but i need to modify for work on pin 7

What you think?

Sorry i have an Uno

For wiring i tried both, switching rx-tx and with same rx-rx

Because it doesn't implement hardware handshake. That shouldn't be a problem for small baudrates.

Very bad idea, that might fry your Arduino!

Post a sharp picture of the other side of that module (if you really don't have a link to the documentation of it - never buy anything that isn't documented!).

no i don't have, bought on amazon.

All docs that i have about mahr marcator


Screenshot from 2021-06-10 20-58-27

If i understand correctly dataout is between -Vdd and + Vdd and -Vdd is pin 7 and +Vdd is pin 3

do you think that it's not important if we don't connect pin7?

Edit:

If in my rs232-usb connected to my pc i don't connect pin7 it doesn't work. If i connect it works!

Maybe i need to design a correct max3232 circuit

@pylon update:

if i connect pin 3 to pin3 and pin7 to pin7 of my serial cable-usb cable and pin 2 to my rs232 to ttl module everything works.

my question is, why my usb cable have a low voltage negative? ( which circuit is using) maybe i need to replicate it

is it possible to have +/- vdd from max3232?

Hello,
The best you can do in such a case is test each component by itsef and then throw al things together.
So,

  1. Connect your custom serial out on your board pin 2, with the custom serial in on your board pin 3 with a Dupont wire and try to send something to yourself. Then send something with customSerial and receive it as well.
  2. Then connect the serial to ttl module to your board and connect pin 2 and 3 on your serial to ttl connector at RS232C level and do the same, you should be able to send something to yourselves and then you know that this part is working.
  3. Then there could be (but i am not sure) a requirement by the manufacturer of the device that you need certain levels on DTR (demande) to trigger a send from your external device. If the potential at this pin is not ok, it might refuse to send anything, so there could be a possible culprit of your problem.
    Best Regards,
    Johi.