D-MARK

A versatile, easy-to-use, open source ARM development board

Feb 18, 2021

Project update 2 of 4

D-MARK 101! Fun Facts and How To Build Your Own Reflow Oven

by Dr. Klui

Fun fact about D-MARK, 101 is actually the total number of board parts! Now, before we get into our first real-world application, here are some more fun facts about the board name.

Let’s start with an example to get you familiar with D-MARK, and with using its powerful built- in D-MARK Script (DMSi).

How to Run a D-MARK script

Simply save the script below in a text file named "DMS.txt" on a microSD card and push the reset button once. That’s all!

Example 1: Making Your Own Toaster SMD Reflow Oven

You can buy a cheap reflow oven for SMD soldering these days, but I believe you’ll like this option even more. Just one important note: please don’t use it for cooking your food again!

D-MARK Setup:

What we will do:

  1. heat to 120° C (248° F), soak for 180 s (turn off when >115° C (239° F) as the heat will keep rising a bit even after switching off the heater, turn on again when lower than 115° C).
  2. heat to 150° C (302° F), soak for 60 s (use 145° C / 239° F as a control set point).
  3. heat to 220° C (428° F), soak for 30 s (use 215° C / 419° F as a control set point).
  4. turn off the heater.

DM Script: you can download the script file here.

// Let's config what we are using, use tab as a separator for parameter, not space.

// we will calculate in degree F
NTC.unit	1
// we use 100 kiloohm NTC having B value 3950
NTC.constant_r0	100000
//set the B value to 3950
NTC.constant_b	3950

//set MOSFET output channel 1 to digital output mode
mosfet_1.mode	digital

// Ready to start our smart toaster reflow controller	

//set a label for the first step heating return loop point as "s1"
:s1
//if the NTC temperature is greater than 239 F, jump to routine "s1_soak"
if.ntc.gt	239,s1_soak
//enable the MOSFET output
mosfet_1.on
//as long as the temperature is not reaching our tartget of 240 F, repeat the loop s1
goto	s1

//s1_soak staring point
s1_soak:

//start the timer from 0 s
set.t0	0

//set "s1_soaking" as a starting loop point for checking time and temperature condition.
:s1_soaking
//if the soaking time reaches 180 seconds, jump to do the step 2 (ramp to 294 F).
if.t0.gt	179,s2
//If the NTC temperature reaches 240 F, close the step 1 by jumping to "s1_done"
if.ntc.gt	239,s1_done
//otherwise output will still be on
mosfet_1.on
//loop s1_done as long as the condition is valid
goto	s1_soaking

//the end point of step 1 as the soaking time reaches 180 seconds
:s1_done
//turn off the output
mosfet_1.digital	0
//loop over the step 1 soaking routine 
goto	s1_soaking

//repeat the same procedure for steps 2 and 3 using different temperatures and soak time
:s2
if.ntc.gt	293,s2_soak
mosfet_1.on
goto	s2

s2_soak:
set.t0	0

:s2_soaking

if.t0.gt	59,s3
if.ntc.gt	293,s2_done
mosfet_1.digital	1
goto	s2_soaking

:s2_done
mosfet_1.digital	0
goto	s2_soaking

:s3
if.ntc.gt	419,s3_soak
mosfet_1.digital	1
goto	s3
s3_soak:
set.t0	0

:s3_soaking
if.t0.gt	29,turn_off
if.ntc.gt	419,s3_done
mosfet_1.digital	1
goto	s3_soaking

:s3_done			
mosfet_1.digital	0
goto	s3_soaking

:turn_off
//when all the steps done, turn off the output
mosfet_1.digital	0
goto	turn_off

We Used This Tutorial to Make D-MARK..With a D-MARK!

Now it is your turn to show your reflow results!

Still more exciting examples to come, make sure you back the campaign to get your hands on a board soon!

Dr. Klui


Sign up to receive future updates for D-MARK.

Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects