## UI for IR6500 BGA Rework Station
## 

Dependencies:

```
PyQT5
pyqtgraph
pyserial
```

To run:

```
cd pc410
python3 src/main/python/main.py
```


Each row in the table below is one program.
Click on row to show graph representing temperature curve. 
Drag in graph to edit parameters, table will update automatically.

* r-columns are rate in degrees C/second.
* l-columns are level ie target temperature for each step
* t-columns are dwell time ie how long to stay at the target temperature before continuing.

Each program has 8 steps.
If rate is 0.0 this means STEP which ignores the rate slope and goes straight to dwell time.
If rate is -0.01 this means END which makes the program end at that step.
The PC410 controller can also chain programs together but that is not implemented here yet.

### Buttons
Save will save the current settings to .pc410Settings in the HOME-directory. This file will always be loaded when the program starts.

Add row will add an empty row at the end or after the currently selected row, if any.

Run will start running the program and then also plot the current temperature over time as it runs. Start button on the IR6500 will have the same effect.

Stop will stop the running program. Stop button on the IR6500 will have the same effect.

Read program reads the parameters of the current program into the selected line on the table, or to a new line if none was selected.

Write program will write the parameters from the selected line to the IR6500.

The IR6500 has 9 program slots but since I haven't been able to figure out how to select or know which slot is selected over the serial interface all read/write operations work on the currently selected slot.

The clock shows time passed since run started. 

Bottom right shows all the state parameters from the PC410

### Bottom heater
The bottom heater on the IR6500 is controller by another PID and can not be controlled from here

### Documentation
The docs folder contains the PDF manual for the IR6500 itself, for the PC410 module as well as for a AL808-module which is documentating the communication protocol also used by PC410.