I'd recommend bringing it to have it checked out. However if the problem cannot be replicated in front of the dealer, its a wasted effort to go there.
If the car is throwing error codes, your service engine light should be on. The car is probably recovering on its own.
Have you checked the condition of your spark plugs?
When was your last change of fluids (motor oil, differential, transfer cases?)
If you have a friend in the industry, bring it to a mechanic and have them try to diagnose the source of the vibration. The dealer mechanics have wasted more of my time than i care to share. When i bring my car to BMW nowadays, i know exactly what is wrong and hardly rely on them anymore. Being prepared never caused any harm
good luck