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

Clunking sound from the solenoids #15

Open
dl1com opened this issue Oct 28, 2018 · 3 comments · May be fixed by #203
Open

Clunking sound from the solenoids #15

dl1com opened this issue Oct 28, 2018 · 3 comments · May be fixed by #203
Assignees
Milestone

Comments

@dl1com
Copy link
Contributor

dl1com commented Oct 28, 2018

copied from AllYarnsAreBeautiful/ayab-desktop#256

When you cancel or finish and restart a pattern, there's often a clunking sound from the solenoids as it resets. The original Brother design never did that. I don't expect that it's doing any harm, but users don't expect it and wonder if there's something wrong.

@dl1com dl1com added this to the v0.95 milestone Oct 28, 2018
@dl1com
Copy link
Contributor Author

dl1com commented Oct 28, 2018

Implement a "cancelKnitting" message to relax the solenoids in case of a cancelled knitting.

@dl1com dl1com modified the milestones: v0.95, next Feb 10, 2020
@t0mpr1c3 t0mpr1c3 self-assigned this Jun 3, 2023
@t0mpr1c3 t0mpr1c3 modified the milestones: next, v1.0 Jun 3, 2023
@t0mpr1c3
Copy link
Contributor

I'm not quite clear on what causes the clunk and how to prevent it.

@jonathanperret
Copy link
Contributor

After some investigation, it appears the clunking sound is caused by all solenoids being turned off at once by AYAB as part of its initialization sequence. This causes each solenoid's armature to jump up as it is pushed by the comb spring underneath.

So, first off this is effectively harmless. Individual solenoids get turned off all the time as part of normal operation, whether using Brother electronics or AYAB. Turning all of them off at the same time shouldn't be more dangerous than turning them off one by one.

Second, this isn't heard with Brother electronics because they default to keeping solenoids on when not in active use, i.e. even with no pattern loaded, or when a carriage goes beyond the end of the bed and solenoids don't need to drive any needle. This can be verified by monitoring the voltage level on each solenoid while using Brother electronics.

Note that just turning the solenoids on then off again isn't sufficient to reproduce the clanking sound. The solenoids need to be turned on, then the belt must have moved by at least 16 needles so that all the armatures have been "caught" by the solenoids (they can't pull armatures down, they can only hold them down so the rotary cam's movement is essential to bring the armature in proximity with the elecromagnet so that it can be caught), then when you turn the solenoids off, the armatures will rapidly jump back up causing the clanking sound.

jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-part
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code any way.

Fixes AllYarnsAreBeautiful#15.
jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-party
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code any way.

Fixes AllYarnsAreBeautiful#15.
jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-party
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code anyway.

Fixes AllYarnsAreBeautiful#15.
jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-party
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code anyway.

Fixes AllYarnsAreBeautiful#15.
jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-party
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code anyway.

Fixes AllYarnsAreBeautiful#15.
@jonathanperret jonathanperret linked a pull request Sep 30, 2024 that will close this issue
jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-party
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code anyway.

Fixes AllYarnsAreBeautiful#15.
jonathanperret added a commit to jonathanperret/ayab-firmware that referenced this issue Sep 30, 2024
The "clunking" sound that is occasionnally heard when using AYAB
is caused by all solenoid armatures being released simultaneously
when all solenoids are turned off.

This does not happen with Brother electronics because they default
to keeping solenoids on.

This commit changes AYAB's behavior to match that behavior of the
Brother electronics. Note that this required abandoning the third-party
library used to drive the I/O expanders (Adafruit_MCP23008) since
part of its non-skippable initialization code was forcing all outputs
to off. It turns out the amount of code needed to directly drive the
MCP23008 expanders using the Arduino Wire library is only a dozen
lines of code anyway.

Fixes AllYarnsAreBeautiful#15.
@jonathanperret jonathanperret modified the milestones: 1.0.0, next Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants