Skip to content

About

Fork of t937-serial with WebSerial profile editor updates

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

36 Commits

Folders and files

Repository files navigation

T-937/M Serial Reverse Engineering

This repo contains tools, notes and data from reverse engineering the Puhui T-937/M Reflow Oven's Serial protocol.

  • web: a WebSerial based control panel for the oven
  • simulator: Python implementation of the oven Serial protocol (for testing)
  • captures: Wireshark captures of Serial communications
  • dissectors: Wireshark Lua plugins for dissecting messages
    • ch340.lua: dissects USB captures for CH340/341-based USB-to-Serial converters
    • pl2303.lua: dissects USB captures for PL2303-based USB-to-Serial converters
    • t937.lua: dissects the actual Serial messages

The directories contain READMEs with more information for each component. Some more information and commentary on the process can be found on my blog.

Fork

This repository is a fork of the original t937-serial repo at https://git.s-ol.nu/t937-serial.git. Code in this fork has been modified by Codex GPT-5.5 xhigh.

Brief list of modifications:

  • implemented read from and write to the oven
  • added progress and error messages
  • set points can be added and modified in a table
  • graphs support Bezier style control
  • backup all profiles into a single json

Python environment

This repo uses uv for Python dependency management. The Python dependencies are declared in pyproject.toml:

  • websockets for the simulator's WebSocket mode
  • pyserial for the simulator's serial loopback mode

Create or update the local virtual environment from the repo root:

uv sync

Run Python commands inside the environment without activating it:

uv run python simulator/__init__.py

Or activate the environment in your shell:

source .venv/bin/activate
python simulator/__init__.py

The web control panel itself is static browser code. The python -m http.server command in web/README.md is only a local file server; it does not provide the serial connection.

Disclaimer and License

The purpose of this project and the resulting software is to make the oven compatible with non-Windows systems, which are not supported by the manufacturer. To this end, the communication protocol has been reverse-engineered by observing it in action only, none of the original software has been decompiled. As such, all information and software in this repository is to be used and distributed only for the purpose of interoperability in concordance with EU law, in particular EU directive 2016/943.

About

Fork of t937-serial with WebSerial profile editor updates

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages