Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Bad Munki
Nov 4, 2008

We're all mad here.


Hadlock posted:

http://fr.aliexpress.com/item/WeMos-D1-WiFi-uno-based-ESP8266-for-arduino-Compatible/32455782552.html

Arduino UNO form factor ESP8266, with 5v barrel adapter and micro USB port. Even the analog pin is in the right location. $10 shipped. Combine this with arduino ide support, it's an interesting idea. The pin logic level, I dunno, probably just 3.3v? I wish 5v legacy crap would just die but it's so ubiquitous so I guess the 328 is really good for that still.

I still haven't successfully gotten any arduino code loaded on my esp8266(s). I got it hooked up and could issue AT commands, that was easy enough, and the esp loader ACTS like it's working fine, but from what I can tell, the software isn't actually running. Should probably get back on that, was hoping to work on a project with those this week.

Adbot
ADBOT LOVES YOU

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

mod sassinator posted:

I would start adding some print statement to debug where the code is going and what's happening when you double click the button. Ultimately you just want to see how many button presses occur in a small sliding window of time and look for when that reaches 2.

I was about to go through the code and do this, when I had an idea. Changed out my button for a different one, and now it's working properly. I gotta remember to test everything sometimes.

Collateral Damage
Jun 13, 2009

I picked up a Pro Micro at my local electronics store. I'm pretty sure it's a chinese clone and not actually a Sparkfun Pro Micro, but the layout and chips are identical.

I'm having some issues getting it to accept my code though. It identifies as an Arduino Leonardo when I plug it in, which according to the Sparkfun docs is normal, and it works with their drivers. But when I try to program it (using the sparkfun hardware definitions) it compiles the code, resets the board, then the Arduino IDE gets stuck on "Uploading...".

Is there any dark magics you have to perform to get it to accept code?

peepsalot
Apr 24, 2007

        PEEP THIS...
           BITCH!

Collateral Damage posted:

I picked up a Pro Micro at my local electronics store. I'm pretty sure it's a chinese clone and not actually a Sparkfun Pro Micro, but the layout and chips are identical.

I'm having some issues getting it to accept my code though. It identifies as an Arduino Leonardo when I plug it in, which according to the Sparkfun docs is normal, and it works with their drivers. But when I try to program it (using the sparkfun hardware definitions) it compiles the code, resets the board, then the Arduino IDE gets stuck on "Uploading...".

Is there any dark magics you have to perform to get it to accept code?

Did you read this? https://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/32U4Note.pdf

Collateral Damage
Jun 13, 2009

No I didn't.. That could very well explain it.

I'll wire up a reset button when I get home and give it a try.

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

This is kind of off topic, but are there any servos out there that can rotate more than the ~80 or so degrees that I'm typically finding? I know about continuous rotation servos, but I need to control the rotation via a potentiometer, and have the servo turn in synchronous with the pot. Can you even do that with continuous rotation servos? Or am I SOL for anything more than 60 degrees of rotation?

Bad Munki
Nov 4, 2008

We're all mad here.


Do you need it to keep going around and around, or are you just looking for, like, 180° or 400° or something?

If the former, have you maybe considered a stepper? If the latter, I'm not sure why you're having trouble, even the cheapo ones I got on eBay do more like 270°, if I recall.

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

Bad Munki posted:

Do you need it to keep going around and around, or are you just looking for, like, 180° or 400° or something?

If the former, have you maybe considered a stepper? If the latter, I'm not sure why you're having trouble, even the cheapo ones I got on eBay do more like 270°, if I recall.

Sorry, I meant that the ones I'm finding are doing ~160-170 degrees, not 80. I'd like to get, at most, about 540 degrees of rotation. I could probably make due with a servo that rotates 270 degrees and a couple gears to double the distance at output.

Aurium
Oct 10, 2010

neogeo0823 posted:

Can you even do that with continuous rotation servos?

You cannot. Making it a continuous rotation disables position control.

That said, you're looking for a sail servo. Many of them do multiple turns with position control. The ones I've seen most commonly are 3.5 turn servos, so you can try searching for that too.

Have a link.

http://www.amazon.com/Hitec-RCD-33785S-HS-785HB-Winch/dp/B000BOGI7E

ArcticZombie
Sep 15, 2010
I have an ATMEGA328P-PU which was pre-configured with the Arduino Uno bootloader at 16Mhz. I would like to use the internal 8MHz oscillator instead but I'm having trouble doing so. I have it set up with the 16MHz crystal on a breadboard and I'm burning the "Arduino Pro or Pro Mini, ATmega328 (3.3V, 8MHz)" bootloader which I believe should have the appropriate fuses set. The bootloader burns just fine, I remove power from the chip and remove the 16MHz crystal and unnecessary capacitors. I power the chip again and attempt to upload a sketch but it fails with "Invalid device signature". What's the problem here?

Buffis
Apr 29, 2006

I paid for this
Fallen Rib

ArcticZombie posted:

I have an ATMEGA328P-PU which was pre-configured with the Arduino Uno bootloader at 16Mhz. I would like to use the internal 8MHz oscillator instead but I'm having trouble doing so. I have it set up with the 16MHz crystal on a breadboard and I'm burning the "Arduino Pro or Pro Mini, ATmega328 (3.3V, 8MHz)" bootloader which I believe should have the appropriate fuses set. The bootloader burns just fine, I remove power from the chip and remove the 16MHz crystal and unnecessary capacitors. I power the chip again and attempt to upload a sketch but it fails with "Invalid device signature". What's the problem here?

"Arduino Pro or Pro Mini, ATmega328 (3.3V, 8MHz)" use an external 8Mhz crystal.
Since you are setting the fuses like those devices, it will use your external 16MHz crystal, and not work at all when you remove it.

You will need to set the fusebits to use the internal oscillator instead. Not sure if there's a good way of doing that in the Arduino IDE. It's pretty simple with a ISP programmer and avrdude though.

Jamsta
Dec 16, 2006

Oh you want some too? Fuck you!

Julian Illet recently covered this in a video:

https://www.youtube.com/watch?v=tA9aHXxSdSI

Buffis
Apr 29, 2006

I paid for this
Fallen Rib
Also, worth noting that the internal oscillator is sortof... not great, unless calibrated.
If I remember correctly, the accuracy is +-10% .

If you calibrate it, it gets a lot better though.

edit: Just checked sheet. +-10% is correct for factory settings.
+-1% accuracy when calibrated, which is probably good enough for most serial comms.

Buffis fucked around with this message at 15:02 on Sep 17, 2015

rawrr
Jul 28, 2007

neogeo0823 posted:

Sorry, I meant that the ones I'm finding are doing ~160-170 degrees, not 80. I'd like to get, at most, about 540 degrees of rotation. I could probably make due with a servo that rotates 270 degrees and a couple gears to double the distance at output.

Is there a reason you need to use a servo instead of a stepper for this purpose?

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

rawrr posted:

Is there a reason you need to use a servo instead of a stepper for this purpose?

Will a stepper motor be able to work like in the knob tutorial? I don't need it to specifically be a servo, if I can find something that will behave the same way for the same cost or cheaper.

EDIT: Googling around tells me I have probably been looking for the wrong thing this whole time. If someone could post a link to a decent stepper that would work as a substitute for a cheap servo, that'd be great. Just to make sure, would a stepper motor work like a servo with position control, where if the power suddenly cut out, it would remember where it was when, in relation to the potentiometer controlling it, the power came back on?

neogeo0823 fucked around with this message at 17:07 on Sep 17, 2015

Bad Munki
Nov 4, 2008

We're all mad here.


A stepper will sit where it is until something makes it move.

That being said, it's going to behave DIFFERENTLY than a servo in that if something overcomes the holding torque of the stepper, causing it to turn, it'll happily sit in that NEW position and move from there, instead of having a servo's closed loop to drive it back into position. It'd need some sort of encoder to mimic the self-correcting servo behavior. That may or may not matter in your application.

Aurium
Oct 10, 2010

neogeo0823 posted:

Just to make sure, would a stepper motor work like a servo with position control, where if the power suddenly cut out, it would remember where it was when, in relation to the potentiometer controlling it, the power came back on?

Stepper motors do not do this.

They are where they are, and you tell them to move forward or back a fixed amount. They have no concept of current location. You need external smarts and sensors to know where it is. Usually an encoder. But a typical quadrature encoder only tells you direction and amount of movement, so you still need additional sensors to tell absolute position.

