Code Monkey home page Code Monkey logo

tosun-shanghai / tsmaster Goto Github PK

View Code? Open in Web Editor NEW
243.0 19.0 40.0 14.21 MB

A powerful open environment for automotive bus monitoring, simulation, testing, diagnostics, calibration and so on. It supports all kinds of mainstream hardware such as TOSUN, Vector, PEAK, Kvaser, Intrepidcs, ZLG, CANable, CandleLight, cantact and so on. It is a permanent free software for all automotive engineers.

Home Page: http://www.tosunai.cn/

License: GNU Lesser General Public License v2.1

automotive can lin diagnostics calibration test simulation measurement adas ethernet

tsmaster's Introduction

TSMaster

TSMaster software official release

image

Download Address

Latest TSMaster binary download address (beta version)
http://www.tosun.tech/TOSUNSoftware/TSMaster_Setup_beta.exe

Latest TSMaster binary download address (alpha version, may be updated more frequently)
http://www.tosun.tech/TOSUNSoftware/TSMaster_Setup_alpha.exe

Note: You can download alpha version using the following method (step 1 to 5), alpha version is released more frequently than beta version and standard version, which includes fast bug fixes and new features. image

Brief Introduction

TSMaster is a powerful open environment for automotive bus monitoring, simulation, testing, diagnostics and calibration. It is a free software for all automotive engineers. It is upgrading frequently, you can always get latest software using the above download address, or just click "upgrade" button in the help page of TSMaster software.

Supported hardware vendors

[1] TOSUN (TCxx, TLxx...)
[2] Vector (VN16xx, VN56xx, VN89xx...)
[3] PEAK (PCAN USB)
[4] Kvaser (Leaf...)
[5] Intrepidcs (neo VIFIRE...)
[6] ZLG (USBCAN...)
[7] Open source CAN tool (candleLight, canable, cantact, USB2CAN, CANAlyze ...)

Tutorial videos

CAN Bus Simulation
Debug Mini Program
How to use XCP Calibration
CCP Calibration
How to Assess CAN Tool performance
Mini Program Simple Transmit
System Var Detailed Description
Mini Program 2 Async and Sync concepts
TSMaster Application concepts
Global Rx Filter
TSMaster SDK connect any device
Panel Tutorial 1 - Basic controls
How to add realtime comments in blf file
Calibration Automation with your own scripting language
Mini Program Timer
AEB -0.8g
AEB HIL with CarSim and Carla CCRb
TSMaster Control CarSim HIL
AEB -0.4g
Universal Drag and Drop
Graphics Synchronization
Plot Variable Graph
Test System Report Automation
Online Replay Automation
Load DBC and Log to Analyze
How to Use TSScripter to run Python for online replay
Drag Files and Replay
Variables in mini program
Timers in mini program
Shortcuts in mini program
Mini Program Read Excel
Database Operation
CarSim HIL TSMaster
CAN Callbacks
Signal Monitoring
Measurement Setup
Increase Bus Load
Waveform of TSCANMini vs CANcase
TSMaster In Process Server for MATLAB
TSMaster Database Parser Python
TSMaster Database Parser MATLAB
Multi Vendor Simulation

Release Notes

TSMaster Release Notes See release note

Feature matrix in Chinese

中文介绍点击此链接

Total 42 features (Increasing...) image

backup download address (including demo videos)

Baidu cloud download address
Download Code: uu0b

TSMaster User Manual

Application Notes

TSMaster Screenshots

Panel feature

image image image image

Trace window

image

Transmit window

image

CAN Remaining Bus Simulation

image

C/C++ script editor

image

Database window

image

Statistics window

image

CarSim Co-Simulation

image

TOSUN TC1005 performance benchmark

image

Test System

image

Online Replay

image

Hardware Configuration

image

Channel Mapping

image

Bus logging

image

LIN Transmit

image

Application window host (Carla)

image

Mini program library

image

System variable management

image

Measurement Setup

image

Measurement Filter

image

Project document

image

Automotive file converter (*.dbc, *.arxml, *.xls, *.xlsx, *.dbf, *.yaml, *.sym, *.c, *.h)

image

Help documents

image

tsmaster's People

Contributors

freshhope avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tsmaster's Issues

Measurement setup view improvments

When the configuration becomes complex, there is lots of icons aligned vertically and icon become small and are not readable
image

It would be good to have the possibility to have an horizontal layout liske this:

Or maybe split layout like this (horizontal layout adapted for a wide screen):
image

Or split layout like this (kind of gride limited to 5 elements) (could be applicable for horizontal layout as well
image

horizontal layout split :
image

Add callback function in panel button

When I create a button in panel, I would like to associate a function when user push button (C script, python function...).
I can only associate a signal to button.

Moreover the toolbox elements should be classified (input controls, display...)
image

NCF file

Plz,any plans to support NCF files?

CANable Stop Measurement Thread Unresponsive

When using CANable Z Pro+ adapter with candlelight firmware (version a8a0757), each time real-time measurement is stopped (1 channel, multiple graphs and trace window), it seems the thread is unresponsive and it needs to be terminated manually
image

CAN Database file path

Feature Request: On the ‘CAN Database’ window, currently if DBCs are added, they are copied to C:\Program Files (x86)\TOSUN\TSMAster\bin\Configuration\TOSUN\DB\CAN\ etc, and if edited from within TSmaster it edits that local copy.

  • It would be good to be able to specify the file copy path, so that it could stay with the configuration file folder and make sharing easier
  • It could also be good to have a ‘Add DBC without copy’ button, that adds the DBC but doesn’t make a local copy. This would allow the DBC to be edited by another program and would update without having to remove/re-add the DBC

Diagnostic ISO TP - Add Enter Key action

When I type manually my commands and press key "Enter", my command in not executed. I need to press the button execute with the mouse.
After pressing "Enter" key, the command line need to be cleared to allow me to put the next command

Moreover, command data needs to be displayed as padded "10 01" insted of "1001" in the input text.

image

ZLG CANFD -200U cannot be suported

Hello, the device of ZLG which type is CANFD-200U cannot be supported. I‘ve revised the hardware configure list but it doesn't matter.
Uploading image.png…

Override automatic scaling of values on graph

Bug/feature request: Add 'auto-scaling' button, which has the current behavior for graph scaling when a value is greater than the selected range. If not selected, keep the range fixed. Useful for when values have out of range errors

image

Diagnostic ISO TP - Tab "Automatic Diagnostic" is not working

On the left panell, the tree view is freezed. It would be interesting to add group/subgroup...

Having the possibility to copy/paste some test cases...

Having a button Run and more context menu for each panel (right click with mouse).

Having some button to export test result (format junit for example or excel/word/pdf/html report?)

TSMaster支持第三方硬件的LIN通道吗?

我使用的硬件为Intrepidcs的neo VI FIRE,通过TSMaster最新版(V2021.8.12),在 硬件->通道选择 里面可以看到6路CAN,确无法找到LIN通道,请问目前是不支持第三方硬件的LIN通道吗?PLIN的LIN通道可以支持吗?不支持的话未来是否有适配的打算?谢谢!

Numeric display changes

Feature Requests for numeric display

  • Allow display values to be formatted in hexadecimal
  • Specify a point size

Disappearing plots on graphics trace

Bug: Below video is of a offline log replay, there's an issue with the graph line disappearing after a certain number of additional points

Img.1362-1.mp4

Bug when converting arxml to DBC (Automotive converter)

I have a correct system extract (*.arxml from systemDesk) and I try to convert it into dbc.

An error occurs (message displayed).
In my arxml file, can message ID are in hex format (0x) and it cause an error
extract of my arxml file!

                        <CAN-FRAME-TRIGGERING T="xxx" UUID="xxx">
                          <SHORT-NAME>xxxxx</SHORT-NAME>
                          <FRAME-PORT-REFS>
                            <FRAME-PORT-REF DEST="FRAME-PORT">/EcuInstances/ECU/CanCommunicationConnector/RxFramePort</FRAME-PORT-REF>
                          </FRAME-PORT-REFS>
                          <FRAME-REF DEST="CAN-FRAME">/Frames/G_CAN/PKG_G_CAN/Can_Frame_Diag_Functional_Request</FRAME-REF>
                          <PDU-TRIGGERINGS>
                            <PDU-TRIGGERING-REF-CONDITIONAL>
                              <PDU-TRIGGERING-REF DEST="PDU-TRIGGERING">/CommunicationClusters/G_CAN/G_CAN/G_CAN/PduTriggering_DIAG_RQ_GLOBAL_UDS</PDU-TRIGGERING-REF>
                            </PDU-TRIGGERING-REF-CONDITIONAL>
                          </PDU-TRIGGERINGS>
                          <CAN-ADDRESSING-MODE>STANDARD</CAN-ADDRESSING-MODE>
                          **<IDENTIFIER>0x777</IDENTIFIER>**
                        </CAN-FRAME-TRIGGERING>

I capture a log message which indicate a problem (tools expect an int data, and in file, there is a hex data)
Source file selected: XXX_SystemExtract.arxml

2022.4.28.741 INFO - convert - Importing C:\Users\XXX\AppData\Local\Temp\~LC346D.arxml ... 
2022.4.28.741 Traceback (most recent call last):
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\runpy.py", line 194, in _run_module_as_main
2022.4.28.741     return _run_code(code, main_globals, None,
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\runpy.py", line 87, in _run_code
2022.4.28.741     exec(code, run_globals)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\Scripts\canconvert.exe\__main__.py", line 7, in <module>
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\click\core.py", line 829, in __call__
2022.4.28.741     return self.main(*args, **kwargs)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\click\core.py", line 782, in main
2022.4.28.741     rv = self.invoke(ctx)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\click\core.py", line 1066, in invoke
2022.4.28.741     return ctx.invoke(self.callback, **ctx.params)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\click\core.py", line 610, in invoke
2022.4.28.741     return callback(*args, **kwargs)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\cli\convert.py", line 135, in cli_convert
2022.4.28.741     canmatrix.convert.convert(infile, outfile, **options)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\convert.py", line 40, in convert
2022.4.28.741     dbs = canmatrix.formats.loadp(infile, **options)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\formats\__init__.py", line 77, in loadp
2022.4.28.741     return load(fileObject, import_type, key, **options)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\formats\__init__.py", line 94, in load
2022.4.28.741     dbs = module_instance.load(file_object, **options)  # type: ignore
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\formats\arxml.py", line 1963, in load
2022.4.28.741     result.update(decode_can_helper(ea, float_factory, ignore_cluster_info))
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\formats\arxml.py", line 1858, in decode_can_helper
2022.4.28.741     frame = get_frame(frameTrig, ea, multiplex_translation, float_factory)
2022.4.28.741   File "C:\Program Files (x86)\TOSUN\TSMaster\bin\Data\Python\3.8.5\x86\lib\site-packages\canmatrix\formats\arxml.py", line 1447, in get_frame
2022.4.28.741     arbitration_id = int(arb_id.text)
2022.4.28.741 ValueError: invalid literal for int() with base 10: '0x777'
2022.4.28.741 Error: return code = 1

Selecting CAN database twice

Bug: When adding a message to the signal generator, sometimes if you select the DBC it'll scroll the view, but will require you to reselect the DBC a second time to correctly scroll to that message list.

image

Moving gui in magnetic mode is not working

When I select magnetic mode:
image

Then I attach multiple gui together.
Then I try to move the gui on top left. The gui is moving alone and attached gui's are not moved

see attached gui's:
image

Result after I move the left gui - right gui's are now detached (see after moving the left panel - left panel is moved alone):

image

Gui's are attached together visually but when I select the left one, other ones get detached

J1939 Multiplex Signal Handling

Issue: For multiplexed signals currently, you have to add the signal to a ‘Numeric Display’, which takes a long time to set up if trying to see multiple multiplexed messages:
Bug fix: The ‘Numeric Display’ only updates the bottom value if it’s a multiplexed message. On the below screenshot, the ‘a)’ ‘Battery_voltage’, is updated correctly. But the ‘b)’ ‘Feedback_Current_2’ and ‘Diagnostic_2’ are not updated.
Feature Request: Have a toggleable option somewhere on the ‘CAN / CAN FD Trace’ window to have persistent memory for multiplexed messages, vs displaying ‘N/A’ when data isn’t received. It might be worthwhile having a toggle to show absolute time received for each signal?
image

