I understand the classic examples of taking the magnetic field along the direction of a certain axis, and then analyzing the motion of a charged particle. This gives helical motion (for a general velocity $\vec{v}$). However, my question is how to solve for the motion $\vec{r}(t)$ in the case where we have the magnetic field pointing along an arbitrary direction, and given an initial velocity.
My first instinct was to rotate the whole coordinate system in order to align the magnetic field with, say, the $z$-axis. However, I feel like there should be an easier way to deal with this. I have the initial velocity decomposed as $\vec{v}_i = \vec{v}_{parallel} \,\, + \vec{v}_{perpendicular} \,\,\,$, which means the parallel part won't change in time. However, I'm unsure as to how I should go about finding the full solution for the perpendicular velocity, which will then let me find the trajectory. I have quantities like the angular frequency, the pitch, and the pitch angle, but I'm unsure if I should try to go for the full-blown rotation of the coordinate systems.