Drawing by Hand (Rectangular Grid)
The video that I learned the method from can be found here. Below are some figures showing the basic procedure.


The starting layout of the knot, consisting of a lattice of dots, a border, and an internal boundary, or “gate”. Note that the outer border is essentially an enclosure of “gates”.


The path that the strand or strands will take is dictated by the gates. The strand typically ‘travels’ diagonally between the dots. Gates cause the strand to deflect and briefly travel horizontally or vertically.


In this case, the knot will be composed of a single strand. The full path is shown here.






The negative space can be completely filled in, hiding the dot lattice and gates.
Different styles can be used to give different looks.
FreeForm
One way of drawing freeform Celtic knots and maintaining smoothness of the strand is as follows:


We start with a mesh of quads.


We find the center of each edge (green points) and connect center points of opposite sides (dashed lines).


We mark the intersections of these lines, yielding ‘centers’ (purple points) of the quads.


We connect the four vertices of each quad to the new center node of each quad.


We generate a spline of Bezier curves, where each Bezier curve spans two of the original quads, going from the center point of one quad to another (purple), with the center point (green) of the incident edge acting as an intermediate control point.


Adjoining the Bezier curves yields a smooth spline by construction and placement of the control points.