viernes, 24 de febrero de 2012

Prevenir que Zune te bloquee el modo desarrollo



Hola,

Se me había ocurrido montarme un WireShark para analizar el tráfico que genera Zune y así poder ver dónde demonios se conecta para comprobar que no estoy dado de alta como desarrollador. De esta forma podría prevenir que se me bloqueasen las aplicaciones al sincronizar el teléfono. Bien, como siempre ya se me había adelantado alguien aquí.

De todas formas voy a poner el artículo por si alguien no habla inglés o por si cierran la página. Ya han amenazado a XDA de cierre y no lo entiendo. Se dedican al desarrollo y mejora y no a la piratería, pero parece ser que los incultos y mediocres imbéciles que se dedican a calificar las páginas que no entienden, se les ha metido en esa cabeza inútil que el conocimiento es ilegal y malo. En fin, si alguno se siente identificado con este grupo de patanes que por favor, deje de ver mi blog y haga algo más útil para la sociedad como tirarse por el hueco del ascensor o a las vías del tren. La cultura es conocimiento y el conocimiento es cultura. Yo intento comunicar conocimiento y quien no lo vea así poco dice acerca de su cultura.

Ahora a lo serio. No parece una solución 100% definitiva, pero si evita que de vez en cuando se bloquee el modo desarrollo merece la pena probarlo.

Primero una explicación de las comunicaciones que efectúa Zune:

- login.live.com                                 => Acceso con tu cuenta a Live.com
- update.microsoft.com                     => Chequeo de las actualizaciones necesarias
- download.windowsupdate.com      => Actualizaciones de Windows (incluido Windows Phone)
- download.microsoft.com                => Actualizaciones de Microsoft (Office y otras aplicaciones)
- catalog.zune.net                             =>(Información de música, carátulas, etc.
- socialapi.zune.net                          => Acceso a la red social de Zune
- commerce.zune.net                        => Acceso al Market Place (creo)

Estas son las que nos interesan:

- developerservices.windowsphone-int.com
- developerservices.windowsphone.com


Bueno, la lógica dice que si tienes el teléfono en modo desarrollo y no puede verificarlo en la base de datos de Microsoft, no te puede desactivar una función de la que no le llega la denegación esplícita de ello.

Pues manos a la obra. A mi se me ocurren dos soluciones. La primera es apuntar estas páginas al equipo local, que evitará que salga al exterior a buscar la información. La otra es apuntar a otra página que tenga los puertos 80 y 443 abiertos para que parezca incluso más real el engaño. En ambos casos la solución es similarl, editando el fichero local 'hosts' y añadiendo un par de entradas:

1.- Asegurarse que tenemos el teléfono en modo desarrollo.
2.- Editar el fichero 'hosts' que se encuentra en 'C:\Windows\System32\drivers\etc'.
3.- Añadir las siguientes entradas:
      127.0.0.1 developerservices.windowsphone.com
      127.0.0.1 developerservices.windowsphone-int.com
4.- Borrar la caché DNS ejecutando 'ipconfig /flushdns' en el equipo donde tenemos Zune.

Alternativa: En lugar de apuntar al equipo local con la IP 127.0.0.1, puedes poner la dirección de www.google.com [74.125130.209] por ejemplo, que responde a ambos puertos ;-)

      74.125130.209 developerservices.windowsphone.com
      74.125130.209 developerservices.windowsphone-int.com

He visto algunas soluciones que también incluyen certificados raíces y modificaciones a nivel de provxml y de las comunicaciones del terminal, pero creo que de momento estos sencillos pasos son suficientes,

Espero que os haya gustado este post

Un saludo,



domingo, 19 de febrero de 2012

Rintones / melodíoas en Windows Phone 7.5



Hola,

Seguro que quien esté mirando este post ha intentado meter una canción como melodía en el flamante teléfono Windows Phone y ha seguido los simples pasos que indica Microsoft aquí, pero no ha sido capaz.

Lo primero que tenemos que saber son las limitaciones:
  • Formato MP3 o WMA.
  • Menos de 40 segundos.
  • Inferior a 1 MB.
  • Sin DRM.
Pues no es cierto del todo. No todas las codificaciones MP3 están soportadas y en muchos casos es tarea imposible meter una melodía aunque cumplamos los requisitos 'teóricos'.

Bien, no hay que desesperar. Lo que tenemos que hacer es utilizar un programa para poder cortar un trozo de canción y que la guarde en formato compatible Windows Phone. Bien, esta aplicación puede ser WP7 Ringtoner. Esta aplicación es tan simple como útil, aparte de gratuita. Podéis encontrarla aquí y estoy seguro que os servirá a las mil maravillas.