If you need absolute location the typical way it's done is by going to the home position when ever you don't know where you are (most commonly power up). Of course this means you have to accept movement on power up. Another issue is placement of the home sensor.

An absolute encoder will tell you absolute position but it will repeat every full rotation. It doesn't know if you're at 0 or 360 degrees. You're looking for 540 degrees of movement so that would be a problem. You could put it on a gear train of course. A 2:1 gearing would give you 720 degrees of movement without repeats.

Captain Cool
Oct 23, 2004

This is a song about messin' with people who've been messin' with you

Bad Munki posted:

It'd need some sort of encoder to mimic the self-correcting servo behavior.
If you're adding an encoder, you could also just use a continuous rotation servo instead of a stepper.

How about replacing the servo's potentiometer with a multi-turn pot? A quick google images search tells me it won't be a drop-in replacement, but you might be able to rig something up along those lines.

Aurium
Oct 10, 2010

Captain Cool posted:

If you're adding an encoder, you could also just use a continuous rotation servo instead of a stepper.

How about replacing the servo's potentiometer with a multi-turn pot? A quick google images search tells me it won't be a drop-in replacement, but you might be able to rig something up along those lines.

Along those lines, I've even seen mods where people have taken the potentiometer completely out of the servo, and attached it to a different gear train. This video has a few experiments along those lines.

I still think that a multi turn / winch servo (not continuous rotation) like the HS-785HB would be by far the easiest way.

goodness
Jan 3, 2012

When the light turns green, you go. When the light turns red, you stop. But what do you do when the light turns blue with orange and lavender spots?
If I wanted to build something that projects the current Song - Arist playing on the wall via laser, would Arduino be a good use for that?

Collateral Damage
Jun 13, 2009

Assuming you can interface your laser projector with an arduino, yes.

To get the information from your computer to the arduino, look at Processing which has a bunch of libraries for extracing information from your computer and send it via serial to the Arduino.

hayden.
Sep 11, 2007

here's a goat on a pig or something
I got a Raspberry Pi recently and I'm pretty new to all this. I have a DS2431 EEPROM I'm trying to read that uses OneWire. It shows as a folder under /sys/bus/w1/devices/ called "2d-00000c6b09f5" but it doesn't appear to have a "w1_slave" to read to show data like tutorials show for many other components (like temp sensors). Any idea how to read this? Is this helpful? http://owfs.org/uploads/DS2431.html. There's an "rw" file that outputs a bunch of blocks (like a missing character?) - is there some way I should be reading this? I'm trying to figure out the owfs right now if that's the solution but it looks like maybe it doesn't work with w1-gpio (looks like it traditionally uses a USB adaptor of some sort).

Also in the /boot/config.txt I have this: dtoverlay=w1-gpio-pullup,gpiopin=4,pullup=1 - does it actually matter what pin number you list for the pullup? I have at 1 because I assume that means pin 1 which is the 3.3v, but why do you need to specify? Why does it care where it gets the power?

hayden. fucked around with this message at 18:54 on Sep 19, 2015

Aurium
Oct 10, 2010

hayden. posted:

I got a Raspberry Pi recently and I'm pretty new to all this. I have a DS2431 EEPROM I'm trying to read that uses OneWire. It shows as a folder under /sys/bus/w1/devices/ called "2d-00000c6b09f5" but it doesn't appear to have a "w1_slave" to read to show data like tutorials show for many other components (like temp sensors). Any idea how to read this? Is this helpful? http://owfs.org/uploads/DS2431.html. There's an "rw" file that outputs a bunch of blocks (like a missing character?) - is there some way I should be reading this? I'm trying to figure out the owfs right now if that's the solution but it looks like maybe it doesn't work with w1-gpio (looks like it traditionally uses a USB adaptor of some sort).

Also in the /boot/config.txt I have this: dtoverlay=w1-gpio-pullup,gpiopin=4,pullup=1 - does it actually matter what pin number you list for the pullup? I have at 1 because I assume that means pin 1 which is the 3.3v, but why do you need to specify? Why does it care where it gets the power?

Try the Raspberry Pi thread?

hayden.
Sep 11, 2007

here's a goat on a pig or something
Oh thanks - I looked and didn't see one and assumed this was the thread for all similar devices.

