{"id":21740,"date":"2025-11-03T15:04:59","date_gmt":"2025-11-03T07:04:59","guid":{"rendered":"https:\/\/www.tosunai.com\/?p=21740"},"modified":"2025-11-03T15:58:17","modified_gmt":"2025-11-03T07:58:17","slug":"tsmaster-sep-oct-new-features-are-here","status":"publish","type":"post","link":"https:\/\/www.tosunai.com\/en\/tsmaster-sep-oct-new-features-are-here\/","title":{"rendered":"Software Updates | TSMaster September-October Release: TAC Scripting Advanced, Applet Ease of Use Dramatically Improved"},"content":{"rendered":"
In order to continuously empower users' R&D and testing work, TSMaster officially releases the September-October 2025 feature update. This release focuses on the enhancement of core automation capabilities and optimization of user experience, theHighlights include TAC scripting advancements, applet usability upgrades, API updates, sample project upgrades, and other upgrades.<\/strong>The goal is to provide you with more powerful, flexible, and convenient tools to help you meet increasingly complex development challenges. Designed to provide you with more powerful, flexible, and convenient tools to help you meet increasingly complex development challenges and further improve work efficiency.<\/p>\n\n\n\n You can get a full overview of the new features in this update by watching the feature detail video below.<\/strong><\/p>\n\n\n\n https:\/\/www.bilibili.com\/video\/BV1yiHezGEuB\/?share_source=copy_web<\/a><\/p>\n\n\n\n <\/p>\n\n\n\n <\/p>\n\n\n\n \u2192 [Design] - [C applet]<\/p>\n\n\n Update function:<\/strong><\/p>\n\n\n\n TAC Scripting has been fully enhanced to support efficient and concise manipulation of messages and signals, reading and writing system variables and arrays, embedding scripts in flowcharts, registering any parameter function as a global API, and responding to a variety of event sources such as timers, variable changes, message sending\/receiving, and window lifecycle, which provides users with more flexible and powerful automation testing and verification capabilities.<\/p>\n\n\n\n <\/p>\n\n\n\n \u2192 [Design] - [C applet]<\/p>\n\n\n\n [Timer Set]<\/strong><\/strong><\/strong><\/strong><\/p>\n\n\n\n Update function:<\/strong> [___ <\/strong>drag-and-drop (computing) <\/strong>]<\/strong><\/p>\n\n\n\n Updated content:<\/strong> Source Code Recycle Bin<\/strong><\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Design] - [Small program<\/p>\n\n\n\n [___ Graphical Window<\/strong> ]<\/strong><\/p>\n\n\n\n Function Description: Dynamically set the number of split-screen graphic windows; Function Description: Set the signal ladder style; Function Description: Sets the Y-axis split mode;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Show or hide the toolbar of the specified window;<\/p>\n\n\n\n <\/p>\n\n\n\n Function description: Maximize\/restore the window.<\/p>\n\n\n\n <\/p>\n\n\n\n [___ CAN-RBS<\/strong> ]<\/strong><\/p>\n\n\n\n Function Description: Used to configure the time monitor of the RBS module;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to register a signal event based on ID;<\/p>\n\n\n\n <\/p>\n\n\n\n Function description: Used to counter-register signal events based on ID;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to register the signal event;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to counter-register a signal event.<\/p>\n\n\n\n <\/p>\n\n\n\n [___ calibration function<\/strong> ]<\/strong><\/p>\n\n\n\n Function Description: Used to get the axis number and address value of the specified variable;<\/p>\n\n\n\n <\/p>\n\n\n\n Function description: Used to get the list of ecu and a21;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to set all data values of the specified variable;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to add an offset value to all values within the specified variable.<\/p>\n\n\n\n <\/p>\n\n\n\n [___ calibration function<\/strong> ]<\/strong><\/p>\n\n\n\n Function description: E2E callback (pre-send) function;<\/p>\n\n\n\n <\/p>\n\n\n\n Function description: E2E callback (receive) function.<\/p>\n\n\n\n <\/p>\n\n\n\n Updated content:<\/strong> <\/p>\n\n\n\n [___ encryption function<\/strong><\/strong> ]<\/strong><\/p>\n\n\n\n Updated content:<\/strong> <\/p>\n\n\n\n Function Description: Decrypts the input data using the rsa algorithm;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Encrypts the input data using the rsa algorithm;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to generate signature by rsa algorithm;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to encrypt or decrypt data using the AES-128 algorithm in CTR (Counter) mode;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to decrypt the input data using AES-128 algorithm in CBC mode;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Decrypts the input data using the AES-128 algorithm in ECB mode;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to decrypt the input data using AES-256 algorithm in CBC mode;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: CBC mode encryption of input data using AES-128 algorithm;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Use ECB mode to encrypt the input data using the AES-128 algorithm;<\/p>\n\n\n\n <\/p>\n\n\n\n Function description: The API uses CBC mode to encrypt the input data using the AES-256 algorithm;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Use encryption algorithms to convert any length of data into a fixed length 256-bit (32-byte) hash value;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Use encryption algorithms to convert any length of data into a fixed length 512-bit (64-byte) hash value;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Use encryption algorithms to convert any length of data into a fixed length 256-bit (32-byte) hash value;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Use encryption algorithms to convert any length of data into a fixed length 512-bit (64-byte) hash value;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to calculate the MD5 value of the input data;<\/p>\n\n\n\n <\/p>\n\n\n\n Function description: Used to compute encryption-based message authentication codes;<\/p>\n\n\n\n <\/p>\n\n\n\n Function Description: Used to generate random bytes.<\/p>\n\n\n\n \u2192 [Form Settings]<\/p>\n\n\n\n Updated content:<\/strong> Environment of use:<\/strong> 6 new events per window:<\/strong> On Show MDI: Triggered when the window is displayed as a Multi-Document Subform (MDI), adjusts MDI-specific interface elements.<\/p>\n\n\n\n On Show Normal: Triggered when the window reverts to a normal floating window, to re-enable toolbars or menus in floating mode.<\/p>\n\n\n\n On Show Docked: Triggered when the window is docked to the edge of the main interface, the floating control can be hidden to save space in the docking area.<\/p>\n\n\n\n On Hide: Triggered when the window is hidden (minimized or manually closed) to pause the timer, release resources or save the state.<\/p>\n\n\n\n On Destroy: triggered when the window is about to be destroyed, used for completely freeing memory, logging off event listeners or writing back persistent configuration.<\/p>\n\n\n\n \u2192 [Analysis] - [Database]<\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Design] - [Flowchart Program]<\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Project Settings] - [Project Options]<\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Simulation] - [CAN bus simulation<\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Project] - [Window]<\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Application] - [Diagnostics]<\/p>\n\n\n\n Updated content:<\/strong> \u2192 [Start] - [Sample Project]<\/p>\n\n\n\n [Timer Set]<\/strong><\/p>\n\n\n\n Updated content:<\/strong> <\/p>\n\n\n\n [___ signal testing<\/strong> ]<\/strong><\/p>\n\n\n\n Updated content:<\/strong> <\/p>\n\n\n\n [___ TAC-Event<\/strong> ]<\/strong><\/p>\n\n\n\n Updated content:<\/strong> <\/p>\n\n\n\n If you have questions about the use of TSMaster software need technical support, welcome to scan the code to add TOSUN technical customer service <\/mark><\/strong> enterprise micro direct contact and consultation:<\/p>\n\n\n\n\n
TSMaster 2025.0<\/strong>7-08<\/h2>\n<\/blockquote>\n\n\n\n
TAC Scripting Fully Enhanced<\/strong><\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
<\/figure><\/div>\n\n\n\n
Small program ease of use upgrade<\/strong><\/h2>\n\n\n\n
\n\n\n\n
C applet & Python applet both support [Timer Group] unified management; new official sample project Timer Group.<\/p>\n\n\n
<\/figure><\/div>\n\n\n
Drag a .cpp file into the project \u2192 Auto-generate [C Applet]; .c file \u2192 Auto-generate [C Script].<\/p>\n\n\n\n
Drag a .cpp file into the project \u2192 Auto-generate [C Applet]; .c file \u2192 Auto-generate [C Script].<\/p>\n\n\n
<\/figure><\/div>\n\n\nAPI Updates<\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\napp.ui_graphics_set_split_count<\/code><\/pre>\n\n\n\n
<\/p>\n\n\n\napp.ui_graphics_set_signal_step_style<\/code><\/pre>\n\n\n\n
<\/p>\n\n\n\napp.ui_graphics_set_y_axis_split_mode<\/code><\/pre>\n\n\n\napp.ui_show_toolbar \/ ui_hide_toolbar<\/code><\/pre>\n\n\n\napp.ui_maximize_form \/ ui_restore_form<\/code><\/pre>\n\n\n\ncan_rbs_time_monitor_config<\/code><\/pre>\n\n\n\ncan_il_register_signal_event_by_id<\/code><\/pre>\n\n\n\ncan_il_unregister_signal_event_by_id<\/code><\/pre>\n\n\n\ncan_il_register_signal_event<\/code><\/pre>\n\n\n\ncan_il_unregister_signal_event<\/code><\/pre>\n\n\n\ncal_get_axisnum_and_address<\/code><\/pre>\n\n\n\ncal_get_ecu_a2l_list<\/code><\/pre>\n\n\n\ncal_set_all_datas_by_value<\/code><\/pre>\n\n\n\ncal_set_all_datas_by_offset<\/code><\/pre>\n\n\n\ntssomeip_fault_inject_set_e2e_protect_handler<\/code><\/pre>\n\n\n\ntssomeip_fault_inject_set_e2e_check_handler<\/code><\/pre>\n\n\n\n
Supports registering serialization-related hook functions for manual hook parsing of third-party protocols.<\/p>\n\n\n
<\/figure><\/div>\n\n\n
Add encryption AES, RSA, SHA2, SHA3, MD5, CMAC, random number related functions.<\/p>\n\n\n\ncrypto_decrypt_rsa<\/code><\/pre>\n\n\n\ncrypto_encrypt_rsa<\/code><\/pre>\n\n\n\ncrypto_signature_rsa<\/code><\/pre>\n\n\n\ncrypto_crypt_aes_128_ctr<\/code><\/pre>\n\n\n\ncrypto_decrypt_aes_128_cbc<\/code><\/pre>\n\n\n\ncrypto_decrypt_aes_128_ecb<\/code><\/pre>\n\n\n\ncrypto_decrypt_aes_256_cbc<\/code><\/pre>\n\n\n\ncrypto_encrypt_aes_128_cbc<\/code><\/pre>\n\n\n\ncrypto_encrypt_aes_128_ecb<\/code><\/pre>\n\n\n\ncrypto_encrypt_aes_256_cbc<\/code><\/pre>\n\n\n\ncrypto_digest_sha2_256<\/code><\/pre>\n\n\n\ncrypto_digest_sha2_512<\/code><\/pre>\n\n\n\ncrypto_digest_sha3_256<\/code><\/pre>\n\n\n\ncrypto_digest_sha3_512<\/code><\/pre>\n\n\n\ncrypto_digest_md5<\/code><\/pre>\n\n\n\ncrypto_generate_cmac<\/code><\/pre>\n\n\n\ncrypto_generate_random_bytes<\/code><\/pre>\n\n\n\nForm Lifecycle Event Updates<\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
New form events (TAC scripts), using code to realize one-click switching of window restore, toolbar show\/hide, border or not, and MDI embedded state, realizing instant control of form appearance and layout. It is designed to allow users to quickly get the view of maximized drawing area, borderless hover, independent\/tabbed windows, etc. without manual drag and drop or menu operation, which significantly improves the interface flexibility and operation efficiency.<\/p>\n\n\n\n
Can be used in a toolbox development environment.<\/p>\n\n\n\n
On Configuration Loaded: Triggered when the window configuration data is loaded, used to initialize variables or restore user settings.<\/p>\n\n\n\nDatabase support<\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
New *.xml format ARINC-825 is added to CAN database to automatically parse signals and PDUs; new *.tsdb format is added to Some IP database; new *.tsfr format is added to FlexRay database.<\/p>\n\n\n
<\/figure><\/div>\n\n
<\/figure><\/div>\n\n\nRun history playback<\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
The .history file is automatically generated after one run, and can be double-clicked to replay variables, messages, and UI operations in their entirety.<\/p>\n\n\n
<\/figure><\/div>\n\n\nStartup experience optimization<\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
No startup screen is displayed, suitable for automated silent startup.<\/p>\n\n\n
<\/figure><\/div>\n\n\nAdded Rolling Counter stepper<\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
Rolling Counter incremental now supports any integer value, a key to realize rapid increment, countdown, test verification and other scenarios.<\/p>\n\n\n
<\/figure><\/div>\n\n\nArrange windows with consecutive clicks<\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
Repeatedly clicking buttons cycles through window positions, allowing you to quickly set up frequently used layouts without having to manually drag and drop.<\/p>\n\n\n
<\/figure><\/div>\n\n\nDiagnostic services added<\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
Service 0x38 is designed for file transfer tasks, supporting file addition, replacement, and retrieval. It completes authentication and file operations prior to flashing or secure access, establishing a channel for subsequent secure communication and trusted data exchange.<\/p>\n\n\n
<\/figure><\/div>\n\n\nSample Project Updates<\/strong><\/strong><\/strong><\/strong><\/h2>\n\n\n\n
\n\n\n\n
Built-in example [Timer_Group] demonstrates 5 timers working together, with source code and comments.<\/p>\n\n\n
<\/figure><\/div>\n\n\n
Official example [Signal_Tester] demonstrates automatic signal boundary, step, and timing testing, including test report export.<\/p>\n\n\n
<\/figure><\/div>\n\n\n
The official example [TAC-Event] demonstrates API usage examples, message and signal reading and writing, system variable reading and writing, using TAC scripts in flowcharts and TAC event handling.<\/p>\n\n\n
<\/figure><\/div>\n\n\n\n
Welcome to download and experience the latest version of TSMaster 2025!<\/strong><\/h3>\n<\/blockquote>\n\n\n\n
TSMaster Technical Exchange Group<\/strong><\/h2>\n\n\n\n
<\/p>\n<\/div>\n\n\n\nTip:<\/strong>
1. Software download:
Click on the software download link below to download and install directly, beta version is recommended:
2. Software upgrades:
You can check for upgrades to the latest version within the software, provided that your computer has an Internet connection.
Note: TOSUN Technical Support Email:support@tosunai.cn<\/a>We welcome inquiries! (Company and contact information must be indicated)<\/strong><\/pre>\n\n\n\n