Campbell entered the navy as a first class volunteer in April 1803, joining the Culloden, the Channel flagship of his uncle, Rear Admiral George Campbell, who nurtured his career. In the Namur he saw action in Strachan’s victory over four French ships that had escaped Trafalgar, 4 Nov. 1805; and as a midshipman in the Seahorse he was involved in the bloody capture of a Turkish vessel, 5 July 1808. He served subsequently in the Downs, off Cadiz and, after being promoted lieutenant in March 1811, on the North American Station, where he distinguished himself in the frigate Belvidera’s escape from a powerful American squadron, 23 June 1812. In April 1814 he joined the Royal Sovereign yacht, which conveyed Louis XVIII to Calais. As a commander he had the Racehorse in the Mediterranean in 1818.
He was absent on professional duties when he was returned unopposed for Nairnshire on his father Lord Cawdor’s interest at the 1820 general election.
Campbell came in again unopposed for Nairnshire at the general election of 1830, when he promised to ‘support every measure of economy that would lighten the burdens of the people’.
Campbell left the household on the death of the king in 1837 and retired from the active navy list in 1846. He died in January 1858, ‘after a few weeks’ illness, aged 65’, at his London residence, 71 South Audley Street.
