Jump to content

looking for a way to transmit information with Virtual com port


lighting

Recommended Posts

hellow friends,I'm lighting from NanJING city,China.I'm making a cheap module to show some information about hardware,like How much  the CPU/GPU/RAM/SSD is used ,and their temperature.I want this module is cheap enough and powerful enough,If we do not calculate the cost of OLED,it will cost no more than three dollars include PCB,MCU and others like resistor and capacitor in 0603.Now,I have designed PCB,once the program is completely ready,I will send the PCB drawing to the foundry.I finished 90% of the program part.But now I get a trouble.I used to use a software to get information I required,but it's very Unstable.It doesn't even work now.I am so sad that the module is almost finished.

I am not familiar with Aida64,but I think it must be able to transmit information with virtual serial port.In my design, USB simulate as serial port,Aida64 transfer information to the MCU by USB.MCU  includes the features of CP2102 andCH340.

Please help me,I will open source my code and PCB design.In China,MCU and PCB are cheap enough.if you want PCB, I can  give one piece to you for free,but you have to come to Nanjing to take it away,hah,the shipping costs are expensive.

Link to comment
Share on other sites

14 minutes ago, lighting said:

hellow friends,I'm lighting from NanJING city,China.I'm making a cheap module to show some information about hardware,like How much  the CPU/GPU/RAM/SSD is used ,and their temperature.I want this module is cheap enough and powerful enough,If we do not calculate the cost of OLED,it will cost no more than three dollars include PCB,MCU and others like resistor and capacitor in 0603.Now,I have designed PCB,once the program is completely ready,I will send the PCB drawing to the foundry.I finished 90% of the program part.But now I get a trouble.I used to use a software to get information I required,but it's very Unstable.It doesn't even work now.I am so sad that the module is almost finished.

I am not familiar with Aida64,but I think it must be able to transmit information with virtual serial port.In my design, USB simulate as serial port,Aida64 transfer information to the MCU by USB.MCU  includes the features of CP2102 andCH340.

Please help me,I will open source my code and PCB design.In China,MCU and PCB are cheap enough.if you want PCB, I can  give one piece to you for free,but you have to come to Nanjing to take it away,hah,the shipping costs are expensive.

We'd be happy to implement your display protocol in AIDA64.  But in order to do so, we need more information:

1) Is it going to be an alphanumeric display or a graphical one?

2) What is the resolution of the display you attach to your PCB?

3) Are there display options, or your PCB can only handle a single kind of display?

4) Do you prefer AIDA64 to communicate with the display in the most direct way possible (LibUSB or HID), or it's adequate to handle the Virtual COM port at whatever baud rate it's configured for?

5) Do you have a protocol specification ready?

6) Can you ship 2 (two) fully assembled modules (PCB + OLED display as shown on your second photo) if we reimburse your full costs, including parts and shipping?  I'm afraid we cannot fly to Nanjing now :)

7) Do you have a name for the protocol or for the device that we can refer to?

Link to comment
Share on other sites

I am very happy that you are interested in my design.Here are some things you might be interested in.
1,The OLED I use is a lattice screen,like LCD.It can display letters or grayscale pictures,it depends on my program.
2,The resolution of my screen is 256*64.
3,I designed to support only OLED screens driven by the SD1322 chip.If someone does need it and I have enough time, I will increase its support for other screens.
4,I want this module to process the data of the virtual COM port, and I don't want AIDA64 to directly control the screen.There are two reasons:(1),The screen needs to display additional information;(2),If we add support for HD resolution screens in the future, this will increase the communication cost of PC to modules and increase the burden on the graphics processor,If the module only accepts information from the virtual COM port,then people can make more interesting modules with various strange functions according to their own needs.

The screen is controlled by the microcontroller and is not directly controlled by AIDA64. It is an important concept of my design.Please listen to me describing why。My design is not just to show the system hardware resource usage, it is also a water-cooled controller that can control the speed of three fans.This feature requires CPU and temperature information to participate in the decision.There are many USB2LCD modules sold on Taobao——China's largest online mall,But they are very rough, I don't like them.If AIDA64 opens virtual COM port to output hardware monitoring information, many electronic engineers in the world can make many interesting products based on this, and chassis peripheral manufacturers can also develop some new things accordingly.

5,The software I used before has a set of protocols for outputting hardware monitoring information from the virtual com port. If you are interested, I will translate it into English and send it to you with the consent of the original author.

6,I am happy to send my design to you, but the function it can display is weak without software cooperation. I originally wanted to introduce it on YouTube and open its source code after it’s all done.

