I’m not making much forward progress, sad to say.
Setup is a 3.6 board, 48V with the latest release firmware. ODrive 5065 motor with CUI encoder. At first power-up I had a very bad time getting the USB to work. There was clearly a lot of noise getting into the cable. With the supplied USB cable, it would not stay connected and was receiving a lot of garbage when the motor was getting power (unexpected ACKs, random stuff). I eventually found one cable that seemed to work, and isolating the drive ground from the PC ground helped (so no ground to the drive except through the USB cable).
After the USB was working, I thought there was a lot of audible noise from the motor, sort of a mid-frequency hissing or sizzling sound. Persevered anyway. I noticed after a while that the index search was finding 7 “indices”. Suspicious, as it’s a 14 pole motor. The scope showed the encoder signal was very noisy. I looked at some other inputs. The A and B signals didn’t look too bad, but the 3.3V signal was terribly noisy.
This is with the motor in position mode, not moving. The 48V power in was clean with about 80mV of ripple.
Obviously, this isn’t good. Trying to track down the problem, I eventually ended up with only the PSU, drive, brake resistor and motor connected, in sensorless mode, with motor on at 0 RPM, no encoder cable connected, no USB connected, with only the PSU case grounded. Still the same. Grounding the motor case, drive, negative power input in any combination was no help. Shielding the motor leads with metal conduit also did not help and actually made the motor audibly noisier if the conduit was connected to the motor frame.
I did find that a 47nF capacitor on the encoder input eliminated the fake indices, so I proceeded to try and tune the drive to see what happened. I had a horrible time following the instructions. I could get the velocity gain set to cause no vibration (but still audible noise from the motor). I was not able to get the position gain set satisfactorily. Using the odrivetool live plotter, I could adjust the position gain to have no overshoot on a move of (say) 0.5 revolution, but the overshoot would be enormous on a larger move of (say) 2 revolutions. Reducing the gain then made it impossible to complete the move at the lower end. Sometimes the motor would not move at all. Increasing the velocity integrator gain would pull in the position, but usually would cause oscillation. As for the velocity integrator gain, The instructions are no help as I found no way to consistently measure the position settling time.
As my application initially is going to operate in velocity mode, I thought I would try to get that working and forget position for the moment. I set the integrator gain to 0 and adjusted the velocity gain to eliminate vibration - it was 0.2 whatevers, which is close to the default. I then ran the motor at various speeds, noticing that as the speed was reduced the movement became very jerky and there was very little torque. I increased the integrator gain until the jerkiness went away and the torque increased, then reduced speed and adjusted some more, until I got smooth rotation and good torque at 0.2 RPS. I believe the integrator gain was around 15 or so. However, the higher speed (10 RPS or more) had become noisy, sounding sort of like a bad muffler, or worn gears.
Back to the scope. The encoder A and B were pretty clean, but there was clearly a lot of movement, and this was also evident on the odrivetool scope. This is a screen shot of the drive holding position:
The p-p range is about 16 encoder counts. I believe this is the sizzling sound, as there is no detectable low frequency vibration.
Here is a scope trace of the one of the ground connector pins, the probe ground being connected to the incoming power negative terminal, and the scope itself not grounded. The encoder was connected but not the USB. The trace on all of the various connectors’ grounds was the same.
I think this is the problem, or at least the major one, but I have no reference. I noticed an earlier topic about a grounding problem on an earlier board rev - could this be a similar thing? The only other things I would suspect would be motor insulation breakdown (but the motor fame is not grounded), or a power supply issue. I did try adding bypass and large extra smoothing caps and chokes on the PSU, with no discernable difference, so I don’t think that’s it. Next I shall probably see if I can find any visible issues with the PCB, but any suggestions are welcome.