1- Tube Furnace used at the Waterloo Hacker Fab
1+ # phoenix
22
3- # Installation
3+ Phoenix is a tube furnace used for thermal oxidation and annealing processes.
44
5- 1 . Install Arduino libraries
6- ```
7- arduino-cli core install arduino:avr
8- arduino-cli lib update-index
9- arduino-cli lib install "Adafruit MAX31856 Library"
10- arduino-cli lib install "LiquidCrystal I2C"
11- arduino-cli lib install "RunningAverage"
12- ```
5+ It uses PID control to follow custom temperature profiles and works on both MicroPython on the ESP32 and a simulated Python desktop environment.
136
14- 2 . Build
15- ```
16- arduino-cli compile \
17- --fqbn arduino:avr:uno \
18- --libraries TubeFurnace/libraries \
19- TubeFurnace
20- ```
7+ <table >
8+ <tr >
9+ <td>
10+ <img src="https://github.com/user-attachments/assets/3d76382d-c257-4131-b17b-15bba04e13a1" width="300"><br>
11+ <sub>Fig 1. Tube furnace in action</sub>
12+ </td>
13+ <td>
14+ <img src="https://github.com/user-attachments/assets/71b93478-83d2-484c-b73c-5136b2d3e025" width="300"><br>
15+ <sub>Fig 2. Simulated PID following a heat profile</sub>
16+ </td>
17+ <td>
18+ <img src="https://github.com/user-attachments/assets/b7655219-a86a-4da7-9037-93fa70059ff8" width="300"><br>
19+ <sub>Fig 3. Controlled ramp rates</sub>
20+ </td>
21+ </tr >
22+ </table >
2123
2224# Python setup
23- ```
25+ ``` bash
2426python3 -m venv .venv
2527source .venv/bin/activate
2628pip install -r requirements.txt
@@ -29,12 +31,12 @@ pip install -r requirements.txt
2931# Micropython setup
3032
3133Install micropython
32- ```
34+ ``` bash
3335https://github.com/micropython/micropython/tree/master/ports/unix#readme
3436```
3537
3638Install ` typing `
37- ```
39+ ``` bash
3840micropython -m mip install github:josverl/micropython-stubs/mip/typing.mpy
3941```
4042
@@ -46,3 +48,22 @@ git clone https://github.com/dhrosa/udataclasses.git tmp
4648mv tmp/src/udataclasses .
4749rm -rf tmp
4850```
51+
52+ # Arduino setup (legacy)
53+
54+ 1 . Install Arduino libraries
55+ ```
56+ arduino-cli core install arduino:avr
57+ arduino-cli lib update-index
58+ arduino-cli lib install "Adafruit MAX31856 Library"
59+ arduino-cli lib install "LiquidCrystal I2C"
60+ arduino-cli lib install "RunningAverage"
61+ ```
62+
63+ 2 . Build
64+ ```
65+ arduino-cli compile \
66+ --fqbn arduino:avr:uno \
67+ --libraries TubeFurnace/libraries \
68+ TubeFurnace
69+ ```
0 commit comments