But I want to ask for the help with adding to Test Controller support for Tenma 72-7715 dual channel thermometer.
First I want to know if it is even possible to add support for this thermometer.
I can use soldering iron with both hands and even legs, but have no idea about how communication protocols and similar stuff works.
So if anyone can help with this I would be very grateful.
TestController can work with serial and network connections. If the Tenma uses a virtual serial port it is possible to include it (But many newer devices use USB HID and TC do not support that).
For communication with PC it uses "WCH CH9325" USB interface chip, which is UART - USB HID bidirectional converter.
Please let me know if it is possible or not possible to connect this device to TC.
It cannot be connected with that chip, the data before that chip is standard serial data. This means you can buy a TTL-serial to USB cable and solder it on to the input of the chip and get serial data that TC can handle.
Thank you for the answer.
I still would like to connect Tenma with thermocouples.
You mean cable like this: https://www.elextra.dk/da-DK/p/H45438?utm_source=GoogleAds&utm_medium=cpc&gclid=Cj0KCQiAmNeqBhD4ARIsADsYfTf0jr8N7nDCWD04vZST6gKz1QTX5yax7coI7ZEuXYDEHOmy3KRoV2UaAgUjEALw_wcB
If it is correct cable, I just can go to the shop and pick it up, they have two of them in stock at CPH shop.
Yes, but you have to check if it is 5V or 3.3V for both cable and device.
Update:
I think I got serial adapter working, it was some problems with the logic levels, I took apart adapter and desolder pull up resistor from RX input, now levels are ok.
About the functionality:
All functions, like start transmitting data and which data to transmit I can set on the thermometer itself, so thermometer not even need to receive any data (only commands it can receive is to start/stop transmitting).
What is needed is to somehow make TC to receive transmitted temperature values and correctly interpreter them.
Thermometer software recognize when thermometer is sending T1 temperature (probe 1 or channel 1), T2 temperature (probe 2 or channel 2), T1 minus T2 and Hi/Lo limits set on the devise for T1 and T2.
But thermometer can send only one temperature at the time, only T1 or T2 or T1 - T2.
So the thermometer is sending temperature values and designation of what channel it is T1, T2, or T1 - T2, plus Lo/Hi limit signals when in T1 or T2 mode (it also sending thermocouple type and probably the time H:M, which is counting at incorrect speed, but that is completely unimportant).
What you need is a terminal program that can show hex codes.
I usually use Termite for that: https://www.compuphase.com/software_termite.htm
You can probably use N81 is format, but will have to guess the correct baudrate.
The idea is to write down (Or copy to notepad) the message and write what the display shows beside it. It is important to have samples with a couple of different temperatures including negative.
Then see if you can figure out the meaning of the different hex codes, or you can post it here and somebody may help your with it.
I got the data from comport and I can see transmitted temperature values. I will figure out all the things and then will post the results, will compile it to be easy to understand.
When it works with TC I would like to include it, this means a picture (That I can publish on my website) of how your soldered the adapter to the meter would be useful.
Also note that it is best only to connect the TX data to the USB adapter, with the RX pin you may get two output pins connected together (This is only a minor detail, they will probably stay at same level all the time).
I will start describing transmitted data:
For me to do a definition I need some hex data in ascii format, not as a image (I am lazy and don't want to type the data myself).
For me to do a definition I need some hex data in ascii format, not as a image (I am lazy and don't want to type the data myself).
How I get you data in ascii format? Can I capture it like that, I need to figure it out...
For me to do a definition I need some hex data in ascii format, not as a image (I am lazy and don't want to type the data myself).
How I get you data in ascii format? Can I capture it like that, I need to figure it out...
How I get you data in ascii format? Can I capture it like that, I need to figure it out...
Like the hex in your first image, just not in a image, but directly as text in the post. I do need all the different temperatures from your second example.
I may have to modify some code in TC to handle negative temperature.
I am not going to look at it today.
This is how to solder serial adapter to the thermometer.
In my case logic level 0 was to high, to solve that I desolder pull up resistor from adapters RX input.
(Attachment Link)
This looks like a job for the block driver (AsciiBlock can also be used): https://lygte-info.dk/project/TestControllerConfigDevice2%20UK.html#Binary_with_fixed_communication_blocks_(Block)
When you have posted a bit more I can do a initial definition for you or you can check the included definitions for some examples and make it yourself.
For me to do a definition I need some hex data in ascii format, not as a image (I am lazy and don't want to type the data myself).
The way TC works you will have one column with temperature and you may add another column with channel. Input data has to be numeric, you can not throw in a text string (Except if you play with bits).
I understand that now we in the stage, when it is clear, that Tenma could be connected to the TC.
But I live in an analog world (audio equipment, power supplies, etc.), yesterday first time in my life I had captured data from COM port, so I am learning while doing it.
I do not even know what "definitions" means in this case. So, I will need some hep with simple explanations of some things at the beginning.
Ok, I had looked a bit at "Test Controller, Configuration of non SCPI devices" page. Then find out what is SCPI.
If I understood correctly, the working principle of the TC is based on SCPI and Tenma is not SCPI device, so it needs translation layer, like AsciiBlock.
I have attached a definition, I have only tested with a few of your supplied data, i.e. I will recommend you do a full test.
You can place the file in TestController/Devices, either the one in the TC directory or better in the one in documents.
Awesome! It works.
I could not connect in the beginning, then I changed Baud rate in the definition text file to 2400 and it started to work.
I will do full test and let you know if it is any problems, right now it seems to work fine.
I definitely need to buy you a coffee for helping me with this and for making very awesome test software. If you have MobilePay, send me number to PM.
I have never gotten around to get MobilePay, they only way to send me money is paypal.
I have added a little bit more to the definition, with the new one there is a "View" button on the "Load devices" page.
It do also add the UNI-T device name
In TestController, I expect when using [LOC], that a ++loc is sent to the meter (and intercepted by the GPIB controller). But this is not the case. Nothing is sent. And nothing appears in the debug log...
I wrote a as small as possible definition for testing, and it seems that none of the TC GPIB commands are working. (I tried [CLR], [LLO] and [LOC] ). Example: #finalCmd [LOC]; or #finalCmd [LOC];[500];
So these findings are in line with the post of dl6lr above...
Can these commands only be used with the ASCII driver, or is something broken? I was testing with a AR488.