Now that I have a way of controlling a vibrator, I have tried a lot of them, including the suggestions in the link above and the comments in that link. But it did not feel like the really annoying and frustrating pattern I was hoping to find.
IMHO such a pattern should avoid that you get numb from too much vibration, but it should also vibrate and stimulate as much as possible. And finally it should never be the same for so long that you can get used to it.
So I tried experimenting, and came up with the following rather simple approach: On the basis there is a simple sine wave (A) with a one second period. This sine wave you amplitude-modulate with a sine wave having a period 12 times as long as the original wave. The result is that you have a wave (B) alternating between a very pulsing and low but constant vibration. The resulting wave is still too easy to get used to, so I frequency-modulated the whole thing with another sine wave with a period 500 times as long as the original wave, causing all of the above to slowly alternate from slow to fast. Now I only had to bias the vibrator intensity so that the intensity of vibration of wave (B) when almost constant is very low.
The result is the following Arduino sketch:
Code: Select all
#define pwmPin 11
void setup()
{
analogWrite(pwmPin, 0);
}
void loop()
{
long t = millis();
float tt = 2.0 * M_PI * t / 1000.0;
float fm = sin(tt/500.0);
float ttt = tt + 400*fm;
float v = sin(ttt);
float am = sin(ttt/12.0);
v = v * ((am + 1.0) / 2);
int vv = round(127.0 * v + 50);
if (vv < 30)
vv = 0;
analogWrite(pwmPin, vv);
}