'CAN statistics' page updates

Feature Request: On the ‘CAN Statistics’ window, show the specified baud rate of each channel
Feature Request: Have 'Clear Statistics' button, to reset error frame count
image

Message sorting

Feature Request: On the ‘CAN / CAN FD Transmit’ window, be able to sort columns (alphabetical, etc):
image

Create TSMaster version for windows x64

This is a feature usefull to be able to use more than 2GB data (log...).

I don't know if a 64 bits version will improve performance of the application (lattency...)

new function for page control

固定窗口功能可以单独对每个page进行配置,可方便调试期间的窗口管理,建议如有可能新增该功能,谢谢

Panel Back/Forward actions

Please, add Back/Forward steps actions for Panel interface.
You can't move back if the allign or another action was wrong....

Signal generator automatically starts

Bug: The message signal generator automatically starts when going online on the bus. This can be dangerous if the signal is to command a motor rpm, etc.
image

Messages Counter

Please, add message counter column in Trace interface
image
Thanks.

arxml parse issue

arxml parse issue

when using arxml, the signal with desciption (which is defiened in Computation Method, the Category selected as TEXTABLE) can not be parsed in TSMaster trace and graphic.

arxml definition
image

TSMaster Graphic
image

TSMaster Trace
image

suggestion:replay it online on both two channels or more

Hello, i have a suggestion FYI.

i have a log file,in this log file,it had only recorded one channel,but i want to replay it online on both two channels,i came up with two ideas
one is: use c script
two is: copy the log file,import it,change the target channel
so maybe you can add another way.
Currently, only one channel can be changed,maybe set a rule ,such as: "1:4" (it means channels 1,2,3,4), "1,3"(it means channels 1 and 3)

just FYI

Transmitting J1939 Multiplexed message

Feature Request: On the ‘CAN / CAN FD Transmit’ window, if a message is a multiplexed message, only display the signals for the specified multiplex value. Currently all the signals are shown which can be confusing, suggest adding a toggle which shows ‘All’ or ‘Current’ signals, based upon the current multiplexor value.

image
image

Graphics cursor

Bug: Cursor lines should move with the graphed data, not with the window

image
image

Adding XCP protocol

A nice feature would be to have xcp support (with A2L database file format...)

How to use these two API functions in the mini program?

double d = com.get_can_signal_value(TSgn1, &c.FData[0]);
com.set_can_signal_value(TSgn1, &c.FData[0], 12.3);
The two apis have a key parameter: the definition of the signal attribute (such as TSgn1).  But the variables used to describe signal properties can't be found directly in the default header file or in the database header file  of the mini program.

Limit of DBC Value Table entries

Bug: Some signals with larger value tables do not display any options. (in 'Trace' windows, 'CAN Transmit' windows, or 'Display' windows). I cannot localize to see what a common issue is.
image

Graphics varible selection

Bug: If the order of variables on the 'graphics' window changes, double-clicking a variable to change the settings will open the wrong variable.

Example: order was changed on the below variables, I double-clicked on 'Direction_Command' and it opens 'D2_Motor_Speed' settings

image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.