When separating the variables of the 3d wave equation we generate (amongst others) the following ODE. \begin{equation} \frac{d^2\Phi}{d\phi^2}=-m^2\Phi \end{equation} Where $m$ is the separation constant. If we impose a boundary condition on $\phi$ such that after every full rotation the same point has the same solution one period later then we are forcing $\phi$ to be single valued $\Phi (\phi +2\pi)=\Phi(\phi)$. We use Euler's formula $e^{i\pi }=-1$, \begin{equation} \Phi(\phi+2\pi)=e^{im(\phi+2\pi)}=e^{im\phi}e^{2\pi im}\nonumber \end{equation} In order that $e^{im\phi}=e^{im\phi}e^{2\phi im}$ we see that $e^{2\pi im}=1$ and as such $e^{i\pi}e^{2m}=(-1)e^{2m}=1$.
Using this however how do we know that $m$ is an integer only? Where $m=0,\pm 1,\pm 2,\dots$? I am struggling to see the logic that enforces $m$ to take these special values. Thank you.
$e^{2\pi im} = 1$ does not imply $e^{i\pi}e^{2m} = 1$, as if it did then $e^{2\pi im} = e^{i\pi + 2m}$.
In general, $e^{ix} = 1$ iff $x = 2k\pi$ for integer $k$. Hence $e^{2\pi im} = 1$ iff $m$ is an integer.