yes i did DaveK and sorry for not posting my findings. thats what led me to chainge the pots. even when i was not moving the pots it would chaing just a little.
A little bit of jitter is normal until you add a bit of hysteresis to the control system. Imagine the thermostat that measures the temperature in a home and turns the heater on or off to control the heat. If the thermostat is set for a comfortable room temperature of 62F it must allow the actual temperature to vary somewhat from the setting. If it were to turn on the heater every time there were a small change in the measurement the heating system would be cycled on and off on very short cycles. This would be inefficient and would probably eventually damage the system.
The same thing applies with servo controls. If you want to eliminate small amounts of jitter resulting from unstable input readings you can do so by adding some memory of the previous input set point and only changing the output when the input deviates by larger amounts.
If you are getting large amounts of jitter something else might be wrong.
It appears that you have the problem solved, excellent!
So take the below as an analysis of how I would go about solving the problem as guided by the general principles I've learned.
the program it self did not work thow 1 of the pots would more 2 servos
I believe that the program is fine. That was why I tested it on my hardware here and then sent it to test on your hardware, to isolate problems. On my hardware a single pot does not affect two servos. To help to track down why it does this on your system the program prints out the inputs and outputs for each servo.
If when you turn one pot you have corresponding movement in two servos you should watch the output from the sketch to see where the problem is starting. There are four obvious possibilities:
First; the input hardware. The input of one potentiometer is connected to two analog input pins. If this is the case then when you turn the problem potentiometer you will see changes in more than one of the four 'Value' fields.
Second; software assignment of the position. If there is a problem in calculating the target servo position from the analog input, such as if the value from a single analog input were being assigned to two 'servo' objects then while the 'Value' field for a servo remained unchanged, the first value in the coordinate pair of the 'Sn:' field would change. This would indicate a problem in the sketch software.
Third; software problem in the servo library. If a problem in the servo library caused the input to one servo object to affect another than this /might/ appear in the value read from the servo. This is displayed as the second value in the coordinate pair of the 'Sn:' field (where 'n' is the index of the servo). The second value should always match the first value. Problems in the servo library could be difficult to track down in this way, however, by testing on my hardware and by virtue of being used by many other people, it is quite unlikely that the servo library is the problem, though certainly not impossible.
Fourth; hardware output problem. If two servos move when one pot is moved and all of the fields in the serial output indicate that only one analog value is changing, and that only one servo is being commanded to move, then the most likely problem is that two more more outputs are cross connected. In this case the cross connected servos would respond to changes in multiple pots, and they would likely exhibit substantial jitter as the attempted to read the overlapping command signals.
and one of the other pots would more 2 servos and the last 2 pots did nothing.
If turning two of the pots does not result in the two corresponding 'Value' field displaying corresponding changes then it is likely that one of the following is the problem, roughly in order of how likely: the pots are bad, the pots are incorrectly connected, that there is something wrong with the Arduino hardware, or that the software is reading from the wrong analog input.
lots of shaking. something was wrong with the code because i was never getting that much shaking and i have always had 3 servos working right.
Hardware that acts in the wrong way in a variety of ways does not necessarily indicate that the software is wrong. It would not be surprising if good software combined with bad hardware worked worse than bad software combined with bad hardware. (by 'bad software' I mean software that would not work correctly with good hardware).
I suggest you might be able to track down the problem by assuming that the sketch I posted above and tested on my simple bread-boarded hardware is probably OK (though I will review it again to be sure), and then look carefully at the serial output it produces to see if the chain of events between turning a single pot appears to be in order and that the correct outputs are generated by the software.
Break the problem down a step at a time, starting with the pot's (such as you did by replacing what may have been faulty hardware). Verify that the output of each step matches the specifications (particularly with respect to not influencing other outputs). Continually throwing different software at the system might eventually work, but it won't tell you what the issue is, and it will be confusing if the problem is an intermittent hardware issue.