7,I know that there are some hardware monitoring modules that are made with other software. I will translate the protocol to you with the consent of the software author. Some geeks have done some and sold them online. I have a link here. I will take a screenshot and translate it in the following post.

Link to comment
Share on other sites

On the first picture, it says:

This is a 800x480 resolution 7-inch host display module, independent system, can be displayed directly plugged into the USB, does not occupy system resources。

It uses a software called u to get hardware monitoring information. This software has some drawbacks.

 

Link to comment
Share on other sites

22 hours ago, Fiery said:

We'd be happy to implement your display protocol in AIDA64.  But in order to do so, we need more information:

1) Is it going to be an alphanumeric display or a graphical one?

2) What is the resolution of the display you attach to your PCB?

3) Are there display options, or your PCB can only handle a single kind of display?

4) Do you prefer AIDA64 to communicate with the display in the most direct way possible (LibUSB or HID), or it's adequate to handle the Virtual COM port at whatever baud rate it's configured for?

5) Do you have a protocol specification ready?

6) Can you ship 2 (two) fully assembled modules (PCB + OLED display as shown on your second photo) if we reimburse your full costs, including parts and shipping?  I'm afraid we cannot fly to Nanjing now :)

7) Do you have a name for the protocol or for the device that we can refer to?

That's it

Link to comment
Share on other sites

2 hours ago, lighting said:

That's it

Okay. So you don't want us to directly handle the display and take over the whole screen.  That's fine, although not ideal for many users.  Your solution would be more versatile if it had the mode you've described as well as allow (unlock) 3rd party software like AIDA64 to talk to the screen directly.  If you implement an ID or some other information in the USB identification block, then you can let software know what screen and what protocol should they expect to be connected to your PCB.  Also, it may be possible to come up with a smart microcontroller that can handle multiple displays, and can provide system information (detailed information on the connected display) to 3rd party software.

When it comes to pushing the hardware monitoring information to the virtual COM port, do you think a similar format that we already use for Shared Memory would be suitable for your microcontroller to process?

An example output for the shared memory content:

<sys><id>SDATE</id><label>Date</label><value>2019. 07. 24.</value></sys><temp><id>TMOBO</id><label>Motherboard</label><value>37.00</value></temp><temp><id>TCPU</id><label>CPU</label><value>29.00</value></temp><temp><id>TCPUPKG</id><label>CPU Package</label><value>31.00</value></temp><temp><id>TCPUIAC</id><label>CPU IA Cores</label><value>31.00</value></temp><temp><id>TCPUGTC</id><label>CPU GT Cores</label><value>30.00</value></temp><temp><id>TCC-1-1</id><label>CPU Core #1</label><value>31.00</value></temp><temp><id>TCC-1-2</id><label>CPU Core #2</label><value>32.00</value></temp><temp><id>TCC-1-3</id><label>CPU Core #3</label><value>31.00</value></temp><temp><id>TCC-1-4</id><label>CPU Core #4</label><value>26.00</value></temp><temp><id>TDIMMTS1</id><label>DIMM1</label><value>30.75</value></temp><temp><id>TDIMMTS2</id><label>DIMM2</label><value>31.25</value></temp><temp><id>TDIMMTS3</id><label>DIMM3</label><value>31.50</value></temp><temp><id>TDIMMTS4</id><label>DIMM4</label><value>31.25</value></temp><temp><id>THDD1</id><label>INTEL SSDPEDMW400G4</label><value>34.00</value></temp><temp><id>THDD2</id><label>ST8000DM004-2CX188</label><value>34.00</value></temp><temp><id>THDD3</id><label>Samsung SSD 850 EVO 1TB</label><value>24.00</value></temp><temp><id>THDD4</id><label>SAMSUNG SSD 830 Series</label><value>29.00</value></temp><fan><id>FCPU</id><label>CPU</label><value>708</value></fan><volt><id>VCPU</id><label>CPU Core</label><value>0.696</value></volt><volt><id>VCPUVID</id><label>CPU VID</label><value>0.871</value></volt><volt><id>V33V</id><label>+3.3 V</label><value>3.324</value></volt><volt><id>VP5V</id><label>+5 V</label><value>4.950</value></volt><volt><id>VP12V</id><label>+12 V</label><value>12.240</value></volt><volt><id>V3VSB</id><label>+3.3 V Standby</label><value>3.360</value></volt><volt><id>VBAT</id><label>VBAT Battery</label><value>3.072</value></volt><volt><id>VDIMM</id><label>DIMM</label><value>1.200</value></volt><volt><id>VVCCSA</id><label>VCCSA</label><value>1.068</value></volt><volt><id>VBATT</id><label>Battery</label><value>13.670</value></volt><pwr><id>PCPUPKG</id><label>CPU Package</label><value>5.03</value></pwr><pwr><id>PCPUIAC</id><label>CPU IA Cores</label><value>2.44</value></pwr><pwr><id>PCPUGTC</id><label>CPU GT Cores</label><value>0.46</value></pwr><pwr><id>PDIMM</id><label>DIMM</label><value>2.21</value></pwr>
 

Link to comment
Share on other sites

19 hours ago, Fiery said:

Okay. So you don't want us to directly handle the display and take over the whole screen.  That's fine, although not ideal for many users.  Your solution would be more versatile if it had the mode you've described as well as allow (unlock) 3rd party software like AIDA64 to talk to the screen directly.  If you implement an ID or some other information in the USB identification block, then you can let software know what screen and what protocol should they expect to be connected to your PCB.  Also, it may be possible to come up with a smart microcontroller that can handle multiple displays, and can provide system information (detailed information on the connected display) to 3rd party software.

When it comes to pushing the hardware monitoring information to the virtual COM port, do you think a similar format that we already use for Shared Memory would be suitable for your microcontroller to process?

An example output for the shared memory content:

<sys><id>SDATE</id><label>Date</label><value>2019. 07. 24.</value></sys><temp><id>TMOBO</id><label>Motherboard</label><value>37.00</value></temp><temp><id>TCPU</id><label>CPU</label><value>29.00</value></temp><temp><id>TCPUPKG</id><label>CPU Package</label><value>31.00</value></temp><temp><id>TCPUIAC</id><label>CPU IA Cores</label><value>31.00</value></temp><temp><id>TCPUGTC</id><label>CPU GT Cores</label><value>30.00</value></temp><temp><id>TCC-1-1</id><label>CPU Core #1</label><value>31.00</value></temp><temp><id>TCC-1-2</id><label>CPU Core #2</label><value>32.00</value></temp><temp><id>TCC-1-3</id><label>CPU Core #3</label><value>31.00</value></temp><temp><id>TCC-1-4</id><label>CPU Core #4</label><value>26.00</value></temp><temp><id>TDIMMTS1</id><label>DIMM1</label><value>30.75</value></temp><temp><id>TDIMMTS2</id><label>DIMM2</label><value>31.25</value></temp><temp><id>TDIMMTS3</id><label>DIMM3</label><value>31.50</value></temp><temp><id>TDIMMTS4</id><label>DIMM4</label><value>31.25</value></temp><temp><id>THDD1</id><label>INTEL SSDPEDMW400G4</label><value>34.00</value></temp><temp><id>THDD2</id><label>ST8000DM004-2CX188</label><value>34.00</value></temp><temp><id>THDD3</id><label>Samsung SSD 850 EVO 1TB</label><value>24.00</value></temp><temp><id>THDD4</id><label>SAMSUNG SSD 830 Series</label><value>29.00</value></temp><fan><id>FCPU</id><label>CPU</label><value>708</value></fan><volt><id>VCPU</id><label>CPU Core</label><value>0.696</value></volt><volt><id>VCPUVID</id><label>CPU VID</label><value>0.871</value></volt><volt><id>V33V</id><label>+3.3 V</label><value>3.324</value></volt><volt><id>VP5V</id><label>+5 V</label><value>4.950</value></volt><volt><id>VP12V</id><label>+12 V</label><value>12.240</value></volt><volt><id>V3VSB</id><label>+3.3 V Standby</label><value>3.360</value></volt><volt><id>VBAT</id><label>VBAT Battery</label><value>3.072</value></volt><volt><id>VDIMM</id><label>DIMM</label><value>1.200</value></volt><volt><id>VVCCSA</id><label>VCCSA</label><value>1.068</value></volt><volt><id>VBATT</id><label>Battery</label><value>13.670</value></volt><pwr><id>PCPUPKG</id><label>CPU Package</label><value>5.03</value></pwr><pwr><id>PCPUIAC</id><label>CPU IA Cores</label><value>2.44</value></pwr><pwr><id>PCPUGTC</id><label>CPU GT Cores</label><value>0.46</value></pwr><pwr><id>PDIMM</id><label>DIMM</label><value>2.21</value></pwr>
 

nice,thank you a lot.I will try it.

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...