O aparelho, que aterrou em segurança na capital do Sri Lanka, Colombo, estava a cerca de 600 quilómetros da cidade quando os pilotos lançaram o pedido de emergência.
"Os pilotos accionaram o código de emergência May Day, May Day, e activámos os nossos serviços de emergência e trouxemos o aparelho para terra em segurança", disse a chefe dos serviços de navegação, Crishanthi Tissera, à AFP.
Ele disse que os pilotos reportaram fumo no 'cockpit' e que unidades de bombeiros e médicos foram colocadas de prevenção.
O avião aterrou 39 minutos depois do pedido de ajuda e todos os 471 passageiros e 30 tripulantes desembarcaram em segurança.
Um comunicado da companhia aérea indicou que o avião sofreu uma "falha técnica" e que foi desviado para Colombo, sem adiantar detalhes.
A companhia informou que os passageiros estavam a ser transferidos para outros voos da Emirates.
Lusa/SOL