Sound_man
Aug 25, 2004
Rocking to the 80s
I am really impressed with how easy it was to get rolling with my Arduino. I have dealt with C and programming PLCs before so a few of the concepts carried over. I got my project successfully mocked up in about an hour once I got all the parts. 15 minutes to do all the soldering, 5 minutes to wire it up and about 40 minutes getting the code to do what I wanted it to. I am controlling some RGB LED strips and have a pot for R,G,B and a master pot for the overall brightness. I get a little flicker at some of the quicker refresh rates but I might be able to dial that in a little. Perhaps refreshing each color at a different rate...

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

So, you may remember my search for servos a couple weeks ago. I finally got around to looking again, and found one that fits my needs right here. Of course, it would be on back order. My googling around isn't yielding useful results for anything similar. Does anyone know of a similar servo that isn't on back order anywhere?

peepsalot
Apr 24, 2007

        PEEP THIS...
           BITCH!

neogeo0823 posted:

So, you may remember my search for servos a couple weeks ago. I finally got around to looking again, and found one that fits my needs right here. Of course, it would be on back order. My googling around isn't yielding useful results for anything similar. Does anyone know of a similar servo that isn't on back order anywhere?

Have you looked here:
http://www.servodatabase.com/

Aurium
Oct 10, 2010

neogeo0823 posted:

So, you may remember my search for servos a couple weeks ago. I finally got around to looking again, and found one that fits my needs right here. Of course, it would be on back order. My googling around isn't yielding useful results for anything similar. Does anyone know of a similar servo that isn't on back order anywhere?

That's the 1.5 turn one. If you're ok with an extra half turn, the 2 turn model is still in stock

http://www.hobbyking.com/hobbyking/store/__42639__Turnigy_8482_TGY_4805_2PA_Sail_Winch_Servo_Drum_Type_6_13kg_0_7sec_45g.html

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

Aurium posted:

That's the 1.5 turn one. If you're ok with an extra half turn, the 2 turn model is still in stock

http://www.hobbyking.com/hobbyking/store/__42639__Turnigy_8482_TGY_4805_2PA_Sail_Winch_Servo_Drum_Type_6_13kg_0_7sec_45g.html

Why, yes, I am, and I didn't think to check if they had a 2 turn one. Thanks for pointing that out.

neogeo0823 fucked around with this message at 22:57 on Sep 27, 2015

dirtycajun
Aug 27, 2004

SUCKING DICKS AND SQUEEZING TITTIES
So I took on a project for a friend and bit off more than I can chew programing wise in a big way. I would have liked to have the project done by Oct 30th (this includes the final part of constructing it and testing) but I hit a brick wall on the actual coding.

The basic idea is that there are 2 mic stands and a theremin between them. The mic stands have two set of 77 leds (effectively forming a two LED thick strand) and the theremin the same but only 42 tall. I thought it would work best if the LEDs functioned as one single strand and designed it so that the LED strand one runs up and stand and it's pair runs connected back down then connects to the next pair and so I built it without much thought into how this would end up playing out in the code section.

The LEDs will be displaying 7 strips of color (2 wide x 11 tall for the mic stands and 2 wide x 6 tall for the theremin) that will be triggered by an MSGEQ7 spectrum analyzer (using code that I believe I had some help from you guys in the past) effectively making a visual representation of the music being played.

Now my problem is that I need help pairing the sets of LEDs, let's say we are looking at a strand from mic 1. Mic 1 has 154 LEDs on it and when LED 1 fires I need LED 154 to fire, when LED 2 fires I need LED 153 to fire. Effectively whenever x fires I would like 155-x to fire in the same way (color and brightness.)

What's the most elegant way of achieving this?

Code for what I have for just the first mic stand below
code:
//Libraries
#include "FastLED.h"
//Setting up the MSGEQ7 processor
int analogPin = 0; // MSGEQ7 OUT
int strobePin = 2; // MSGEQ7 STROBE
int resetPin = 4; // MSGEQ7 RESET
int spectrumValue[7];
int filterValue = 80;
//# of LEDs in Strip
#define NUM_LEDS 144
//Data Pin Output
#define DATA_PIN 6
// This is an array of leds.  One item for each led in your strip.
CRGB leds[NUM_LEDS];
// This function sets up the LEDs and tells the controller about them as well as setting up the processor
void setup() {
  Serial.begin(9600);
  pinMode(analogPin, INPUT);
  pinMode(strobePin, OUTPUT);
  pinMode(resetPin, OUTPUT);
  analogReference(DEFAULT);
  digitalWrite(resetPin, LOW);
  digitalWrite(strobePin, HIGH);
  FastLED.addLeds<NEOPIXEL, DATA_PIN>(leds, NUM_LEDS);
} 

