This is just to record the observation of lambda from the comments. I'll keep your convention that the *rows* of $H$ determine the chip-firing moves, so that for a sequence of firings $v\in\mathbb{Z}^n$ the result of caring out these firings (starting from the zero configuration) is $vH$. (But this means that we should really be talking about the kernel and cokernel of $H^t$ everywhere...) For $x\in \mathbb{Z}^n$, the linear function $f(v)=\langle v, x\rangle \mod k$ is a clock if and only if $Hx=\mathbf{1} \mod k$. (Here $\langle \cdot , \cdot \rangle$ is the usual inner product, and $\mathbf{1}$ is the all ones vector.) This is because the requirement we have to satisfy to be a clock is that $f(vH)=\langle v, \mathbf{1}\rangle \mod k$ for all $v\in\mathbb{Z}^n$, so we need $f(vH)=\langle vH, x\rangle =\langle v,Hx\rangle$ to be equal moulo $k$ to $\langle v, \mathbf{1}\rangle$ for all $v\in \mathbb{Z}^n$, which happens if and only if $Hx=\mathbf{1} \mod k$. It still is not totally clear how given a graph $G$ to find the (finite!) list of $k$ for which a clock exists, but for a fixed $k$ at least this makes it clear that the question of whether such a $k$ exists is a "linear algebra" problem (if $k$ is prime then indeed we're talking about linear algebra over a field). [ By the way, here is the argument that the set of such $k$ is finite. $H^t$ is a singular M-matrix, so there is some vector $v_{*}\in\mathrm{ker}(H^t)$ with $v_{*}\neq 0$ but all entries of $v_{*}$ nonnegative. Hence in particular $\langle v_{*}, \mathbf{1} \rangle > 0$. But, as mentioned, if there is a $k$-clock we need that $\langle v, \mathbf{1} \rangle = 0 \mod k$ for any $v \in \mathrm{ker}(H^t)$, so as long as $k > \langle v_{*}, \mathbf{1}\rangle$ then there cannot be a $k$-clock. ]