Author Topic: Program that can log from many multimeters.  (Read 649675 times)

0 Members and 8 Guests are viewing this topic.

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2325 on: March 17, 2022, 06:30:57 pm »
Hey, i'm trying to get a Atorch DL24 to work with this software, but have some issues with it. Other programs are able to read it out, so it defenitly is connected to the pc properly.
Under "Load devices" the DL24 is correctly setup, upon starting the debug version i get the following error:

How can i resolve the issue?

The problem is that TestController do not receive any answer from the DL24, I have no explanation why.
The null pointer error is because the return value is null instead of the expected data.
 
The following users thanked this post: Oberfail

Offline Oberfail

  • Newbie
  • Posts: 3
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2326 on: March 17, 2022, 10:13:11 pm »
Is there any way to troubleshoot the issue more?
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2327 on: March 18, 2022, 07:04:06 am »
Is there any way to troubleshoot the issue more?

Not inside TC, in debug mode it will list all data going out of the serial port and all answers.
I believe DL24 is working for other people, maybe somebody else can say if they have seen any problems.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2328 on: March 20, 2022, 10:46:06 am »
V2.04 is up
It adds some new definitions and a few new functions.
   Fixed: GridPanel, device popups. There was a null pointer error.
   Added: Definition DMM subdriver to USBHIDDMM driver
   Changed: jSerialComm updated to V2.91
   Added: Keysight U1213A multimeter (Thanks WS)
   Added: Keysight U1241C multimeter (Thanks WS)
   Fixed: Rigol DM30xx, Riden RD 6006, Siglent, Rigol DL30x1x (Thanks WS)
   Added: Rigol DL3021, Rigol DL3021A, Rigol DL3031, Rigol DL3031A electronic load(Thanks WS)
   Added: R&S HMP2020 Power supply (Thanks WS)
   Added: GridPanel Adjust and Dual adjust, these are analog like controls to adjust any parameter on a device with the mouse.
   Added: R&S NGE102 & NGE102B power supplies (Thanks PL)
   Added: R&S HMC8012 bench multimeter (Thanks PL)
   Added: Log event as script. The script will work similar to the popup, but is not exactly the same.
   Added: Timeout setting and handling for devices, see Configuration page.
   Added: Tooltips to the popups menu and a few other places.



Added tool tips to the "popups" list, it was long overdue!



Log event as script will convert the Log Event popup to a script, this can be used as a start for custom scripts.
One idea is to generate two scripts: One for charging a battery, one for discharging a battery, then manually combine them into a single script that can charge and discharge a battery.



New configuration to handle timeouts.



"Analog" adjustment of device parameter in GridPanel, use mouse wheel or drag on the star.
 
The following users thanked this post: Kean, trebejo

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2329 on: March 20, 2022, 10:55:55 am »
TestController is now two years old and I have published about 100 versions of it.
As expected the rate for new versions have slowed considerable down. This does not mean the program is finished, I do still have ideas for improvement and also looks for good ideas.

At the current time it supports about 450 devices, I will make more definitions and I also hope to get more definitions from the users.
The first post in this thread list all supported devices and I do update it (But not for every version).
 

Offline Oberfail

  • Newbie
  • Posts: 3
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2330 on: March 21, 2022, 05:15:37 am »
I've tried it on a different computer, it gives out a slightly different error this time:
Code: [Select]
;; jSerialComm version: 2.9.1
;; Start thread for: COM4 - ATorch DL24
;; COM4: Set params: 9600
;; COM4: Tx: B1 B2 11 00 00 B6
java.lang.NullPointerException: Cannot read the array length because "bb" is null
        at dk.hkj.devices.DeviceATorchPX100$TranslatingCommInterface.cmdIdn(DeviceATorchPX100.java:81)
        at dk.hkj.devices.DeviceATorchPX100$TranslatingCommInterface.write(DeviceATorchPX100.java:130)
        at dk.hkj.comm.CommInterface.writeRead(CommInterface.java:141)
        at dk.hkj.comm.CommInterface.writeRead(CommInterface.java:136)
        at dk.hkj.main.InterfaceThreads$DeviceThread.initDevice(InterfaceThreads.java:1420)
        at dk.hkj.main.InterfaceThreads$DeviceThread.run(InterfaceThreads.java:1493)
