Jump to content
AIDA64 Discussion Forum
Roy

Simple send to an serial port

Recommended Posts

Hi,

it would be nice if there was the possibility to send sensor values unformatted as a number or percentage, via a serial port.

Similar to the LCD displays, only without formatting, or pure numbers with separators.
Together with a small GUI.

Background is the simple evaluation of the data with a microcontroller and display in different ways.
I imagine not only LCD or OLED, but rather seven segment display, nixi tubes or an analog pointer display.

That would create a lot of possibilities.

Share this post


Link to post
Share on other sites
2 hours ago, Roy said:

Hi,

it would be nice if there was the possibility to send sensor values unformatted as a number or percentage, via a serial port.

Similar to the LCD displays, only without formatting, or pure numbers with separators.
Together with a small GUI.

Background is the simple evaluation of the data with a microcontroller and display in different ways.
I imagine not only LCD or OLED, but rather seven segment display, nixi tubes or an analog pointer display.

That would create a lot of possibilities.

We would prefer to add such new projects as a new, dedicated LCD device to the AIDA64 LCD module.  If you have a project in development, let us know, and we'll take care of supporting the device using a dedicated codepath.

Share this post


Link to post
Share on other sites

A concrete project does not exist yet.
The idea is to build a steampunk case and it always looks good when old analog gauges or segment displays are used.
Driving the individual parts is no problem with an Arduino. But passing on the data to the microcontroller seems to be more difficult.
During my research on the net I found a lot of demands, but only a few solutions.
However, these solutions always consist of small self-written programs, which use either the shared memory of AIDA64 or the OpenHardwareMonitor library or their web interface.
Without this monster of MS Visual Studio and knowledge in C # or Python you can not get on with it.
I think for such an issue would be the modding scene and also the hobbyists who might want to control their heating inversely proportional to the CPU load, grateful.
For the output formatting I would like a variable solution in which you simply put together a string. Just like the individual display parts on the LCD's.
Then the selection of the Com Port, a baud rate and interval to it and done.

Share this post


Link to post
Share on other sites
On ‎1‎/‎31‎/‎2019 at 2:00 PM, Roy said:

A concrete project does not exist yet.
The idea is to build a steampunk case and it always looks good when old analog gauges or segment displays are used.
Driving the individual parts is no problem with an Arduino. But passing on the data to the microcontroller seems to be more difficult.
During my research on the net I found a lot of demands, but only a few solutions.
However, these solutions always consist of small self-written programs, which use either the shared memory of AIDA64 or the OpenHardwareMonitor library or their web interface.
Without this monster of MS Visual Studio and knowledge in C # or Python you can not get on with it.
I think for such an issue would be the modding scene and also the hobbyists who might want to control their heating inversely proportional to the CPU load, grateful.
For the output formatting I would like a variable solution in which you simply put together a string. Just like the individual display parts on the LCD's.
Then the selection of the Com Port, a baud rate and interval to it and done.

The problem with pushing a long string to the COM port would be the amount of data going through a rather narrow pipe (e.g. 9600 bps).  Hence I don't think it would be optimal to simply push the raw data (like the full content of the shared memory) as a long string to the COM port.  Unless of course your serial connection is a relatively high performance one, like 115000 bps.

Share this post


Link to post
Share on other sites

I do not see this as such a big problem, because if you can put together the data you need, similar to the LCD's and only relavantes further, the string should not be too long.

For what I imagined, that would be:
- CPU load
- CPU temperature
- GPU load
- GPU temperature
- RAM occupancy

The string could look like this:
25;55;30;45;3545;
or:
CL25,CT55,GL30,GT45,R3545;

So only the most necessary joined together with separators.
That makes 36 characters in the constelation, that is 360 bits.
Maximum update at 9600 baud: 26 / s.
But that's not all that much, since such ads are rather crude and sluggish.
Apart from that, even the small Arduino Uno creates the 115000 baud.

Share this post


Link to post
Share on other sites
8 hours ago, Roy said:

I do not see this as such a big problem, because if you can put together the data you need, similar to the LCD's and only relavantes further, the string should not be too long.

For what I imagined, that would be:
- CPU load
- CPU temperature
- GPU load
- GPU temperature
- RAM occupancy

The string could look like this:
25;55;30;45;3545;
or:
CL25,CT55,GL30,GT45,R3545;

So only the most necessary joined together with separators.
That makes 36 characters in the constelation, that is 360 bits.
Maximum update at 9600 baud: 26 / s.
But that's not all that much, since such ads are rather crude and sluggish.
Apart from that, even the small Arduino Uno creates the 115000 baud.

Well, no, we wouldn't go for such a constrained (non-flexible) solution.  The user should be able to pick the sensor values he would like to have sent to the COM port, including the labels and measurement units.  And that's what makes the string long.  But if you say 115000 bps is available, then even long strings shouldn't make things too slow.

Share this post


Link to post
Share on other sites

Hello, sorry to dig up this post but it looks everything said here applies to my problem.

I've spent the last couple weeks trying to figure out how to get sensor values over a serial port, and Roy hit all the same roadblocks that I'm running into.

I'm "Okay-ish" with coercing arduino based projects to do what I want them to do, but working with the PC side (dll's, shared memory, etc), I'm totally lost.

My end-goal is to build a 128x64 graphical lcd into a panel I can put into my unused 5 1/4" bays. If I had the ability to send sensor values as formatted strings over a chosen serial port at a chosen baud rate, I could manage the arduino side to display those values.

I understand the concern with providing a constrained solution, but here's an example of another program that I've successfully interfaced with in the past:

https://x-sim.de/manual/uso.html

This program reads telemetry data from racing/flying simulators to a variety of commerical devices, or by a customizable serial output for one-off projects. It was a pretty flexible way of getting specific data out over a serial port in an way that was easy to read. Maybe their implementation is a good jumping-off point for custom serial output in AIDA64.

I can guess that adding something like this is no small task, but I think it would be very helpful for a lot of people. In the meantime, I think my best bet is to try and see if I can "fake" being a Adafruit serial-backpack to receive values, and from there I can display them as I'd like.

Share this post


Link to post
Share on other sites
On ‎7‎/‎31‎/‎2019 at 10:58 PM, KLRico said:

Hello, sorry to dig up this post but it looks everything said here applies to my problem.

I've spent the last couple weeks trying to figure out how to get sensor values over a serial port, and Roy hit all the same roadblocks that I'm running into.

I'm "Okay-ish" with coercing arduino based projects to do what I want them to do, but working with the PC side (dll's, shared memory, etc), I'm totally lost.

My end-goal is to build a 128x64 graphical lcd into a panel I can put into my unused 5 1/4" bays. If I had the ability to send sensor values as formatted strings over a chosen serial port at a chosen baud rate, I could manage the arduino side to display those values.

I understand the concern with providing a constrained solution, but here's an example of another program that I've successfully interfaced with in the past:

https://x-sim.de/manual/uso.html

This program reads telemetry data from racing/flying simulators to a variety of commerical devices, or by a customizable serial output for one-off projects. It was a pretty flexible way of getting specific data out over a serial port in an way that was easy to read. Maybe their implementation is a good jumping-off point for custom serial output in AIDA64.

I can guess that adding something like this is no small task, but I think it would be very helpful for a lot of people. In the meantime, I think my best bet is to try and see if I can "fake" being a Adafruit serial-backpack to receive values, and from there I can display them as I'd like.

If your goal is to build a 128x64 monochrome graphical LCD panel that you can use to display AIDA64 sensor values, then most likely you would be better off using stuff like GLCD2USB which is a proven solution:

http://www.harbaum.org/till/glcd2usb/index.shtml

You can also buy a 2nd-hand AlphaCool display from the 'bay, although it may be tough to find one for sale.  There's also ChibiMo:

http://q61.org/en/chibimo/build/

Check out Robopeak as well:

And EastRising OLED is also a great solution that works with AIDA64:

 

Share this post


Link to post
Share on other sites
On 8/13/2019 at 5:36 PM, Fiery said:

