With my Raspberry Pi, what I do very, very often is this:
localhost$ ssh raspberrypi.local # Here I already type the next command and wait a while
raspberrypi$ tmux attach
This is all well and good, but sometimes the Pi is down, and I will attach to one of my local tmux sessions. Very annoying. Instead you could try to do this:
localhost$ ssh raspberrypi.local tmux attach
not a terminal
Well, that did no good. So a look at the man-page of ssh or a quick search reveals this gem:
localhost$ ssh raspberrypi.local -t tmux attach
This allocates a pseudo terminal, which is needed by tmux to function correctly. This is also done by ssh, if no command is given, but a login shell is spawned.