Por supuesto todos los méritos a los autores de la aplicación.

Un saludo,

Microsoft ha revocado [aplicación]. Desinstálala.


Hola,

Algunos de nosotros ya estamos acostumbrados a este mensajito. Pasa de vez en cuando al sincronizar con Zune nuestro Windows Phone. La razón, que Mcrosoft restaura las claves de registro de desarrollo y por tanto todas las aplicaciones que hayamos montado de forma manual, serán revocadas. No así las bajadas del Market Place, que tienen el certificado de M$ y por tanto seguirán siendo válidas.

Para los que les gusta trastear y hacer pequeñas aplicaciones para el teléfono es un incordio, pero pagar la licencia de desarrollo tal vez no les compense y prefieran seguir activando la función.

La pregunta: ¿Se puede volver a activar el modo desarrollo?. Por supuesto que sí. Dependiendo del modelo de teléfono que tengáis, existen diferentes posibilidades de modificar las claves de registro para dejarlo en modo 'desarrollo' y poder seguir ejecutando nuestras aplicaciones 'Homebrew'. Para los que dispongáis de un LG Optimus 7 (que es mi caso), ya dejé un artículo explicando los pasos aquí.

También podéis intentar evitar que se bloquee el modo desarrollo aquí

Espero que lo encontréis útil.

Un saludo.

viernes, 17 de febrero de 2012

Cable-Router y la madre que lo parió


Hola,

Como podéis ver, hoy el post lo voy a dedicar a los problemas de señal de las conexiones de cable. Lo primero que hay que decir es que cada fabricante tiene unas tolerancias y los valores pueden variar de unos a otros. Yo no soy un experto en cable, pero he tenido varios problemas y me he informado un poco por ahí. Bien, el problema habitual es que los valores de señal no son correctos y por tanto nuestro cable-router no funciona óptimamente, lo que suele derivar en lentitud y cortes.

Toda la información la he sacado de diferentes páginas y foros, con lo que podría ser que algún valor que no sea totalmente correcto, pero a grandes rasgos esto es lo que podéis encontrar por ahí. No estaría mal que algún teleco o ingeniero de cable aportase algo en los comentarios.

Lo primero es poner un pantallazo de mi router para ver las partes importantes.



Se pueden apreciar claramente dos zonas, 'Downstream Channels' y 'Upstream Channels', o lo que es lo mismo, canales de descarga y canales de subida.

Downstream Channels

Existen dos valores diferentes, el nivel de señal 'Power Level' (en rojo) y el ratio de ruido de la señal 'SNR' (en azul).

Los valores de 'Power Level' deberían estar entre -10 dBmV y +10 dBmV, siendo lo ideal que tienda a '0'. Algo muy importante también es que no haya mucha diferencia entre los valores de los niveles de potencia. En mi caso se encuentra a niveles óptimos, porque todos tienden a '0' y apenas hay diferencia entre ellos.

Los valores del 'SNR' deberñia estar entre 35dB y 45db. Como el punto medio son 40db, lo tomamos como referencia.

Upstream Channels

Para la subida es más sencillo, porque solo tienes el nivel de potencia. Depende de la velocidad de subida se utilizarán más o menos canales.

los valores óptimos deben estar entre 45 a 55 dbmV. En este caso está un poco ajustado a la parte inferior, pero dentro del rango. En algún lado he leído que el valor óptimo es 48, que tomaré como referencia.

Nota: Como referencia cada canal representan 6 Mb aproximadamente. En el caso de la descarga se utilizan 8 canales x 6 Mb = 48 Mb. y en al subida 1 canal x 6 Mb = 6 Mb.

Ahora toca preguntarnos cómo conseguimos ajustar estos valores en el cable-router. Bien, cuando me instalaron el cable-módem original y luego sucesivamente con los cambios por los aumentos de velocidad, simplemente se dedicaban a cambiar el aparato, con lo que nunca se preocuparon por medirme los niveles de señal. Un día, después de tener muchos problemas de conexión y de llamar docenas de veces al servicio técnico (era un 902, pero busqué el número fijo que me sale gratis), me mandaron a un ingeniero de campo que me midió el nivel de señal, tanto lo que llegaba al router, como lo que se generaba en origen. La operadora tiene una aplicación web que indica con valores y colores el nivel de señal. En mi caso todo estaba en rojo. La solución fue poner un atenuador de unos pocos dB para que la señal entrase dentro de rangos, pero simplemente cambió de rojo a ambar. Al estar dentro del rango ya no quiso ajustar más, pero me dió la idea.

SOLUCIÓN

En mi caso el problema es que me llegaba un exceso de señal. Si tus valores son dB negativos y superas los -10dBmV es que tienes un importante déficid de señal y esta solución no te servirá. Llama a tu operador y que te revisen la instalación.

Bueno, vamos a lo que vamos. Si tu problema es un exceso de señal (que es lo habitual), deberás poner un atenuador entre el cable y el router para meterlo en rango óptimo. El problema es que cada cierto tiempo modifican la infraestructura para ampliar la cobertura de las zonas y por tanto los niveles de señal van cambiando sensiblemente. Puedes tener una docena de atenuadores en el cajón e ir cambiando, pero es muy incómodo, con lo que me dió por buscar si existía un atenuador variable y ¡premio!. Por menos de 10€ por eBay puedes encontrarlos (cable variable attenuator). Con esto puedes modificar el nivel de señal y si notas que tienes problemas en tu conexión, miras, ajustas y listo. Yo recomiendo reiniciar el router si la variación ha sido de más de 2 dBmV.

Haciendo un test de velocidad, estos son los datos que consigo conectado por Wifi (se recomienda hacerlo con el cable de red)


Se puede ver que la velocidad de descarga llega a los 50 Mb que tengo contratados, pero la de subida es un poco inferior a los 5 Mb prometidos, pero tampoco me voy a rasgar las vestiduras por unos Kb.

Espero que con esta solución muchos puedan exprimir su conexiones y compartir información con los demás ;-)

domingo, 12 de febrero de 2012

Activar almacenamiento USB en Windows Phone 7.5


Hola,

Una de las cosas que se echan de menos en Windows Phone es el no poder utilizarlo como dispositivo USB. Esta característica sí existía en versiones anteriores de Windows Mobile, pero aquí ha desaparecido. La razón más lógica es que con ello te obligan a utilizar Zune para la comunicación con el dispositivo, al modo de iTunes.

Bien, existe una manera de dar acceso a la parte de contenidos multimedia modificando el registro. La pega es que solo se puede hacer en dispositivos con Zune instalado, con lo que no es realmente una dispositivo de almacenamiento USB, sino un simple acceso a una carpeta del teléfono, pero mejor que nada.

Vamos al tema. Instalamos Zune si no lo tenemos instalado y abrimos el registro de Windows (REGEDIT).

Dentro de HKEY_LOCAL_MACHINE\SYTEM\CurrentControlSet\Enum\USB, pulsamos el botón derecho del ratón para hacer la búsqueda de la cadena ZUNE.



Una vez nos lleve a la zona donde Zune guarda su configuración, vamos a cambiar los valores de las siguientes claves del registro:

ShowInShell => 1
PortableDeviceNameSpaceExcludeFromShell => 0
EnableLegacySupport => 1



Ahora, si pinchas el terminal al PC y cierrasa Zune, te aparece el un dispositivo externo en el ordenador. Bueno, en realidad aparecen 2 (no sé por qué), pero es igual. Funciona, ¿no?.



Comentar que las carpetas no se crean hasta que no sincronizas al menos una vez con Zune. Es decir, que para que aparezca la carpeta Playlists necesitas haber sincronizado/copiado al menos un playlist por Zune. Así con todas. Luego, sin necesidad de utilizar Zune, se podrá copiar el contenido directametne al teléfono.

Aunque no sea un almacenamiento USB real, es lo más parecido que he encontrado y creo que será útil para muchos.

Un saludo,

sábado, 4 de febrero de 2012

Conexión compartida de Internet en Windows Phone


[Actualizado]

Hola,

En estos días que llevo probando el terminal con Windows Phone he encontrado algo que puede ser de interés el poder compartir nuestra conexión de te Internet con otros dispositivos. Es decir, convertir nuestro terminal en un router 3G/HSDPA.

Lo primero que tengo que decir es que he probado bastantes ROMs diferentes en el teléfono:

DZ_LG-E900AT-00-V10b-214-XXX-NOV-09-2010+0 => España libre (OPN)
DZ_LG-E900AT-00-V10b-NEU-XXX-NOV-09-2010+0 =>Norte de Europa libre (OPN)
DZ_LG-E900AT-00-V11c-NEU-XXX-SEP-05-2011+0 => Norte de Europa libre (OPN)
LG-E900AT-01-V10g-214-01-SEP-29-2010+0_DZ => Vodafone España
DZ_LG-E900AT-00-V11b-214-XXX-AUG-17-2011+0 => España libre (OPN)
LG-E900AT-01-V10p-214-01-SEP-02-2011+0_DZ => Vodafone España

