1234567Next
Back New
Author: thestormdragon

Controlling Philips BDM4065 monitor via RS232

[Copy link]

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:15:57 Mobile | Show all posts
hi my internet is way to rubbish to be able to upload a video, sorry. i'll see what i can do but im usign a logitech harmony 650, you dont need a universal remote it just makes it easier
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:15:58 Mobile | Show all posts
I just found this great forum, Thanks to you all guys I have hope to be able to remote control my Monitor, I have never done something like connecting RS232, a whole new world, but will give it a shot. If I'm able to get this job done. A video tutorial will be here in the future.
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:15:59 Mobile | Show all posts
wel i've already got it working using a windows PC and a bit of software mostly created by Andy, but its not the most efficient way, would rather have it running on a linux VM (less resources) or a Pi or something.
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:00 Mobile | Show all posts
Well that's great!, I was just fighting with a self made cable, I use a mini jack of 3 segments connected to a UC-3000 Isolated TTL USB to RS-232 Converter and realterm. Sadly, I have not been able to receive any response from my monitor.

I try to test Andy's app run without error, but seems that I have not connectivity to my monitor. All appeared grey on the GUI.

Anyway, I think i would be cool to use an arduino as a wifi web server, hosting a web app, so you can control your monitor from a table or a movil phone. It's a thought there should be  better options.

A question, Do a need a 4 segment mini plug or It should work with a 3 segment plug the same way. I thought It wouldn't be a issue cause we are using RxD, TxD, GnD. Maybe I'm wrong.
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:00 Mobile | Show all posts
I'm not sure i can double check my connection when i'm home, i know i'm using this serial adapter though if its of any use. https://www.amazon.co.uk/gp/product/B00QUZY4UG/ref=oh_aui_search_detailpage?ie=UTF8&psc=1

It's a non null modem serial adapter
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:01 Mobile | Show all posts
       

I've flipped the image so its the right way around, your missing RI (Ring Indicator)

"Ring Indicator (RI), is a signal sent from the DCE to the DTE device. It indicates to the terminal device that the phone line is ringing. In many computer serial ports, a hardware interrupt is generated when the RI signal changes state."

no idea what that means but hope it helps.

Also make sure the RS232 / Serial option is enabled on the monitor, can't remember if it has a option or not.

Also make sure you have the correct COM port set in andy's program. if you use my mod you can just add a command line argument for the port.
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:01 Mobile | Show all posts
Thn
I changed the COM port in Andy's code. Therefore, I will try with a 4 segments and buy a new Serial Adapter. But will take time for me to get those items. :/ (I'm sure that the problem is around the cable)

In the monitor manual, it is stated the physical specs which mention PIN 9 = Not connected, I'm adding the image in case you are willing to check it.

I will be posting the news. Thanks Again!
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:02 Mobile | Show all posts
On that attached screenshot it also doesn't explain GND i don't think thats showing whats connected or not connected but rather just listing DB9 serial pin out.
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:03 Mobile | Show all posts
Hi, I'm new to the forum. Thanks for the immensely helpful thread.

Using the information provided, I've been able to successfully communicate with the monitor via serial, receive all current-state information upon request, and send a power off signal. Unfortunately, I've not been able to get any other commands to work -- setting volume, changing display properties, etc.

Any ideas what I may be missing?
Reply Support Not support

Use magic Report

11610K

Threads

12810K

Posts

37310K

Credits

Administrators

Rank: 9Rank: 9Rank: 9

Credits
3732793
2-12-2019 03:16:03 Mobile | Show all posts
I will add some images, of what I tried and have success, btw Andy's app work like a charm, I used a ugreen cable and a selfmade serial to 2.5mm cable.

After a while I wanted to move Andy's code to arduino, I have tested my arduino code with a simple command, changing the source port to DisplayPort. I have proved that the bytes sender are correct, my monitor is responding correctly.  If something don't work just change rx and tx

                                        Code:                                #include #include // Define sensor pinconst int RECV_PIN = 4; byte incomingByte;  //byte msg[] ={0xA6, 0x01, 0x00, 0x00, 0x00, 0x07, 0x01, 0xAC, 0x09, 0x04, 0x01, 0x00, 0x01};   byte msg[] ={166, 1, 0, 0, 0, 7, 1, 172, 9, 4, 1, 0, 1}; // Define IR Receiver and Results ObjectsIRrecv irrecv(RECV_PIN);decode_results results;SoftwareSerial gtSerial(7, 8); // Arduino RX, Arduino TXvoid setup(){  // Serial Monitor @ 9600 baud  Serial.begin(9600,SERIAL_8N1);  gtSerial.begin(9600);  // Enable the IR Receiver  irrecv.enableIRIn();    // initialize digital pin LED_BUILTIN as an output.  pinMode(LED_BUILTIN, OUTPUT);/*  while (!Serial) {    ; // wait for serial port to connect. Needed for native USB port only  }  */}void loop(){  if (gtSerial.available() > 0) {                // read the incoming byte:                incomingByte = gtSerial.read();                // say what you got:               // Serial.print(incomingByte, HEX);                Serial.write(incomingByte);        }    if (irrecv.decode(&results)){      // Print Code in HEX          Serial.println(results.value, HEX);             switch(results.value){                 case 0xFFA25D: // power                      // Turn on LED for 2 Seconds                        digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)                        //msg[13] = CheckSum();                        gtSerial.write(msg, sizeof(msg));                                              delay(1000);                       // wait for a second                        digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW                                                                    break;                     }          irrecv.resume();    }}
Reply Support Not support

Use magic Report

1234567Next
Back New
You have to log in before you can reply Login | register

Points Rules

返回顶部