void loop()
{
  // Set reset pin low to enable strobe
  digitalWrite(resetPin, HIGH);
  digitalWrite(resetPin, LOW);

  // Get all 7 spectrum values from the MSGEQ7
  for (int i = 0; i < 7; i++)
  {
    digitalWrite(strobePin, LOW);
    delayMicroseconds(30); // Allow output to settle

    spectrumValue[i] = analogRead(analogPin);

    // Constrain any value above 1023 or below filterValue
    spectrumValue[i] = constrain(spectrumValue[i], filterValue, 1023);

    // Remap the value to a number between 0 and 255
    spectrumValue[i] = map(spectrumValue[i], filterValue, 1023, 0, 255);
    Serial.print(spectrumValue[i]);
    Serial.print(" ");
    digitalWrite(strobePin, HIGH);
  }
  Serial.println();
  // The actual displaying of the LEDs
  for(int i = 0; i <NUM_LEDS; i++) {
    //this line is to get rid of background noise, change it higher if there is more noise
    if (spectrumValue[i/11] > 25) {
      //and this is the line that controls LED colors as well as determining how bright
      leds[i] = CHSV((i/11)*32, 255, spectrumValue[i/11]);
    }
    //And to fade them out gently if no further input
    leds[i].fadeToBlackBy(8); 
  }
  FastLED.show();
} 
Any and all help would be greatly appreciated.

Hadlock
Nov 9, 2004

No joke can you draw me a diagram in ms paint. This sounds pretty easy but we're missing one or two crucial details perhaps.

dirtycajun
Aug 27, 2004

SUCKING DICKS AND SQUEEZING TITTIES

dirtycajun
Aug 27, 2004

SUCKING DICKS AND SQUEEZING TITTIES
Basically ignore the stuff on the bottom. I can work on the footswitch and modes if I have the time after getting the meat of the situation dealt with.

Lots of stuff has changed up to and including me realizing that the power source was not going to be correct in the slightest.

dirtycajun fucked around with this message at 00:30 on Sep 30, 2015

Captain Cool
Oct 23, 2004

