Heterogeneous evolutionary processes have cast a shadow over the reliability of phylogenetic inference for as long as it has been attempted. These processes bring with them the inevitable consequence of model misspecification, which one would obviously like to minimise. Much work has been done in this area and mixture models that account for rate heterogeneity amongst sites have been in widespread use for some time. These models however are too restrictive to truly represent heterotachous evolution. At the cost of complexity, we introduce a more general mixture model capable of recovering tree and model parameters from datasets generated under heterotachous conditions. We then apply our model to a real dataset, where it demonstrates evidence of convergent evolution in a sodium channel gene of two geographically distinct lineages of teleosts.