Skip to content

dfunni/TC4nano

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 

Repository files navigation

TC4nano

The TC4nano is an Arduino Nano shield for termperature logging (up to 4 thermocouples) and PID control of a resistive heating element for use in home coffee roasting (based off of the TC4 Arduino Uno shield design copyright 2014 MLG Properties LLC and bvwelch.com CC-BY). The TC4nano includes one onboard SSR for heater control via slow PWM. Forced air is recommended for cooling the SSR in configurations drawing 10A or above.

CONTENTS:

  1. Configuring Artiasn
  2. Updating TC4 Firmware
  3. Troubleshooting

The TC4nano is pre-configured for the Artisan roaster-scope software using the aArtisanQ_PID_6_2_3 by Jim Gallt and Brad Collins provided under BSD Liscense.

TC4 firmware can be found at: https://github.com/greencardigan/TC4-shield

Artisan can be found at: https://github.com/artisan-roaster-scope

Artisan installation instructions: https://github.com/artisan-roaster-scope/artisan/blob/master/wiki/Installation.md

1. CONFIGURING ARTISAN

General Config

The configuration below assumes use with Poppery I roaster and no fan control through Artisan.

For Poppery II or other DC fan systems, fan control can be added by connecting a DC motor driver to the IO3 jumper. For AC fan control, zero cross detection circuitry and an additional random fire SSR are required as well as reflashing the Arduino firmware with different configuration settings. For Artisan configuration with fan control see the setup described here: https://www.youtube.com/watch?v=0-Co-pXF2NM.

Config > Device...

ET/BT tab:

  • select TC4 radio button
  • ET Channel - 2
  • BT Channel - 1
  • AT Channel - None
  • PID Firmware - unchecked
  • Control - checked
  • Curves: ET - unchecked BT - checked
  • LCDs: ET - unchecked BT - checked Swap - unchecked

Extra Devices tab:

  • Add two devices

Device 1:

  • Device - ArduinoTC4 56
  • Label1 - "Heater"

Device 2:

  • Device - ArduinoTC4 78
  • Label1 - "SV"
  • Label2 - "AT"

Note: after clicking "OK" in the Device menu the Port menu will automatically pop up. Prior to each roast session ensure the port reflects the correct Arduino.

Config > Sampling Interval

  • set to "1.0" seconds

Config > Curves... > RoR tab

  • check the boxes for curves and LCDs you want to view and check projection

Config > Events

Config tab:

  • Annotations - check
  • 1 - uncheck - Fan
  • 2 - check - Heater
  • 3 - uncheck - Damper
  • 4 - uncheck - Burner
  • Auto CHARGE/Auto Drop/Mark MET/Show Time Guide - uncheck

Buttons tab:

  • add one button
  • Label - "Heater Off"
  • Type - Heater
  • Value - 0
  • Action - Serial Command
  • Documentation - "OT1;0"
  • Visibility - ON

Sliders tab:

  • In the heater row set the following to:
  • Heater - check
  • Action - Serial Command
  • Command - "OT1;{}"
  • Offset - 0.0
  • Factor - 1
  • Min - 0
  • Max - 100
  • Fan - uncheck
  • Damper - uncheck
  • Burner - uncheck

Config > Temperature

  • Select Fahrenheit or Celcius mode

PID Config

Click the blue CONTROL button (ensure Control is checked under Config > Device)

Recommended starting PID parameters:

kp ki kd
Poppery I 2.2 0.08 20
Poppery II 1.3 0.06 4.5
  • Source - BT

Target:

  • Positive - Heater
  • Negative - None

Set Value:

  • Mode - Background (ensure background profile is loaded prior to roasting)

  • Lookahead - 10s (adjust as necessary)

  • Start PID on CHARGE - check

Creating a Profile

Tools > Designer

Adjust the circles to the desired locations, add or delete points as necessary.

When profile is complete go to Tools > Designer (uncheck) and proile will be loaded onto the graph.

Hit the RESET button, then save the profile to your Profiles directory.

Loading a Background Profile

Roast > Background

  • Show - check
  • BT - check
  • All others - uncheck
  • Align - CHARGE
  • Load - select a saved profile from your profile directory

2. UPDATING TC4 FIRMWARE

The latest version of the TC4 firmware can be found on github. Version 6.6 zip file can be found at: https://github.com/greencardigan/TC4-shield/tree/master/applications/Artisan/aArtisan_PID/tags/REL_aArtisanQ_PID_6_6

Once downloaded open aArtisanQ_PID.ino in the Arduino IDE (https://www.arduino.cc). This will open all of the other files from the aArtisanQ_PID folder as seperate tabs in the IDE.

Select the user.h tab and to choose the options you wish to enable by uncommenting/commenting the options in this file.

  • Under "Base configuration" ensure CONFIG_PWM is selected as the TC4nano does not include a ZCD.

  • Under "Tempreature Unit" comment out CELCIUS if Fahrenhiet is desired.

When all appropriate changes are made, connect the Arduino to the computer and select the following settings from the menu bar:

  • Tools > Board > Arduino Nano
  • Tools > Processor > ATMega328P (Old Bootloader)
  • Tools > Port > /dev/cu.YOUR_ARDUINO

Finally, flash the Adduino Nano by clicking the upload (forward arrow) button in the Arduino IDE. A display of the progress will appear in the command prompt at the bottom of the IDE and "Done Uploading" will display when it completes sucessfully.

3. TROUBLESHOOTING:

Generic Arduino Not Recognized (macOS)

Copy and paste these commands into terminal one by one (to open terminal press command+space and type 'terminal', then hit enter):

First check to see if homebrew is installed

brew --version

If it is not installed (ie you get an output that is something other than the version of homebrew) run the following commmand

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Then run the following two commands to install the CH34x drivers needed to use the generic arduino nano

brew tap mengbo/ch340g-ch34g-ch34x-mac-os-x-driver https://github.com/mengbo/ch340g-ch34g-ch34x-mac-os-x-driver
brew cask install wch-ch34x-usb-serial-driver

Now restart your computer, and see if Artisan recognizes the arduino. Alternately, you can enter the following in the terminal and look for an output that is not an error.

ls /dev/cu.usb* /dev/cu.wch*

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published