Hi Russ.
What do you mean, precisely, by "vibration"? Do you mean that the locomotive runs unevenly (e.g., you notice momentary surges in speed)? If it is this momentary "surging," at what speed does it happen the most? Low speed? Medium? When you crack the throttle open or when it is running at 20% throttle? 1/3? Does it eventually smooth out or do you notice it all the time no matter what the speed/throttle setting? Or do you mean that it literally rocks sideways on the track as it is rolling along?
The Zimo has one of the most sophisticated BEMF circuits of any decoder available, and has so many adjustment options that it's hard to even know where to begin without some additional information. Perhaps even a short video taken with your phone and posted to YouTube or some sharing service that would allow us to see what you're talking about.
Another approach would be to just start playing around with the various BEMF CV's (at least, the ones most likely to make a difference). These are CV's 9 and 56. The Zimo uses two digits in each of these CV's to control the BEMF circuits, and the 10's digit controls a different aspect than the 1's digit. So, the default for CV9 is 55. If your "vibration" is a jerky movement, you might try increasing both the 10's and 1's digits by 1 to see if that helps. For example, try 85, instead of 55 in CV9. In theory, the higher the 10's digit, the less "jerky" the movement will be. If 85 improves things, try 65, 75 and 95 to see what seems to work best. Simlarly, higher 1's digits tend to work better with older motor designs. Once you have the 10's digit that works best, try increasing the 1's digit by 1 to see if you can get further improvement. Zimo actually recommends a setting of 95 in CV9 for a "normal" N scale motor (not a coreless).
CV 56 sets the "I" and "P" parameters for the BEMF circuit (you don't want to know). Once again, the 10's digit and the 1's digit affect different parameters. The default is 55. Try 33. Then try 77. Which is better/worse? You'll do iteration here (if 77 is better, what about 87? What about 88? 97? If 33 is better, what about 23? 22? etc.). This is time consuming (and best done via ops mode programming - programming on the main - rather than on a programming track) but it's really the only way to know for sure that you are getting the best possible performance from this decoder.
And remember that if things go crazy, you can always just reprogram with the default 55 to get back to where you were. Don't be afraid. You aren't going to ruin anything by doing this.
John C.