Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

In PEmbroider_lines_1.pde example, the bobbin thread gets tangled #111

Open
nkymut opened this issue May 22, 2023 · 4 comments
Open

In PEmbroider_lines_1.pde example, the bobbin thread gets tangled #111

nkymut opened this issue May 22, 2023 · 4 comments

Comments

@nkymut
Copy link

nkymut commented May 22, 2023

First of all, thank you for creating such an amazing library that allows creative coders to explore the world of embroidery!

I'm not sure if this is the right place to ask, as I'm uncertain if it's a sewing machine setup problem or a software problem.
But when embroidering the output from Example/PEmbroider_lines1.pde, I always encounter issues where the bobbin thread gets tangled and the upper thread breaks, or worst-case scenario, the needle breaks at the exact point.
I have no issue with other examples such as Hello_PEmbroider.pde.

Here is the part where the issue occurs.

  E.strokeSpacing(2.0);
  E.setStitch(5, 15, 0.0);
  E.PARALLEL_RESAMPLING_OFFSET_FACTOR = 0.33;
  
  E.strokeCap(SQUARE); // NOTE: currently not working for PERPENDICULAR
  E.strokeMode(PEmbroiderGraphics.PERPENDICULAR); 
  
  //repeats a stitch at the end of each line drawn
  E.beginRepeatEnd(2);
  
  int lineX = 50;
  for (int i=0; i<nLines; i++) {  // Break Thread when nLines == 3
    float x0 = lineX; 
    float x1 = x0+lineLength;
    float y0 = map(i, 0, nLines-1, 50, height-50);
    E.strokeWeight(i+1); 
    E.line (x0, y0, x1, y0);
  }

Has anyone else encountered a similar situation?

Processing 4.0b1
ExportFile Format: .dst
Machine: BERNINA B590
Needle: BERNINA 130/705 H-E 75/11
upper thread:Mettle Polyester No.40
bobbin thread: SERACOR, Polyester No.120

IMG_2325
IMG_2327

Thank you in advance!

@nkymut nkymut changed the title Example/Embroider_lines_1.pde In PEmbroider_lines_1.pde example, the bobbin thread gets tangled at the same location May 22, 2023
@nkymut nkymut changed the title In PEmbroider_lines_1.pde example, the bobbin thread gets tangled at the same location In PEmbroider_lines_1.pde example, the bobbin thread gets tangled May 22, 2023
@nkymut
Copy link
Author

nkymut commented May 23, 2023

After numerous discussions and troubleshooting with BERNINA support technicians,
we have identified three main issues that are causing the problems.

Firstly, the upper thread was not properly threaded through the thread take-up lever, and the tension setting was incorrect for thinner fabric (cotton <0.1mm thickness). This led to tangling of the bobbin thread, resulting in bird-nesting behind the fabric. To address this, a lower upper-thread tension setting of 1.75 worked better than the default setting of 3.0.

Secondly, using E.strokeWeight(i) when i <= 4 caused fabric breakage due to the satin stitch width being too narrow, which led to the upper thread breaking. Here is the relevant code snippet lines 24-43 :

int nLines = 15;
int lineLength = 150;

E.strokeSpacing(2.0);
E.setStitch(5, 15, 0.0);
E.PARALLEL_RESAMPLING_OFFSET_FACTOR = 0.33;

E.strokeCap(SQUARE);
E.strokeMode(PEmbroiderGraphics.PERPENDICULAR);

E.beginRepeatEnd(2);

int lineX = 50;
for (int i = 0; i < nLines; i++) {
  float x0 = lineX;
  float x1 = x0 + lineLength;
  float y0 = map(i, 0, nLines - 1, 50, height - 50);
  E.strokeWeight(i + 1); // breaks upper thread when i+1 <= 4; 
  E.line(x0, y0, x1, y0);
}

Lastly, when the upper thread tension is too tight or too loose against the fabric, as mentioned in the first issue, using E.beginRepeatEnd(2) will also cause the upper thread to break when E.strokeMode(PEmbroiderGraphics.TANGENT); where E.strokeWeight(1+1); >=13 as it pulls too much bobbin thread in the same location without support. This issue is present in lines 47-56 of the code:

E.strokeCap(SQUARE);
lineX += lineLength + 50;
E.strokeMode(PEmbroiderGraphics.TANGENT);
for (int i = 0; i < nLines; i++) {
  float x0 = lineX;
  float x1 = x0 + lineLength;
  float y0 = map(i, 0, nLines - 1, 50, height - 50);
  E.strokeWeight(i + 1); // breaks upper thread at the end of E.line when nLines >= 13
  E.line(x0, y0, x1, y0);
}

Additionally, it is worth noting that for the lines with E.strokeMode(PEmbroiderGraphics.TANGENT) setting, better results can be achieved by rotating the pattern by 90 degrees and aligning the stroke parallel to the pressure foot.

I understand that these issues may be common knowledge for embroidery experts, but I thought its worth mentioning here for a complete beginner in digital embroidery and sewing machines like myself,

Line_setting
Line_Success
Line_back

@nkymut
Copy link
Author

nkymut commented May 23, 2023

@tatyanade
Copy link
Contributor

Hi! Where you able to resolve this? I think this is most likely a tension issue with your machine as we where able to embroider this without issue when compiling the examples; might also be a result of the type of needle or thread or fabric that you where using; there seems to be tension issues based on the tangling and amount of extra white thread on the bottom in your last picture

Interesting note about it embroidering better when rotated 90 degrees

@nkymut
Copy link
Author

nkymut commented Mar 26, 2024

Thank you for reminding me! yes sort of.

As someone who was completely new to embroidery and sewing,
there were several factors involved (which is what makes embroidery interesting),
but here are some improvements I made through trial and error:

The initial fabrics I tried, like cotton shirts and coarse linen, were either too thin or had a weave that was too rough. No matter how I adjusted the sewing machine's tension, it didn't seem to help. What did make a difference was using a thicker stabilizer.
But I am wondering if changing needle type or bobbin thread may improve the results?

From these experiences, when I try new embroidering pattern, I use non-woven fabrics like felt that are about 2mm thick.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants