При выборе между "контролер" и "контроллер" мы сталкиваемся с тем, что перед нами не два альтернативных варианта одного и того же слова, один из которых правильный, а другой неверный, а два самостоятельных имени существительных, которые корректны в русском языке и полноценно используются. Проблема лишь в том, что необходимо чётко распознавать, в зависимости от контекста, значения двух этих слов, которые неодинаковы. Это и определит орфографию, заставляющую нас написать в некоторых случаях одну "л", а в отдельных случаях - две.
"Контролёр". Именно так, без удвоения согласной, пишется слово с постановкой ударения на последнем слоге, если существительное обозначает в предложении некое лицо, которое осуществляет какой-либо контроль. Например, в общественном транспорте работают контролёры, которые следят, у всех ли пассажиров есть билеты.
"Контроллер". Если же ударение находится на втором слоге, а согласная "л" становится удвоенной, то мы имеем в виду не человека, а соответствующее устройство, контролирующее, регулирующее или управляющее некими механизмами, элементами механизмов.
Примеры предложений:
"Контролёр потребовал сейчас же заплатить за проезд".
"Электронный контроллер был программируемым".