The son of Rev. David Cannon, he joined the Madras Army and was made a Captain in 1846. He fought in Spain with the British Auxilliary Legion, having raised 500 men from Devon. He received the Cross of the First Order of St Ferdinand in 1837 and of second class in 1839. He also received the Insignia of the Order of Charles I in 1848. Early in 1845 he joined the Turkish Army at Shumlah and took a division to Eupatoria in December 1854. He was at the seige of Sevastopol in April 1855 and was made an honorary Lieutenant General (Ferik) in the service of the Sultan on 5th December 1856. He died at 14 Manor Road Folkestone, where he was living in 1881, a retired Lieutenant general and J.P, with Emma, Ronald his son, Laura and Rowena, unmarried daughters, a French lady's maid, a housemaid and a parlour maid.