#metaSection USB_DEVICE
#subDriver USB
#value Voltage V D4
#value Current A D4
#value Capacity Ah D4
#value Energy Wh D4
#value D_Minus V D4
#value D_Plus V D4
#value Power W D4
#askValues values?
; Format of answer: f=float, u=remove trailing letters, x=skip, *=Zero upper case values if this value is 0
#askValuesReadFormat ffffffxxf
Do zero values on the last two positions mean that the TC is not getting the right data from the device?
Or is it enough to change the format of answer?
However, I am still not getting what I have explained above: selecting "Pb" should unlock "PB_Bat_Float_Voltage" before doing anything with the "Set" button.
Use the debug mode (I.e. start the program with "testControllerDebug.bat" and watch the DOS windows for any error messages.
A easy way to check for a couple of string values in to use the function inList() https://lygte-info.dk/project/TestControllerFunctions%20UK.html#inList it is shorter than a bunch of equal or not equal tests and easier to read.
;; JB002: Tx <GetTest? 0x0C 0x30 0x30 0x30 0x41 0x38 0x31 0x30 0x30 0x31 0x34>
;; COM43: Tx: 0C 30 30 30 41 38 31 30 30 31 34 30 31 46 46 0D
;; COM43: Rx: 0C 30 30 34 45 43 31 30 30 31 34 30 30 30 32 30 30 30 33 30 30 44 32 30 38 33 34 30 38 33 34 30 45 37 34 30 30 30 30 30 30 33 32 30 30 36 34 30 31 32 43 30 30 30 30 30 30 30 30 30 30 30 30 30 34 36 35 30 30 30 30 30 30 30 30 30 30 33 43 30 46 37 35 0D
;; Rx 20 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
;; JB002: Rx <20 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4>
What am I doing wrong?
What am I doing wrong?
Only use / once to start format specifications:
/7h4 /11h4 /15h4 /19h4 /23h4 /27h4 /31h4 /35h4 /39h4 /43h4 /47h4 /51h4 /55h4 /59h4 /63h4 /67h4 /71h4 /75h4
/ 7h4 11h4 15h4 19h4 23h4 27h4 31h4 35h4 39h4 43h4 47h4 51h4 55h4 59h4 63h4 67h4 71h4 75h4
Starting
;; jSerialComm version: 2.9.1
;; Start thread for: COM43 - Test 003
;; COM43: Set params: 9600
;; Found Test 003 on Toshiba Bluetooth (COM43)
;; JB003: Tx <GetTestA?>
;; JB003: Rx Timeout
Exception in thread "AWT-EventQueue-0" dk.hkj.script.ProgramExceptions$UnknownEx
ception: Variable not found CurrentValueA
(getElement(CurrentValueA,____<----____0,"[ ]"))
at dk.hkj.script.Script.getVar(Script.java:73)
at dk.hkj.script.Script.parseValue(Script.java:281)
at dk.hkj.script.Script.parseBitOp(Script.java:316)
at dk.hkj.script.Script.parseProduct(Script.java:388)
at dk.hkj.script.Script.parseSum(Script.java:470)
at dk.hkj.script.Script.parseCompare(Script.java:525)
at dk.hkj.script.Script.parseLogical(Script.java:561)
at dk.hkj.script.Script.parseQuestionMark(Script.java:587)
at dk.hkj.script.Script.parseExpression(Script.java:612)
at dk.hkj.script.Script.parseParamList(Script.java:123)
at dk.hkj.script.Script.parseValue(Script.java:267)
at dk.hkj.script.Script.parseBitOp(Script.java:316)
at dk.hkj.script.Script.parseProduct(Script.java:388)
at dk.hkj.script.Script.parseSum(Script.java:470)
at dk.hkj.script.Script.parseCompare(Script.java:525)
at dk.hkj.script.Script.parseLogical(Script.java:561)
at dk.hkj.script.Script.parseQuestionMark(Script.java:587)
at dk.hkj.script.Script.parseExpression(Script.java:612)
at dk.hkj.script.Script.parseValue(Script.java:239)
at dk.hkj.script.Script.parseBitOp(Script.java:316)
at dk.hkj.script.Script.parseProduct(Script.java:388)
at dk.hkj.script.Script.parseSum(Script.java:470)
at dk.hkj.script.Script.parseCompare(Script.java:525)
at dk.hkj.script.Script.parseLogical(Script.java:561)
at dk.hkj.script.Script.parseQuestionMark(Script.java:587)
at dk.hkj.script.Script.parseExpression(Script.java:612)
at dk.hkj.script.Script.expression(Script.java:1220)
at dk.hkj.main.SCPICommand.writeReadInternal(SCPICommand.java:323)
at dk.hkj.main.SCPICommand.writeRead(SCPICommand.java:339)
at dk.hkj.devices.SetupFormats$ComboboxField.syncValue(SetupFormats.java
:3483)
at dk.hkj.devices.SetupFormats.syncAll(SetupFormats.java:308)
at dk.hkj.main.PopupSetupSelection.initialSync(PopupSetupSelection.java:
124)
at dk.hkj.main.PopupSetupSelection.timerUpdate(PopupSetupSelection.java:
131)
at dk.hkj.main.PopupSetupSelection.access$3(PopupSetupSelection.java:129
)
at dk.hkj.main.PopupSetupSelection$3.actionPerformed(PopupSetupSelection
.java:88)
at javax.swing.Timer.fireActionPerformed(Unknown Source)
at javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionP
rivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
How to get rid of it?
Another question: these parameters are read by sending the memory address (ex: 1 ; can go up to 20) together with a command (always the same).
It would be much faster to update the different fields if I could concatenate the command and the address like this:
:read: GetTestA? ((bytesAsHex("\x0c",1,0))+" "+(bytesAsHex("000A81",6,0))+" "+ The memory address here /7h4
:read: GetTestB? ((bytesAsHex("\x0c",1,0))+" "+(bytesAsHex("000A81",6,0))+" "+ The memory address here /11h4
:read: GetTestC? ((bytesAsHex("\x0c",1,0))+" "+(bytesAsHex("000A81",6,0))+" "+ The memory address here /15h4
Etc.
Possible?
Hi HKJ,
Are there any quirks I need to be aware of when designating custom directories in the batch testController.bat file?
I seem to be able to define a custom directory for data and charts, but have not had any success designating a supplemental directory for devices.
It seems as though some custom directories work, and some don't.
I built Sairus cable for my BM869S and it works well with his software.
Is there any way to make this TestController software work with that cable? It Works only with RX through a USB-Serial adaptor. Includes a 12F683 pic that implements the protocol inside of it. Was checking the TestController software but for BM869S it uses USBHID per default.
I can no longer reach GPIB devices connected to a Prologix Ethernet interface with Test Controller. The debug window shows ";; jSerialComm version: 2.9.1" but nothing else.
Since I recently moved to a new computer, I am wondering if something is missing from the new set up. TestController works as expected on the new computer when talking to LXI and Socket connected devices; the problem is only with the Prologix Ethernet connected devices.
FWIW, I can telnet into the Prologix controller and verify that it is responding at the expected IP address, and also that it can talk to my 3 GPIB instruments. So things look OK at a hardware level.
What am I missing?
Another solution is if you can post the hex (hex in ascii format, bot a binary hex dump) output for a couple of readings and list the actual range and values. Then I will see if I can adapt the existing driver to handle it.
I can no longer reach GPIB devices connected to a Prologix Ethernet interface with Test Controller. The debug window shows ";; jSerialComm version: 2.9.1" but nothing else.
Since I recently moved to a new computer, I am wondering if something is missing from the new set up. TestController works as expected on the new computer when talking to LXI and Socket connected devices; the problem is only with the Prologix Ethernet connected devices.
FWIW, I can telnet into the Prologix controller and verify that it is responding at the expected IP address, and also that it can talk to my 3 GPIB instruments. So things look OK at a hardware level.
What am I missing?Have you listen the correct serial port in the address column, try pressing F2 to enter edit mode of the address column, then right click the mouse, it will list available serial ports.
If it is on Linux the issue may also be access to the serial port.
This is HTML but had to rename extension to TXT.
I can provide other readings if this is the right methode.
It is nice to view, but not that easy to test. I wonder why byte 10 is missing?
Can you post a list of hex bytes, like: "33 44 55 66"
I can put that directly into a Arduino and use it for testing.
Below the Hex captures from the debug, and captured screens from the App from Sairus.
This interface cable is handy as with few euros one can implement the cable. I spent around 3 euros in Aliexpress plus programing pic plus soldering time. All done fits on well compacted form, even with through-holes.
From the other thread I believe multiple people implemented the same.
It would be great if it could work in your software as well.
Is it possible to modify the "indicator" control so that its state can be queried by other controls?
I am working on a new device file and this would be very useful for enabling some of the downstream controls.
V2.31 is up.
V2.31 is up.
...
Added: Support for Brymen BM869 with user made serial interface
...
This will probably be the last release in 2022.
There are some unexpected things on the debug screen:
- Even with all devices deselected, the Brymen info shows up.
- The five error lines at the bottom show up if I click "About" in the configuration page.
Now need to understand how to add secondary measurements. Seems only presenting primary ones.
Also need to understand how do display the scale with full resolution. As example I can only see 11 on the chart, but I am sure can be somehow changed to something related to the range of the values. -> (found it. Is just change the decimals in the scales).