If your goal is to build a 128x64 monochrome graphical LCD panel that you can use to display AIDA64 sensor values, then most likely you would be better off using stuff like GLCD2USB which is a proven solution:

Hey Fiery,

Thanks for the suggestions, I'll see if I can massage any of these for use in my project.

One of the considerations I have that has kept me from using a pre-existing solution is that my 5 1/4 bays are vertical, so my display will be mounted portrait orientation vs the normal landscape to accommodate that. 

Share this post


Link to post
Share on other sites
21 hours ago, KLRico said:

Hey Fiery,

Thanks for the suggestions, I'll see if I can massage any of these for use in my project.

One of the considerations I have that has kept me from using a pre-existing solution is that my 5 1/4 bays are vertical, so my display will be mounted portrait orientation vs the normal landscape to accommodate that. 

That's a rather special alignment for a LCD bay, but it sounds intriguing as well :)  If you try your luck with GLCD2USB and you need rotation (by 90 degrees) support for that LCD in AIDA64, let us know in the GLCD2USB topic:

https://forums.aida64.com/topic/2370-new-lcd-device-support-lcd2usb-and-glcd2usb/

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 Koithim
      Hey there,
      I replaced my old Z10 with the new Z10 RGB.  When i try to enable the LCD i get:
      Error: HID device 3842-2601 not found.
      I have the latest beta installed (sept. 16).
      Cheers!
      K
    • By beada
      BeadaFrame Display Kit is an ARM Cortex-A7 development platform which bundled with a 7" TFT LCD Display. It can be powered and communicated with PC Host by a single Micro USB cable. Currently we use it as a secondary PC monitor for display of hardware status through Remote Sensor LCD.
      The question is --  is there any way to implement it as a native support of AIDA LCD screen? We are running Debian Stretch on the ARM Cortex-A7 core.


       
      And more details of this display kit:
      CPU
      NXP/Freescale ARM Cortex-A7 i.MX6ULL
      RAM
      512MB DDR3L
      Storage
      16GB/32GB eMMC
      Connectivities
      1 x WIFI 802.11 b/g/n module(AP6212) 1 x USB 2.0 Host(Type A) 1 x USB 2.0 OTG(Micro-USB) Display
      7.0" TFT LCD: 800x480 (AT070TN92) , w/ touch and bezel
      On Board Resources
      Reset Circuit with reset button 1 x Power select jumper 1 x Boot select jumper 1 x USER LED Dimension
      188 x 118 x 35(mm)
      Operating System
      Debian Stretch
      Consumption
      5V/350mA
    • By Shaman
      Dear all,
      I am trying to figure out the best option for a small (max 7'') external screen to use with SensorPanel.
      I find lots of options on eBay that I suppose are all viable (e.g., https://www.ebay.co.uk/itm/7inch-HDMI-LCD-H-with-case-1024x600-IPS-Capacitive-Touch-Screen-Audio-Output/133067577890).
       
      What I am unsure at the moment:
      - Is the quality/resolution of the screen important?
      - Is touch input needed/used?
      - Is there any difference (limitations) between the three available options (using an HDMI connected screen, a USB connected one and/or an affordable Android tablet)? 
       
      Any input would be appreciated. Thank you in advance!
       
      Best,
      S
    • By Ventilator
      Would be nice if you could rotate output 90 degrees in AIDA 64 LCD config for Logitech ARX.
      This, so you can get tablet mode.
       
    • By Wampo
      Hey Aida Team,
      i have some issues with this Adafruit LCD wich is recomended. On the two Pictures you can see what aida should do and what can i see on the Display. The First line is completely erased and the screen is flickering. The Adafruit Backpack is set to 20x4 LCD. When the Display is updating you can see the right setting for a millisecond.
      But if i change the LCD Setting in AIDA to 16x2, and leave the Backpack in 20x4 mode,  the Screen isn flickering and the first line is there. I think you got a little problem with the 20x4 Driver. I have Searched for the code but i cant find it, to edit it if i found the failure. 
       
      Please give me response for this BUG. I have extra ordert this overpriced 50€ LCD for it. 
      Greetings Daniel from Germany


      VID_20181129_160917.mp4
×
×
  • Create New...