Epson projector (PowerLite) serial com not working.

I have a few projectors that i need to connect with an arduino nano, but I can not establish a connection.

The projector use a RS232C port which i tried connecting directly to the arduino TX - RX - GND with no response, i have also tried with a MAX232 between with the same results.

I have seen this projector working with another board (not an arduino) that uses a 12v supply, and it does it flawlessly, it sends the same commands i have tried and they work immediately.

There's something I'm missing?, does the arduino logic levels are not enough for this port?, why does the Max232 doesn't work either?.

Please Help.

Yes, first read the instructions for submitting queries, then post your code and a perfectly focused photograph of your set-up with all wires clearly visible as they terminate on the modules as a link in the text, not an attachment.

An RS-232 port is not compatible with the TTL levels of the Arduino - and likely to damage the Arduino (the RS-232 port however is designed to be "bullet-proof"!). You need the MAX232 to interface. Unless you can demonstrate what you did, we have no idea whether you made the correct connections - and the fact that you tried to connect an Arduino directly to a RS-232 port makes it immediately clear that you do not actually know what you are doing! :astonished:

Paul__B:
Yes, first read the instructions for submitting queries, then post your code and a perfectly focused photograph of your set-up with all wires clearly visible as they terminate on the modules as a link in the text, not an attachment.

An RS-232 port is not compatible with the TTL levels of the Arduino - and likely to damage the Arduino (the RS-232 port however is designed to be "bullet-proof"!). You need the MAX232 to interface. Unless you can demonstrate what you did, we have no idea whether you made the correct connections - and the fact that you tried to connect an Arduino directly to a RS-232 port makes it immediately clear that you do not actually know what you are doing! :astonished:

This its my setup with the MAX232:

And this its my code:

void setup() {
  Serial.begin(9600);
}

void loop() {
  
  Serial.write("PWR ON");
  delay(5000);
}

I have tested it with a USB to Serial converter and i can receive the command on my PC with no problems(reading from the converter not the USB port on the arduino).

The reason i tried doing a direct connection its because the other board (a kramer one) was set up like that.

does it make a difference if the port its RS232C?

Serial lines have a voltage (original RS232 is +/-12V, note), a baud rate, parity and stop-bit count.
You have to get all of this right.

These days most things are 5V, but you have to check, 12V will trash lower voltage circuitry!

You generally have to check about parity/baud rates etc in the manufacturer's documentation,
or else spend a while figuring it out by trial/error or an oscilloscope/logic-analyzer.

zkimal:
Does it make a difference if the port its RS232C?

That would be what all the RS232 ports are.

Try swapping pins 2 and 3 on the DE-9 connector.

I give up.

I know about baud rates and the others settings, i used to work with PLCs and the troublesome RS485 MODBUS, but this projector does not work with all i have throw at it.

The only thing i haven't tried its +/-12V logic levels but that its out of the question because it would mean adding an extra PSU.

For anyone having the same problem, the solution i will implement its emulating the remote control with the IRremote library, then attaching an IR led on front of the IR receiver on the back.

Thanks everyone for trying to help.

zkimal:
The only thing i haven't tried its +/-12V logic levels but that its out of the question because it would mean adding an extra PSU.

The MAX232 generates +/- 10V levels. That is what it is for. So you have tried that.

What you did not say, is whether you tried my last suggestion?

(And you haven't shown the connections of the MAX232 to the Arduino either.)

Paul__B:
What you did not say, is whether you tried my last suggestion?

(And you haven't shown the connections of the MAX232 to the Arduino either.)

Did tried it but it made no difference, as for the connection on the arduino its not necessary, the arduino nano i have has those pins labeled as TX/RX, plus i can receive the command from the arduino with my PC and a USB converter.

I even tried connecting my PC to to the projector and send the command with no luck.

zkimal:
Did tried it but it made no difference, as for the connection on the Arduino its not necessary, the Arduino nano I have has those pins labelled as TX/RX, plus I can receive the command from the Arduino with my PC and a USB converter.

I even tried connecting my PC to to the projector and send the command with no luck.

You are still not quite making sense.

The connections on the Arduino labelled as "TX" and "RX" may need to be swapped as they go to the MAX232, just as the connections from the MAX232 to the DE-9 may need to be swapped. There are therefore four possible combinations and only one will work. My invitation to actually show all the connections was to check whether you had them correct; unless you specify exactly what you have done, we have no idea at all.

Even connecting the PC to the projector involves (at least) two alternatives in connecting the "TX" and "RX" (as well as the "handshake" lines). If you had something that worked with the projector and your PC does not, then clearly the problem is with the connections (always presuming you know and set the correct baudrate).

You need to send a carriage return after your PWR ON command.

ESC/VP21 Command User's Guide

FML.

It was the carriage return that was missing and i totally overlooked it in the manual, i always though it was the connection because the projector was supposed to send a ":" , or at least an ERR code.

Thanks to everyone and specially JohnLincoln for nailing the problem.

Would you mind posting the working code? I want to try this with an EB series epson projector. I’ve just purchased a Max2323 and max3232 not sure what’s the drifferenfe between them but I’m hoping one works.

Try this to start with...

void setup() {
  Serial.begin(9600);
}

void loop() {
  
  Serial.println("PWR ON");
  delay(5000);
}

Hello I know it's an old post, but this post help with my esphome project, and i post my code here just for the next person who will come, will get an anwser.

So with a ship max2323 the TTL <-> RS-232C with my epson project work, but you should send the CR like JohnLincoln said.

#My code to drive my epson projector witith esphome
uart:
  tx_pin: D3
  rx_pin: D4
  baud_rate: 9600

switch:
  - platform: uart
    data: [0x50,0x57,0x52,0x20,0x4F,0x4E,0x0D] #PWR ON\r
    name: "Projecteur On"
    icon: "mdi:projector"
  - platform: uart
    data: [0x50,0x57,0x52,0x20,0x4F,0x46,0x46,0x0D] #PWR OFF\r
    name: "Projecteur Off"
    icon: "mdi:projector"

Regards

RS232 PINOUT

Your schematic has TX & RX swapped.

max232n-schema.jpg

Your schematic has TX & RX swapped.

It's not always straight forward because TX of one device must connect to RX on the other.

For example, if you connect two computers together (or any two identical devices) you need a [u]null-modem[/u] adapter or cable. to criss-cross the connections.

Where I work we have [u]these little inline testers[/u] to make sure the connections are correct, and if not we plug-in a null modem adapter.

DVDdoug:
Where I work we have [u]these little inline testers[/u] to make sure the connections are correct,

Plus a liberal supply of DE-9 to DB-25 adapters! :astonished: