Weaving as a logic puzzle
Some months ago I saw this Jaster Mereel (Star Wars) (he's boba fett's granddad) fanart by @bojangos. It includes a cool textile texture (are those words related JEREMY DON'T GO ETYMOLOGYHUNTING NOW) which the artist kindly made available by itself...
... and I was like, that's a cool pattern! Someone should make that! ... I can make that!
Next step, how.
This is long and tries to teach a lot of maths and textiles from a starting point of "what does a loom even do", thus popping it below a cut. Please please do ask me if there are terms you don't understand or points which don't make sense and I will expain in even more detail, which may or may not help you!
Weaving on a shaft loom (like mine) is a mathematical conversation between warp and weft, within the physical constraints of the mechanisms of the loom. Each warp thread goes through a metal heddle on a shaft, all heddles moving together. This loom has eight shafts so there are eight groups that a warp thread can belong to.
Starting from a two-colour pixel art design (one colour when the the warp crosses over the weft, the other when the weft is on top of the warp) this means I must design using at most eight different columns of pixels. I can repeat them and rearrange them however I please but I can never have a ninth column. For this cloth, I had to go from two sets of curved lines between each lozenge in the original art to just one set of lines, it was not mathematically possible for me to weave the original.
The bits tagged in green are the same design, but one is a little sketch numbered shaft by shaft (so I didn't go over the 8 column limit) and the other has been made into a draft. The zigzag X's at the top represent the warp threads on their eight different shafts: one on shaft 1, one on shaft 2, shaft 3, shaft 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, and begin again.
Where it gets complicated is telling the warp threads what to do so that the weft creates the correct rows of the design. In the draft, dark squares represent warp threads on top, AKA the shaft with that warp thread is raised. (This is backwards from how I set it up on the loom with a white warp and dark weft. Sorry about that.)
For the long bit of the lozenges in the middle, we want to raise shafts 1 and 2 to create the central rectangle, lower shafts 3 and 4 for the blank space around it, raise shaft 5, lower 6, raise 7, lower 8. This is one shed (combination of up/down shafts so the weft can pass through the vertical space in between them). Repeat that shed 10 times for a nice long rectangle. Then as you step through the diagonal bits after the rectangle, each time a different combination of shafts is raised and lowered, creating each different shed. Then you reach the rectangle of the next lozenge and this is like a reflection of the previous lozenge: raise 8 and 7, lower 6 and 5, raise 4, lower 3, raise 2, lower 1, repeat 10 times.
Good so far. This design has 12 different rows, so you need to weave 12 different sheds: 1257 (raised 10 times), 57, 457, 347, 2367, 1256, 1458, 3478, 2367 again but including it for clarity, 256, 245, 24, 2478 (10 times). You can step through this on the draft if you want to.
Oops, I lied, you need 14 sheds because this cloth uses tabby - a thin thread matching the warp which goes over-under-over-under all the way along (so raising 1357 or 2468), in between every pattern thread of the contrast colour. That's because the very long continuous columns (up to 20 pixels!) would be incredibly unstable if those were just warp threads floating over or under the fabric for 20 consecutive rows. Tabby binds them down on every other row so the warp floats are at most 3 threads long.
I've marked some of the tabby weft threads in red, but they're often pretty hard to see - the pattern weft is thicker and tends to cover them up, on purpose. Structurally, this fabric is now like you have a "plain weave" white fabric with a blue "supplemental weft" embroidering it row by row.
Anyway! We need to raise the shafts in 14 different combinations. On some looms this is fine, you control each shaft individually and can choose any of the 254 possible combinations (there are 2^8=256 ways to raise subsets of 8 shafts, but "all shafts raised" and "all shafts lowered" are invalid because these don't create a shed as a middle vertical space between raised/lowered threads). You can do very complicated things, but also it's slow because you have to move each shaft by hand each time. Therefore...
... floor looms like this one use treadles to raise whole groups of shafts at once. Each treadle can be tied to any number of shafts and each shaft can be tied to any number of treadles. Great for simple patterns where you might want to raise shafts 1234 then 2345 then 3456 etc, but you are limited by the number of treadles available, here 10. So if I start tying treadles up to shafts 1257, 57, 457, 347, 2367, etc (one treadle per shed as you can do in most designs) I will run out before I can weave the 14 sheds I need.
Instead we could tie every treadle to just one shaft and press several treadles at once, right? Unfortunately not - this time we aren't limited by the loom's biology, we are limited by mine, as I don't have four feet to press four different treadles at once to raise the correct shafts. Thus we must find an in-between state where each treadle is tied to just a few shafts and I press at most two (mayyyybe three, if two can be placed next to each other, but this is uncomfortable) treadles per shed.
Here followed a lot of sketches and diagrams and planning. There was no guarantee when I started that this would be mathematically possible; I got lucky. There are probably multiple solutions, feel free to find your own or prove that no other solutions exist.
This is a blurry closeup of the tie-up and treadling from the draft above. The tie-up is in the top right: each X represents "this shaft (1 to 8) is raised by this treadle (1 to 10)". Treadle 1 raises shafts 2 and 7, treadle 2 raises shafts 4 and 5, treadle 3 raises shaft 7 alone, etc.. The treadling in the columns beneath the tie-up shows you what to do for each row: treadles 7+9 and 8+10 weave each tabby shed (must do one of these after each pattern shed), then the pattern starts with treadles 1+7 raising shafts 2478 and on it goes.
Great! We are nearly nearly there! The only remaining problem is to make the treadling more comfortable to weave - as written, if the treadles go 1234567890 from left to right then I would spend ages twisted so I face right to reach all those 7890 treadles for so many sheds (not just the diagonal bits of the pattern but also every tabby shed!). I worked out a better arrangement by physically cutting out the treadling+tieup in columns and rearranging them on the floor, and after some annotations this was the final version, approximately:
Treadles 5+7 and 5+0 are in big to represent that those sheds are repeated 10 times each. I honestly don't remember some of the other annotations along the way and if I made further changes after this version, if you need a clean version of this I would recommend making it yourself so that you get your head round it. There are reasons for me to label the treadles 1357908642 in that order and to prioritise keeping the tabby treadles together in neighbouring pairs but those are more on the weaving side of things, less on the maths side of things.
And then after all this, we are ready to weave. One tiny little detail... the pattern actually appears on the bottom of the fabric, because of the aforementioned "oops I drafted in opposite colours to my yarn". So here's the view through the warp to other side of the fabric.
This whole thing is a test version, if I like the finished fabric then I will make it again in custom colours for a friend. Only another metre or so to go...