Me falta por probar

DZ_LG-E900AT-01-V10h-214-07-SEP-30-2011+0 => Telefónica España

Curiosamente las ROMs libres no tienen la opción de la conexión compartida de Internet. La única que consigue que aparezca la posibilidad de 'tethering' es la ROM de Vodafone. Bien puedes utilizar al última que ya monta Mango, bien utilizar la de WP7 y dejar que se actualice a la última versión. Para ello simplemente hay que conectar el teléfono al ordenador con Zune instalado y automáticamente Microsoft nos aplicará todas las actualizaciones necesarias. Esta es una de las cosas que más me gustan del teléfono, que las actualizaciones las gestiona directamente Microsoft y no el fabricante (aunque van de la mano). De momento la política es tener actualizados todos los terminales a la última versión, cosa que espero que no cambie.

Bien, hemos partido de la ROM de Vodafone y ya tengo 'tethering' activado en mi dispositivo. Alguno se preguntará:

- ¿Cómo se actualiza la ROM del dispositivo?
- ¿Se puede partir de la ROM de Vodafone y utilizar luego otro operador?
- ¿Se puede eliminar la información del operador?

Pues todo lo anterior es posible y más. Lo dejaremos para otro momento que tenga más tiempo, que hoy creo que no está nada mal la cosa.

Un saludo a todos.

Poner Windows Phone en modo desarrollo

Hola de nuevo,

El siguiente post está orientado a todos los pequeños desarrolladores que les gusta hacerse sus propias aplicaciones pero no necesitan ni quieren una licencia de desarrollo porque no van a 'enriquecerse' con su trabajo. Su perfil es más de desarrollo 'hoembrew' que de desarrollo comercial.

Por supuesto un desarrollador que solo quiera hacerse sus aplicaciones caseras no quiere pagar la licencia de desarrollo porque no la va a rentabilizar. Pues bien, es posible configurar el teléfono como desarrollo siguiendo las pautas que en su día hizo el equipo de Chevrom WP7 y que ahora comercializa en ChevronWP7 Labs con el beneplácito de Microsoft y con un coste de 10$ (muchísimo más económico que Apple). En realidad lo que hacen es activar unas claves de registro para indicar al teléfono que es de desarrollo y enlazar con su base de datos para verificar que has pagado. Si no te encuentras en dicha base de datos te desactivan el desarrollo.

Vamos a ver qué claves son y cómo activar el modo de desarrollo. Para los que tenemos la aplicación MFG (##634# para activar y 277634#*# de contraseña) podemos hacer los cambios de registro entrando en la aplicación => Engineer Menu => Other Settings => Edit Registry

[Modo Desarrollo]

- ROOT_PATH: HKEY_LOCAL_MACHINE
- SUB_PATH: \Comm\ Security\ LVMod
- Inpur KEY: DeveloperUnlockState y elije en la caja DWORD
- Input data:  1 y pulsa el botón Set en la parte inferior derecha.

Bien, si apagamos el equipo o lo sincronizamos con Zune se volverán estas claves a la situación anterior. Para evitar que esto ocurra vamos a 'limpiar' los enlaces de chequeo. Voy a seguir los pasos con la aplicación MGF como en el paso anterior.

[Limpiar Enlaces de chequeo]

- ROOT_PATH: HKEY_LOCAL_MACHINE
- SUB_PATH: \Software\Microsoft\DeviceReg
- Inpur KEY: PortalUrlProd y elije en la caja DWORD
- Input data:  <Déjalo vacío> y pulsa el botón Set en la parte inferior derecha.

Cambia ahora:

- Inpur KEY: PortalUrlInt y elije en la caja DWORD
- Input data: <Déjalo vacío> y pulsa el botón Set en la parte inferior derecha.

Además, suele estar limitado el número máximo de aplicaciones desarrolladas por ti que puedes tener en el teléfono, cosa no muy lógica si te gusta mucho la programación. Vamos a ver como desactivarlo.

[Desactivar la limitación de aplicaciones de desarrollo]

- ROOT_PATH: HKEY_LOCAL_MACHINE
- SUB_PATH: \Software\Microsoft\DeviceReg\Install
- Inpur KEY: MaxUnsignedApp y elije en la caja DWORD
- Input data:  2147483647 y pulsa el botón Set en la parte inferior derecha.

Aunque haya explicado estos trucos, si tienes pensado desarrollar y publicar tus aplicaciones yo te recomendaría pagar la licencia. Por muy pocos Euros estás legalmente autorizado para ello y evitarás posibles problemas legales. Este tutorial es únicamente para los que quieren desarrollar y no les interesa una licencia porque no hay ánimo de lucro con su trabajo.

Sinceramente pienso que cuando más gente conozca y pueda desarrollar para una plataforma, más futuro tiene dicha plataforma porque la gente la demandará en sus puestos de trabajo. El beneficio es mutuo en cualquier caso. Si con este post la gente se anima a desarrollar para Windows Phone en su casa, cuando trabajen en empresas del sector y tengan la posibilidad de crear aplicaciones para dispositivos móviles, seguro que su primera elección será justo lo que conocen bien. Además, la licencia de desarrollo es muy barata y como coste en una empresa es ridículo.

Espero que lo encontréis práctico.

Un saludo,

Menú de ingeniería en LG Optimus 7

Hola,

Este primer post va dedicado a todos aquellos que les gusta trastear con los teléfonos y meterse en todos los entresijos de los terminales. Para ello voy a explicar cómo activar una aplicación interna del terminal que nos permite entrar en lo más profundo del mismo. Ojo, hay que tener mucho cuidado con lo que se toca.

- Para activar el menú de ingeniería hay que 'llamar' al número ##634#
- En unos segundos aparecerá una nueva aplicación en la lista llamada MFG
- Al abrirla lo primero que nos pide es la contraseña. Si os queréis acordar sería poner APPMFG#*# con el teclado numérico, o lo que es lo mismo 277634#*#

Ya estáis en el menú de ingeniería. Muy importante para los siguientes posts.

Que lo disfrutéis.

Windows Phone, ¿el Ave Fénix de Microsoft móvil?

Hoy voy a crear un nuevo tema "Windows Phone ".

La función de este nuevo elemento en mi blog es la de mostrar algún truquillo sobre Windows Phone y sobre el terminal LG Optimus 7, que es el que tengo. Es cierto que no abundan los teléfonos con el sistema operativo de Microsoft, pero creo que merece la pena probarlo y poder jugar un poco con él.

A diferencia del IOS de los iPhone y Android tan masivamente instalado en terminales, la filosofía de Microsoft en su Windows Phone me recuerda, salvando las diferencias, al cambio que ha introducido en Windows Vista/7 en el entorno gráfico. Más minimalista, pero si 'rascas' encuentras muchas funcionalidades. Se basa en dos pantallas, el mosaico (colección de accesos directos) y el resto (aplicaciones, utilidades, etc. en una lista). Si queréis echar un vistazo a qué incorpora este sistema operativo podéis ir a la página oficial, donde han colgado algunos videos de como se mueve y como funciona. Enlace: Windows Phone .

Los que conocéis Windows Mobile os puedo decir que no se parece absolutamente en nada. De hecho no es compatible con veriones anteriores  y todas las aplicaciones tienen que estar desarrolladas para él para que funcionen. Los que os guste la programación para dispositivos móviles podéis tener un nicho de mercado en esta nueva plataforma. Hay miles de aplicaciones en el market, pero no tantas buenas. Los que conocéis Android os puedo decir que es mucho más intuitivo y sencillo, pero si rascas puedes encontrar más o menos las mismas cosas. Los que manejáis iPhone os puedo dar el pésame. Es broma, je,je, je. El concepto de IOS (BSD por debajo) es bueno y tendría mucha más salida si se abriese un poco más al mundo de donde surgió la idea hace más de 30 años. No quiero meterme en historia de la informática, pero tanto IOS, como Android proceden del mundo Unix y sobre todo del concepto de código abierto y compartición de conocimientos. Esto choca mucho con las guerras de patentes empezada hace pocos años por los fabricantes, la cual rechazo completamente.

Basta de charla, vamos al lío porque yo cuando me pongo me puedo pasar horas hablando del tema y la idea del blog es que sea con poco texto para no aburrir en exceso.

Después de esta pequeña introducción voy a centrarme en el asunto. Hoy voy a seguir a continuación con otro posts más útil. Como el terminal que me he comprado es un LG Optimus 7, por precio principalmente, voy a ver como poder desarrollar con él de forma casera y sin tener que pasar por caja si realmente no vas a 'mercadear' con ello.

Os espero en la siguiente entrada.