Giter Site home page Giter Site logo

tinyreflowcontroller's People

Contributors

rocketscream avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tinyreflowcontroller's Issues

Suggestion: add 'bake parts'

Provide an option to BAKE parts. When working with SMD parts many need to be kept at a specific moisture level and if it ever goes over you have to bake the parts for a long time to make them 'safe' to reflow again.

I have already modified mine to provide this option but my code isn't very clean so I will not submit it.

I used this link for basic part handling, storage, and baking times.

https://armprojects.wordpress.com/2018/02/18/moisture-sensitivity-of-smd-components-and-pcbs/

A referencing issue?

Hi, I just finished my oven build and ran a few tests. I decided to change some of the PID settings on the device, but when I tried to upload the code the screen would not turn on.
Very long story short, I hacked my way into finding that the OLED hangs on the line timerSoak = millis() + soakMicroPeriod; inside both the case REFLOW_STATE_PREHEAT and the case REFLOW_STATE_SOAK.
I decided to replace the soakMicroPeriod variable with the hard 9000 value for leadfree (what I am using currently) and the screen now turns on, although I haven't tested it in the oven yet.
I don't think the millis is hanging the system like other posts are saying, but there might be some referencing issue going on.
In addition the oled now has an area which is constantly pixiliating at the bottom right corner of the screen.

please help!

Hi, i am trying to reproduce the controller V2 on breadboard with an arduino pro mini @3v,8mhz and the other components(128x64oled,buttons, max31856 etc..) , code is uploaded without problems but oled not working until i reduce screen height to 32 and temperature reading say "nan" all the time.
The funny thing is, without changing anything in the wiring, if i try to load the test firmware for the max31856 and for the ssd1306 from the libraries examples sketch..both work without problems.
The only way to get the oled working on 128x64 is to delete everything in the void loop under
// If switch 1 is pressed
if (switchStatus == SWITCH_1)
{
the temperature reading still say nan..i really do not understand why..

millis() function hangs oled

Hello,
I've noticed the IF statement (if millis() > buzzerPeriod) in case REFLOW_STATE_COMPLETE hangs the OLED. Even after pressing RESET button or re uploading the code, the OLED remains in the previous state(NO ADAFRUIT LOGO appears). Is it okay if I use delay function instead of millis to turn ON the buzzer?

[Suggestion]

-Hints-

  • In the setup, set filter to MAX31856_NOISE_FILTER_50HZ or ..._60HZ you newer use the filter?
  • Updating display every 100ms, why? It is real time heavy...
  • Reading sensor every 1000ms? Must be more often for to get PID more accurate
  • Code clean up, and use some function and not so many Global vars:-(

  • Option to select more profiles 1..10
  • Option to select the 50/60HZ filter.
  • Option to set some PID values.

reflowOvenPID.Compute(); issue

Hi, i'm trying to running this code from Rocketscream tiny reflow V2, but when the Compute() call is in the loop, simply the board do not boot up, the oled stay black and nothing works, if i temporarly remove the compute() using // the board is booting and oled works. ANy idea?
p.s. i use the original board from rocketscream, the 328p have promini3v3 8mhz bootloader on it.



// PID computation and SSR control
if (reflowStatus == REFLOW_STATUS_ON)
{
now = millis();

reflowOvenPID.Compute();                                                            THIS IS THE FUNCTION CALL !!!

if ((now - windowStartTime) > windowSize)
{
  // Time to shift the Relay Window
  windowStartTime += windowSize;
}
if (output > (now - windowStartTime)) digitalWrite(ssrPin, HIGH);
else digitalWrite(ssrPin, LOW);

}
// Reflow oven process is off, ensure oven is off
else
{
digitalWrite(ssrPin, LOW);
}

#ifdef should be #if

I believe I found a small mistake...

Line 298 is:
#ifdef VERSION == 2

Should be:
#if VERSION == 2

Require nightly build Kicad to open.

I'm on Linux Mint, and when trying to open the schematic file in kicad it says my version is to old! I have the "newest" stable, which leads me to believe this was made in a nightly (which gave me issues when I tried nightlies a year ago).

Any chance we could get Gerbers, or even an oshpark shared project?

Crashes with updated libraries (Clarify required library versions in docs)

I just spent hours trying to compile the V2 code in 2021 (Arduino IDE 1.8.9). Much has changed since 2019, and compiling with current library versions will result in a crashed Arduino (no display at startup, etc). Most open issues seem to be traceable to this.
My solution was to look back through the releases of all required libraries to find the ones that were contemporary in March 2019 when the initial commit was made. I had success with the versions below. (Others might work too, but I got tired of trying.)

  • Arduino PID Library: v1.1.1
  • Adafruit MAX31856 Library: v1.0.3
  • Adafruit SSD1306 Library: v1.2.9
  • Adafruit GFX Library: v1.4.8

NOTE: The Arduino IDE library manager doesn't seem to roll back to previous versions gracefully. It's best to delete the folders for any existing versions before using the library manager to download the old versions.

Maybe lib version requirements could be added to the README or the code comments?

Just THANK YOU!

I have bought the small (100x100mm) hot plate heater, removed the original controller (it was only capable to set the desired temperature and it kept it there) and used your code with ESP32 to do the job - almost no changes - only LCD out as I tested it without any screen.
My first impression is: AMAZING!
I will also put ILI9341 display with some more buttons or so (or rotary encoder) or even the touch version of ILIILI9341 - the graphic library will take some time but ok.

But what I am most amazed with: your PID settings did the job almost without tweaking. My first PCB done and dusted.

So: THANK YOU again!

Screenshot 2022-04-27 at 22 24 04

Screenshot 2022-04-27 at 21 33 24

INO sketch doesn't work on ATMEGA328P version

I thought I bricked my unit, but luckily I have downloaded with PICKIT4 to a hex file before doing anything. My board is described as:
2v00 12-2018 , E488074 , JDB-D , 94V-0

In arduino IDE 1.8.13 it stared to compile, on the newest it didn't. Then I loaded sketch file from this GIT and only thing it does is initial beep, nothing on LCD.

Controller gets stuck at preheat stage

My controller worked once but now it's starting the preheat stage according to the screen, the temp gets up to ~148c, it starts turning the elements on and off to hold that temperature and then does nothing else. The graph shows it holding that temperature for a few minutes and it never jumps into the soak stage.

I can adjust the preheat min value so that it goes into soak at 148c instead but I think there should be some sort of timer to abort the whole process if a stage takes too long.

cool stage problem

After the "REFLOW_STATE_COOL", it continues to work, keeping the "TEMPERATURE_COOL_MIN" for ever ( 100C for example), instead to continue to "REFLOW_STATUS_OFF". I don't know why. Sometimes I forget to push stop button and it is very annoying. Also the fan part in the code is missing and not working.

It wold be great if there was a timer for preheat stage also, as it is for soak stage. With higher power ovens it heats too fast...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.