;; COM4: Tx: B1 B2 11 00 00 B6
java.lang.NullPointerException: Cannot read the array length because "bb" is null
        at dk.hkj.devices.DeviceATorchPX100$TranslatingCommInterface.cmdIdn(DeviceATorchPX100.java:81)
        at dk.hkj.devices.DeviceATorchPX100$TranslatingCommInterface.write(DeviceATorchPX100.java:130)
        at dk.hkj.comm.CommInterface.writeRead(CommInterface.java:141)
        at dk.hkj.comm.CommInterface.writeRead(CommInterface.java:136)
        at dk.hkj.main.InterfaceThreads$DeviceThread.initDevice(InterfaceThreads.java:1423)
        at dk.hkj.main.InterfaceThreads$DeviceThread.run(InterfaceThreads.java:1493)
;; Stopping thread for: COM4 - ATorch DL24
;; COM4: Close

Still no clues, what could be wrong?
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2331 on: March 22, 2022, 10:32:28 am »
I've tried it on a different computer, it gives out a slightly different error this time:

Still no clues, what could be wrong?

That may be because this version of TC has a updated serial library.
For a long time I used  jSerialComm version: 2.7.0
Recently I updated to jSerialComm version: 2.9.0  This is a major upgrade of the library.
Latest version uses jSerialComm version: 2.9.1  This also looks to contain a lot of updates.

jSerialComm version version list: https://github.com/Fazecast/jSerialComm/releases

As long as I do not see any RX messages after the TX, I can probably not help
 

Offline PushUp

  • Regular Contributor
  • *
  • Posts: 189
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2332 on: April 02, 2022, 05:17:46 pm »
Is it possible to pin the blue line to the point, where you get the newest readouts, having an easier and clear "Readout-Popup" so to speak?

I know, that the colour depends on your display settings, but do I have the possibility to change the yellow colour internally to a more orange one or to make it outlined with black for example? Especially old displays are not that bright any more thus especially yellow becomes blurred on a white surface.





Thanx for the version update and best wishes!  :)
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2333 on: April 02, 2022, 06:04:34 pm »
Is it possible to pin the blue line to the point, where you get the newest readouts, having an easier and clear "Readout-Popup" so to speak?

I know, that the colour depends on your display settings, but do I have the possibility to change the yellow colour internally to a more orange one or to make it outlined with black for example? Especially old displays are not that bright any more thus especially yellow becomes blurred on a white surface.

It is not designed to be pinned, the cursor line will follow the cursor when it is moved. If you want the last values use the "Current values" page, it shows that last values read from the devices. You can also use the range page and use negative time specifications to pin the values. If you want some curves together with the readouts look at GridPanel, there you can define custom readouts and curves (If you have good ideas for other possibilities just say it).