This is a song about messin' with people who've been messin' with you
Is that loop your only question? How about this?
code:
  for(int i = 0; i <NUM_LEDS/2-1; i++) {
    ....
      led_value = CHSV((i/11)*32, 255, spectrumValue[i/11]);
      leds[i] = led_value;
      leds[NUM_LEDS-i-1] = led_value;

Captain Cool fucked around with this message at 04:12 on Sep 30, 2015

dirtycajun
Aug 27, 2004

SUCKING DICKS AND SQUEEZING TITTIES

Captain Cool posted:

Is that loop your only question? How about this?
code:
  for(int i = 0; i <NUM_LEDS/2-1; i++) {
    ....
      led_value = CHSV((i/11)*32, 255, spectrumValue[i/11]);
      leds[i] = led_value;
      leds[NUM_LEDS-i-1] = led_value;

It's a three parter but I wanted to make sure I am getting each part and understanding it before I move on. A large part of the problem that I have is that I clearly do not understand what's going on in the code all the time. I need to get to the point where I am having a simple conversation with it. So my question here is why the -1? Is that because NUM_LEDS is on 1 to 154 and the arduino likes it to be 0-153?

The next part of the 3 part question is if I am looking at this as a strand of LEDs(NUM_LEDS=392) 392 long how do I properly constrain int i to just effecting the first 154 LEDs? If I see where to do that I should be able to make the 3 sections without a problem.

dirtycajun fucked around with this message at 11:41 on Sep 30, 2015

Captain Cool
Oct 23, 2004

This is a song about messin' with people who've been messin' with you

dirtycajun posted:

It's a three parter but I wanted to make sure I am getting each part and understanding it before I move on. A large part of the problem that I have is that I clearly do not understand what's going on in the code all the time. I need to get to the point where I am having a simple conversation with it. So my question here is why the -1? Is that because NUM_LEDS is on 1 to 154 and the arduino likes it to be 0-153?
Yes, the array declared as "leds[154]" contains 154 elements, led[0] through led[153]. Don't be surprised if you need to do a lot of off-by-one debugging.

quote:

The next part of the 3 part question is if I am looking at this as a strand of LEDs(NUM_LEDS=392) 392 long how do I properly constrain int i to just effecting the first 154 LEDs? If I see where to do that I should be able to make the 3 sections without a problem.
You just need a different loop end condition. NUM_LEDS_STRAND_1 or something. Set that to either 77 or 154, depending on how you want to think about it, and use the same code (with or without the /2).

I think the code in my last post is off by 1 for the end condition -- either use <= or drop the -1. Look at the edge conditions you want: when i is 0, it sets led[0] and led[153]. When i is 76, it sets led[76] and led[77]. When i is 77, it exits the loop.

dirtycajun
Aug 27, 2004

SUCKING DICKS AND SQUEEZING TITTIES
Meant to say thank you for the help, been busy with work stuff. But again, thank you for the help!

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

So, the winch servos I ordered further up the page came in. I thought they would have almost exactly 720 degrees of motion to them, but it turns out they have a full 5 turns, or 1800 degrees of motion, which is, frankly, way too much. Ideally, I need 540 degrees of motion. How do I limit the servo to only rotating through ~1.5 turns of its 5 turn range? If it helps, I'm using the code from the knob demo sketch from the Arduino website.

EDIT: Nevermind, I figured it out.

Since I've got a post here anyway, the one thing I'm not entirely enamored with on the new servo is how long it takes to get to the right position. It'll speed along the first chunk of the move just fine, but it takes fooooooorever to get that last quarter turn in until it gets to the correct position. This isn't a deal breaker for the servo or anything, but it would be nice to have it take less than 10-15 seconds to finish moving the last 90 degrees in its arc.

neogeo0823 fucked around with this message at 05:44 on Oct 4, 2015

Aurium
Oct 10, 2010

neogeo0823 posted:

So, the winch servos I ordered further up the page came in. I thought they would have almost exactly 720 degrees of motion to them, but it turns out they have a full 5 turns, or 1800 degrees of motion, which is, frankly, way too much. Ideally, I need 540 degrees of motion. How do I limit the servo to only rotating through ~1.5 turns of its 5 turn range? If it helps, I'm using the code from the knob demo sketch from the Arduino website.

EDIT: Nevermind, I figured it out.

Since I've got a post here anyway, the one thing I'm not entirely enamored with on the new servo is how long it takes to get to the right position. It'll speed along the first chunk of the move just fine, but it takes fooooooorever to get that last quarter turn in until it gets to the correct position. This isn't a deal breaker for the servo or anything, but it would be nice to have it take less than 10-15 seconds to finish moving the last 90 degrees in its arc.

I don't really know of any canned fast solutions. You could go back to rolling your own out of steppers, brushless motors, encoders and a gear trains.

In general servos so vary in performance, so you could also look at seeing if a different servo works faster, but there's limited models in this space, and some are quite pricey.

You could modify the servo pulling out the center tap of the servo's pot. You'd initially tell the servo to move beyond what you really want to get the fast behavior, and then monitor the pot to see when it gets close to what you want and then send the command to where you actually want to be for fine control.

Adafruit sells similar ones, but they're the standard 90 degree servos.

Adbot
ADBOT LOVES YOU

neogeo0823
Jul 4, 2007

NO THAT'S NOT ME!!

Aurium posted:

I don't really know of any canned fast solutions. You could go back to rolling your own out of steppers, brushless motors, encoders and a gear trains.

In general servos so vary in performance, so you could also look at seeing if a different servo works faster, but there's limited models in this space, and some are quite pricey.

You could modify the servo pulling out the center tap of the servo's pot. You'd initially tell the servo to move beyond what you really want to get the fast behavior, and then monitor the pot to see when it gets close to what you want and then send the command to where you actually want to be for fine control.

Adafruit sells similar ones, but they're the standard 90 degree servos.

Ok, so I found an Instructables thing on how to get analog feedback output from my servos. How do I integrate that into my code in any meaningful way?

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply