Jump to content
AIDA64 Discussion Forum
lighting

looking for a way to transmit information with Virtual com port

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.

Share this post


Link to post
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?

Share this post


Link to post
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.

Share this post


Link to post
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.

 

Share this post


Link to post
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

Share this post


Link to post
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>
 

Share this post


Link to post
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.

Share this post


Link to post
Share on other sites
On ‎7‎/‎31‎/‎2019 at 4:04 AM, btmouse said:

stand by
I'm in china
i also want a piece.

Drop lighting a private message and you can discuss the deal ;) 

Share this post


Link to post
Share on other sites

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.

Loading...

  • Similar Content

    • By howiewowie
      Hi my CPU temp icon that shows between Motherboard and CPU Diode went missing I checked all preferences and cant find it please help
      Field    Value
      Sensor Properties    
      Sensor Type    Nuvoton NCT6797D  (ISA A20h)
      GPU Sensor Type    Diode  (NV-Diode)
      Motherboard Name    MSI MS-7B12
      Chassis Intrusion Detected    No
          
      Temperatures    
      Motherboard    32 °C  (90 °F)
      CPU Diode    35 °C  (95 °F)
      CPU Socket    35 °C  (95 °F)
      CPU Package    35 °C  (95 °F)
      CPU IA Cores    35 °C  (95 °F)
      CPU GT Cores    33 °C  (91 °F)
      CPU #1 / Core #1    24 °C  (75 °F)
      CPU #1 / Core #2    24 °C  (75 °F)
      CPU #1 / Core #3    24 °C  (75 °F)
      CPU #1 / Core #4    24 °C  (75 °F)
      CPU #1 / Core #5    24 °C  (75 °F)
      CPU #1 / Core #6    23 °C  (73 °F)
      CPU #1 / Core #7    23 °C  (73 °F)
      CPU #1 / Core #8    25 °C  (77 °F)
      MOS    51 °C  (124 °F)
      GPU1: GPU Diode    57 °C  (135 °F)
      GPU2: GPU Diode    53 °C  (127 °F)
      Samsung SSD 970 EVO Plus 500GB    48 °C  (118 °F)
      ST3000DM008-2DM166    27 °C  (81 °F)
          
      Cooling Fans    
      CPU    2156 RPM
      GPU1: GPU    867 RPM  (24%)
      GPU2: GPU    405 RPM  (11%)
          
      Voltage Values    
      CPU Core    1.334 V
      CPU VID    1.280 V
      +3.3 V    3.376 V
      +5 V    5.080 V
      +12 V    12.000 V
      DIMM    1.360 V
      PCH Core    1.064 V
      VCCIO    1.366 V
      VCCSA    1.353 V
      GPU1: GPU Core    1.050 V
      GPU2: GPU Core    1.063 V
          
      Power Values    
      CPU Package    25.30 W
      CPU IA Cores    23.04 W
      CPU Uncore    0.71 W
      DIMM    1.54 W
      GPU1: GPU TDP%    29%
      GPU2: GPU TDP%    31%
       
    • By Giorgio
      I wish to see in the near future a customizable option that allow AIDA64 to show real time notifications about temperature, as other tools do, but doing it as AIDA64, without interfering with any other part of the OS functionalities, this could help users to be more comprehensive about the whys of their lack of performance of batteries produce by the wear of the batteries due to heat generated during charging, or intensive use. This I bet it will help a lot of people who don't comprehend what happens with their bateries, until battery breaks completely. I'd like to see what other user want about this particular topic. A recent article seen sets as the right charging temperature round 27 ºC or 80.6 ºF , and the inadequate as 30 ºC or 86 ºF. The next article give a basis for this conclusion.
      https://pubs.acs.org/doi/10.1021/acsenergylett.9b00663
    • By LEMIWINKS
      Hi guys, recently got a water temp plug sensor and wanted to know if there's any way Aida can read it over USB if I were to get this thing https://www.google.com.au/search?q=alphacool+heatmaster&oq=alphacool+heat&aqs=chrome.1.69i57j0l3j69i60.10548j0j4&client=ms-android-telstra-au&sourceid=chrome-mobile&ie=UTF-8#imgrc=RkkGAkbfWtJdRM:
      My board doesn't have a 2 pin temp sensor unfortunately.
       
      Cheers for your time
    • By ikisdoka
      Hello,
      Why the different temperatures of the CPU programs differ by ~15C? Where is more correct?
      CPU - Xeon E5450, MB - Intel DP43BF

    • By ded32
      Hello,
      I noticed that on Asus Rampage IV Extreme, AIDA64 sometimes outputs "Thread creation error: Insufficient memory for this operation" and after that readings of OPT1, OPT3, Case 2 and PCH fans become 0.0 RPM (I have OPT2, Case 1 and Case 2 fans unconnected so cannot say anything about them). CPU fan and CPU OPT fan readings are still OK.
      If I relaunch AIDA64 (File - Exit - Run again), readings become OK, and sometimes later the problem repeats.
      I have to confess that I have ASUS Suite II installed (because and only because AIDA64 missed OPTx temp support on Asus R4E!). After installation of AIDA64 Beta, I stopped running it, but process explorer shows its modules loaded and running (FanControlHelper.exe etc). So this may be result of interaction of AIDA64 and ASUS' DLLs (http://forums.aida64...ndpost__p__5532). It's not a problem for me, I plan to uninstall ASUS software. Just leaving it now only to help you in testing
      AIDA64 version: 2.50.2075 Beta.
      P.S. Fiery, thanks a lot for your great work - from another R4E user
      Never remove R4E support from AIDA64! BTW, you already have Option/Stability settings, you may add Asus Suite II compatibility there...
×
×
  • Create New...