You can use scripting for adjusting colors (#CHARTCOLORS), it allows you to define all the curve colors. Using #CHARTBACKGROUND allows you to define the chart colors (I am thinking about adding a popup menu to make this easier).
 
The following users thanked this post: PushUp

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2334 on: April 03, 2022, 09:30:14 am »
Just a note to #CHARTCOLORS:

To permanently (more or less, #CHARTRESET will undo it) override the default chart colors create a file called "autorun.txt" in ...\Documents\TestController\Settings (On Linux it is in /home/TestController/Settings) and put the line:

#CHARTCOLORS red green blue (127,255,30) yellow cyan

in it.
It is best to define at least 6 different colors, each can be defined with a name or a (r,g,b) specification and a few other ways.

It is possible to put all kind of scripting in autorun.txt to always setup some specific configuration. A shortcut to make the needed commands is to setup TestController and then use:



Then the desired script lines can be picked from the log window.
 
The following users thanked this post: PushUp

Offline rachdatu

  • Regular Contributor
  • *
  • Posts: 54
  • Country: ch
Re: Program that can log from many multimeters.
« Reply #2335 on: April 08, 2022, 03:13:09 pm »
Hello

I have installed TestController and connected the Atorch DL24P electronic load device under Ubuntu
20.04.1 in VirtualBox. It worked straight out of the box...I could not believe it. Well, that's the beginning
of the story!

I wanted to make it work under another Linux distribution (Bunsenlabs); a very light OS that I run on a Pentium
486. But first I had to test it in VirtualBox on a more modern PC. That did not work out of the box!

First thing first: that OS is missing a lot of stuff. This is why it is light :-)
Installing Java is pretty easy. Then you can fire up TestController.jar. Make sure you have the right permissions
on the file...Ahhhh, these permissions in Linux...

Then, it was time to add "Atorch DL24P" to the Device list and configure the Address...But which address?

On my Ubuntu machine, I had a choice of 2 ports (see below for a screenshot). I took the "ttyUSB0" port (second option)
and that worked.
On my Bunsenlabs machine, I just had one port to choose from (ttyUSB0) and I could not establish a connection with the device.
I didn't know what was going on. So, I grab a fresh OS, Linux Mint this time. Same problem.

I spent some time investigating and found out that I had an issue with the permissions on the port(s)...What? Linux permissions (@%$$#)
This is how I solved it:

On a terminal, type
Code: [Select]
groups
If you don't see "dialout" for your current user, then add it to this group:

Code: [Select]
sudo usermod -a -G dialout <user>and reboot  (absolutely necessary!)

You should now see 2 ports, choose ttyUSB0 (could be ttyUSB1, etc..it depends) and connect.

Thanks again to "HKJ" for providing this software.

 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2336 on: April 08, 2022, 04:22:24 pm »
I have installed TestController and connected the Atorch DL24P electronic load device under Ubuntu
20.04.1 in VirtualBox. It worked straight out of the box...I could not believe it. Well, that's the beginning
of the story!

Thanks for your explanation, I have added the usermod command to the installation help.

Why VirtualBox? TestController can run directly on Windows, Mac and Linux and probably a few more.
 

Offline rachdatu

  • Regular Contributor
  • *
  • Posts: 54
  • Country: ch
Re: Program that can log from many multimeters.
« Reply #2337 on: April 08, 2022, 07:39:19 pm »
This is the way I process. My Linux machine is in the basement and it's still cold here. ..
It's an old PC with a GPIB board. I have a few old equipments I would like to make a definition file; would be nice to get rid of these cumbersome Visa drivers.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2338 on: April 08, 2022, 07:45:18 pm »
It's an old PC with a GPIB board. I have a few old equipments I would like to make a definition file; would be nice to get rid of these cumbersome Visa drivers.

TestController only supports a few serial GPIB interfaces, if you have or make one (Very easy) it is probably not difficult to get rid of the old stuff.
 

Offline rachdatu

  • Regular Contributor
  • *
  • Posts: 54
  • Country: ch
Re: Program that can log from many multimeters.
« Reply #2339 on: April 09, 2022, 09:32:08 am »
Ok, thanks

Would such a board be supported?
PCI-GPIB IEEE 488.2 188513E-01L

 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2340 on: April 09, 2022, 09:37:48 am »
Ok, thanks

Would such a board be supported?
PCI-GPIB IEEE 488.2 188513E-01L

No, it supports Prologix and AR488 that is a free and very cheap Arduino GPIB interface, there is a thread about it in this forum.
There is also support for a old serial National Instruments GPIB interface.
 

Offline Scheppo

  • Contributor
  • Posts: 23
  • Country: de
Hameg HM7044
« Reply #2341 on: April 12, 2022, 12:32:58 pm »
Hi everyone,

i have an old Hameg HM7044 Powersupply with RS232 Port.
Can anybody help me with configuring this PS in TC?

I Have the Command Reference attached.

thx in advance
scheppo

 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Hameg HM7044
« Reply #2342 on: April 12, 2022, 01:44:12 pm »
I have an old Hameg HM7044 Powersupply with RS232 Port.
Can anybody help me with configuring this PS in TC?

I Have the Command Reference attached.

The commands looks fairly limited, there are no *idn? or other command to identify the supply and it cannot read out the current values. This means the Ascii driver is best for this.

I would suggest making 4 columns readout with the select output voltages.

Then adding commands for setting voltage and current for each channel and for turning on/off.

You can define your own commands with #scpiCmd, these commands will be listed in the help window. These commands makes it easier to define the commands.

#scpiCmd select tx SEL (value)
#scpiCmd setVoltage tx SET (value) V
#scpiCmd setColtage tx SET (value) A

#scpiCmd getVoltage? txrx? READ
:readmath: replace(getElement(value,inputValue-1,"[; ]"),"V","");

#scpiCmd getCurrent? txrx? READ
:readmath: replace(getElement(value,inputValue+3,"[; ]"),"A","");


It is a good idea to also define #interface commands, these are used in scripting, test and some panels in GridPanel.


« Last Edit: April 13, 2022, 03:20:07 pm by HKJ »
 

Offline Scheppo

  • Contributor
  • Posts: 23
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2343 on: April 12, 2022, 07:59:20 pm »
Thank you very much for your help.
I will try it tomorrow.

In the meantime I found a Video and Viewlab drivers, maybe it can help about the commands.
Here can we see the idn? Command maybe work.

Viewlab driver attached.
Thx
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2344 on: April 13, 2022, 07:22:21 am »
Thank you very much for your help.
I will try it tomorrow.

In the meantime I found a Video and Viewlab drivers, maybe it can help about the commands.
Here can we see the idn? Command maybe work.

If the *idn? command works, you can use the SCPIx driver, but you will need to redefine commands with #scpiCmd. TestController will only expect answers from commands ending with a ?, i.e. the READ command will not work without a #scpiCmd to redefine it to include a ?

If it implements a *idn? command you can probably use the TC build in function to generate a skeleton definition.
« Last Edit: April 13, 2022, 07:23:55 am by HKJ »
 

Offline Scheppo

  • Contributor
  • Posts: 23
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2345 on: April 13, 2022, 10:01:28 am »
Can i use a .txt file from another Powersupply and change it?
I have absolute no Idea which Commanmds i must use.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2346 on: April 13, 2022, 10:38:53 am »
Can i use a .txt file from another Powersupply and change it?
I have absolute no Idea which Commanmds i must use.

Yes.
 

Offline Scheppo

  • Contributor
  • Posts: 23
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2347 on: April 13, 2022, 12:50:55 pm »
Ok, i made a little txt file.
The problem is no command go to the Hameg.
Maybe the Problem is a CR for the command termination?

#idString HAMEG,HAMEG 7044
#name Hameg 7044
#handle mostlyModel
#driver Ascii
#port comfixedbaud
#baudrate 9600N82

#scpiCmd select txrx? SEL (value)
#scpiCmd setVoltage txrx? SET (value) V
#scpiCmd setCurrent txrx? SET (value) A
#scpiCmd getVoltage txrx? READ
:readmath: replace(getElement(value,inputValue-1,"[; ]"),"V","");
#scpiCmd getCurrent txrx? READ
:readmath: replace(getElement(value,inputValue+3,"[; ]"),"A","");


 

Offline Scheppo

  • Contributor
  • Posts: 23
  • Country: de
Re: Program that can log from many multimeters.
« Reply #2348 on: April 13, 2022, 01:08:49 pm »
The #eol \r do the Job :)

The getV and getA give no reaction
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2349 on: April 13, 2022, 03:23:12 pm »
#scpiCmd select txrx? SEL (value)
#scpiCmd setVoltage txrx? SET (value) V
#scpiCmd setCurrent txrx? SET (value) A

You only have to use tx, not txrx?
There is no answer expected from the SEL and SET commands

#scpiCmd getVoltage txrx? READ
:readmath: replace(getElement(value,inputValue-1,"[; ]"),"V","");
#scpiCmd getCurrent txrx? READ
:readmath: replace(getElement(value,inputValue+3,"[; ]"),"A","");

You need a ? on you own command for TC to know they returns a value. getVoltage? getCurrent?

You can test the commands from the TC command line, i.e. using "txrx? READ" on the command line is expected to return the full string from READ
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf