ht9045-atc-interface

Decodes and troubleshoots HT9045 Handler ATC TCP protocol commands and site-channel mappings.

Updated May 28, 2026
One-click install
npx skills add https://github.com/HPI-Jimmy-Chiu/HT904_V899 --skill ht9045-atc-interface-hpi-jimmy-chiu
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: ht9045-atc-interface
Source: https://github.com/HPI-Jimmy-Chiu/HT904_V899/tree/main/.agents/skills/ht9045-atc-interface
Command: npx skills add https://github.com/HPI-Jimmy-Chiu/HT904_V899 --skill ht9045-atc-interface-hpi-jimmy-chiu

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Debugging communication between the HT9045 test handler and ATC temperature controllers requires decoding raw TCP command logs (@1001-@1137), understanding temperature/offset scaling, and tracing site-to-channel mapping arrays scattered across C++ source files. ## Core Features & Use Cases - Command Reference: Full table of 137 ATC protocol commands (1001-1137) covering temperature set/read, offsets, recipes, self-test, FFC/PFC, TJ control, MTK ASIF, and TSMC Hulk mode. - Site/Channel Mapping: Explains iSiteToATC, iSiteToOfs, and dATCTempOffset[] indexing across Arm1/Arm2 rows and columns, including the known V899 iSiteToOfs typo bug. - Troubleshooting Workflows: Step-by-step diagnosis for offset mismatches, ATC disconnections, and recipe download failures using communication logs and EventLog CSVs. - Use Case: When a hangup log shows @1003 offset values that do not match the UI, trace the flow from uTemp_Set.cpp through TfLotInfo::SetATCOffset() to SendCommand and verify the channel mapping. ## Quick Start Ask the assistant to decode an ATC command log line such as @1002,4,800,800,800,800,# and explain which sites and temperatures it sets.

Frequently Asked Questions about ht9045-atc-interface

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I decode an ATC @1002 SET_TEMP command from handler logs?▼

The @1002 command sets ATC run temperatures per channel in the format @1002,count,n,n,...#, where each value is scaled by 10. For example, @1002,4,800,800,800,800,# sets four channels to 80.0 degrees Celsius.

What is the ATC TCP command format for the HT9045 handler?▼

Commands use the format @<command>,<count>,<data1>,<data2>,...,# where @ starts the frame, # ends it, and commas separate fields. The command is a 4-digit code from 1001 to 1137, and temperature values are integers scaled by 10.

Why does the Arm2 temperature offset read the wrong channel on V899?▼

A known typo bug at uTemp_Set.cpp line 6440 writes iSiteToOfs[1][0][0]=24 when iATC_Use_Heat_Count==4 and iShtRow==1, causing Arm2 column 0 to read Ba2 instead of Aa2. The correct assignment is iSiteToOfs[1][0][1]=24.

How do I troubleshoot an ATC disconnection on the handler?▼

Send @1048 HANDLER_STATUS to test the connection, check the TATC_InterfaceForm::Connected flag, and verify the ATC TCP IP and port settings in config.ini or ATC.ini.

Which ATC commands handle recipe download and transfer?▼

Use @1036 to get the current recipe, @1037 to list recipes, and @1001 to change the recipe file. For file transfer between ATC and handler, use @1132 with @1134, which rely on FileTransfer.cpp.