Hola a todos.
Al final encontré otro método para hacer el downgrade, lo podéis ver aqui
https://github.com/openlgtv/nsu_emu
Con este método podemos poner la versión de firm que queramos ya que la va a coger de nuestra maquina, con lo que no es necesario bajar a una versión 3, si no que podemos instalar directamente una 5.
A este metodo solo le he encontrado un problema, y es que si dejamos todo como estas nos instalara el firm nuevo con la misma numeración que el que tenemos +1
La solución que encontré es modificar el fichero CheckSWManualUpdate.php que hay en la carpeta nsu_emu
y buscar esto
Hay que cambiar 2 lineas$outdata="<RESPONSE>";
$outdata.="<RESULT_CD>$resultcode</RESULT_CD>";
$outdata.="<MSG>$message</MSG>";
$outdata.="<REQ_ID>$rid</REQ_ID>";
$outdata.="<IMAGE_URL>$img_url</IMAGE_URL>";
$outdata.="<IMAGE_SIZE>$img_size</IMAGE_SIZE>";
$outdata.="<IMAGE_NAME>$img_name</IMAGE_NAME>";
$outdata.="<UPDATE_MAJOR_VER>$img_max</UPDATE_MAJOR_VER>";
$outdata.="<UPDATE_MINOR_VER>$img_min</UPDATE_MINOR_VER>";
$outdata.="<FORCE_FLAG>$forceflag</FORCE_FLAG>";
$outdata.="<KE>$ke</KE>";
$outdata.="<GMT>$gmt</GMT>";
$outdata.="<ECO_INFO>$out_eco_info</ECO_INFO>";
$outdata.="<CDN_URL>$cdn_url</CDN_URL>";
$outdata.="<CONTENTS>$contents</CONTENTS>";
Si ponemos el ejemplo de meter la 5.00.55 quedarían esas lineas así$outdata.="<UPDATE_MAJOR_VER>$img_max</UPDATE_MAJOR_VER>";
$outdata.="<UPDATE_MINOR_VER>$img_min</UPDATE_MINOR_VER>";
De esta manera se actualizaría a la versión que nosotros le hemos indicado.$outdata.="<UPDATE_MAJOR_VER>5</UPDATE_MAJOR_VER>";
$outdata.="<UPDATE_MINOR_VER>00.55</UPDATE_MINOR_VER>";
Espero que os sirva y si hay alguna duda preguntar.
saludos