PDA

Ver la Versión Completa : Extraer los datos de la Miband: Ya es posible!


Viriatox
31/01/15, 21:20:37
Buenas a todos, indagando por la web he visto que nuestros amigos de xda-developers han desarrollado ya dos aplicaciones para poder extraer los datos de la miband en csv y el html.

hay dos metodos por ahora:

1) el desarrollado por el usuario XMXM, que funciona desde windows conectando el movil al ordenador (valido con y sin root)

http://forum.xda-developers.com/showpost.php?p=58543466&postcount=369 v4.0e
http://forum.xda-developers.com/showpost.php?p=58564208&postcount=379 v5.1
http://forum.xda-developers.com/general/accessories/xiaomi-mi-band-data-extraction-t3019156 v5.2 [NUEVO]

Novedades de la ultima versión:

v5 01/31/2015
Localization setting is pulled from Mi database - no need to set it manually anymore (in most cases)
Two completely new reports - Sleep Report and Statistics by day of the week.
Fixes to unix shell script encoding.
v5.1 01/31/2015
Fix for incorrect sleep/wake hours calculation
v5.2 02/31/2015
Splitted program into data extract package and analytics packages. Data extract should be pretty stable now and reports could be updated independently.
Spanish translation (thanks to Viriatox)

Screenshots:
http://imgur.com/ALWh4zf
http://imgur.com/P9MLtq4
http://imgur.com/H8ntvcM

"I wrote a program to synchonize data from Mi Band to desktop. The data is being saved to CSV format so you can open it in Excel. I also provide an html file that can load and show usage charts in the browser. The application should be compatible with both rooted and non-rooted phones as long as you have USB debugging enabled and adb can connect to your phone.

"How to use:
Preparation steps:
1. If you plan to use both packages, unpack them both to same directory.
2. Make sure you have USB drivers for your device properly installed and that your device is accessible by ADB when you connect it through USB
3. If you use it on windows, extract package has all binaries included, for Linux, you would need to to manually install android-sdk for (adb binary), sqlite3 and openssl to uncompress zlib data. You will also need to add execute permissions to run.sh by running chmod +x run.sh
4. (Optional) Review config.js and make any changes to your liking (set Goals for sleep hours and daily steps, override UI language)
5. (Optional) If you do not want main report being open every time you run extract, change OpenHTML=Y in run.bat/run.sh to OpenHTML=N

Running application:
1. Connect your phone through USB and make sure USB debugging setting is enabled on your phone.
2. Execute run.bat - if your phone is rooted, the data would be pulled automatically. If your phone is not rooted you would see backup screen and you need to press "Back up my data" button in the bottom left corner.
3. Data from your mi band will be saved to extract.csv file and extract.js. After extraction is complete, if OpenHTML is set to Y, mi_data.html will be opened automatically to show charts for your Mi usage."

http://i.imgur.com/ALWh4zf.gifhttp://i.imgur.com/P9MLtq4.gif


2) el desarrollado por el usuario Bonoboo (solo para usuarios root), Una aplicacion APK independiente para el movil, o un profile para la app Tasker:

What is this
It's Android application / Tasker profile that generates files with all your activity and sleep statistics.
Available two data formats. You can export to any or both.
CSV - table, can be opened in Excel / OpenOffice / OfficeSuite. Delimiter - comma.
HTML - web-page, can be opened in any browser on your PC / phone. Contains table and interactive charts.
Path to files configurable, it is important to upload files into Dropbox and other services.

File will be updated automatically after 30 seconds after starting Mi Band application.
So after each synchronization you will always have fresh data.

http://forum.xda-developers.com/showpost.php?p=58499059

Recopilatorio
31/01/15, 21:40:08
Gracias por traernos esta interesantísima novedad.
Espero poder explorarla mañana.

__Saludos__

YoArnold83
31/01/15, 23:49:41
Muy interesante.

zadock
01/02/15, 00:24:43
Mañana en algún rato le hecho un vistazo.

Muchas gracias compi :D

Recopilatorio
01/02/15, 09:20:51
Primer intento fallido (Motorola G 2014, no root)
Se abre una pantalla tipo MS DOS (:D) con un montón de mensajes de error que no llego a poder leer (pasan a toda velocidad) y se cierra.
A ver si encuentro alguna causa.

__Saludos__

vilereta
01/02/15, 10:03:31
Gracias y muy interesante, el lunes voy a hecharle un vistazo rápido.

Recopilatorio
01/02/15, 10:36:55
Hay una nueva versión para los no root:
http://forum.xda-developers.com/showpost.php?p=58564208&postcount=379

__Saludos__

Recopilatorio
01/02/15, 11:46:20
Nade, sigo con el mismo problema.
Tengo la impresión de que en el .bat hay una indicación de un archivo o una ruta que no se corresponde con la de mi móvil, pero no se cuál :(

__Saludos__

Viriatox
01/02/15, 12:23:52
Hay una nueva versión para los no root:
http://forum.xda-developers.com/showpost.php?p=58564208&postcount=379

__Saludos__


Gracias, actualizo la cabecera

dantezgz
01/02/15, 16:18:11
Algo hago mal con la primera app. No soy root pero en el paso de ejecutar run.bat no tira.

Recopilatorio
01/02/15, 16:50:51
Algo hago mal con la primera app. No soy root pero en el paso de ejecutar run.bat no tira.

Lo mismo me pasa a mi.
No tengo ni idea de programación ni de desarrollo pero jugaría que el problema empieza por que la segunda línea del .bat dice
"set SDPath=/sdcard"
y creo que no tenemos la información en la sdcard sino en la memoria interna.
Ahora bien, ni idea de cómo modificar eso.

__Saludos__

Viriatox
01/02/15, 22:14:55
otra nueva versión... y me sigue sin funcionar :crybaby:

Recopilatorio
01/02/15, 22:28:06
otra nueva versión... y me sigue sin funcionar :crybaby:
Gracias por el aporte y... jolín, estamos gafados con este asunto. Pero vaya, no tardará en caer, que esos de XDA son unos fenómenos.

__Saludos__

JAMELGO
02/02/15, 09:29:18
:oh:

dvilloldo
02/02/15, 14:45:06
Buenas.

Yo sí he conseguido hacerlo funcionar.

Hay que tener activado el modo de depuración USB en el teléfono y hay que tener también instalado el driver USB del teléfono en el ordenador desde el que vas a ejecutar el script.

Mi teléfono es un Nexus 5 con Android 5.0.1, sin root. El ordenador tiene Windows 7.

Al ejecutar la primera vez da error porque no tiene permisos para ejecutar acciones contra el teléfono:

C:\miband>run.bat
El sistema no puede encontrar el archivo especificado.
El sistema no puede encontrar el archivo especificado.
Press "Backup My Data" button on device...
Extraction failed
El sistema no puede encontrar el archivo especificado.
El sistema no puede encontrar el archivo especificado.

Hay que mirar el teléfono, y habrá un mensaje preguntando si permites la ejecución de acciones desde el ordenador. Le dices que si, y que lo recuerde.

Al ejecutar la segunda vez, incluso cumpliendo todos los requisitos, da algunos mensajes que parecen de error (El sistema no puede encontrar el archivo especificado.), pero es porque intenta borrar los ficheros de base de datos que ya existiesen:

C:\miband>run.bat
El sistema no puede encontrar el archivo especificado.
El sistema no puede encontrar el archivo especificado.
Press "Backup My Data" button on device...
apps/com.xiaomi.hm.health/db/origin_db-journal
apps/com.xiaomi.hm.health/db/origin_db
No se pudo encontrar C:\miband\db\origin_db.bak
No se pudo encontrar C:\miband\db\origin_db-journal.bak
El sistema no puede encontrar el archivo mi_data.html.

El último mensaje es porque me faltaba de descomprimir miband_analytics_v52.zip (en el mismo directorio donde está run.bat)

Ejecutando una tercera vez todo va correcto:

C:\miband>run.bat
Press "Backup My Data" button on device...
apps/com.xiaomi.hm.health/db/origin_db-journal
apps/com.xiaomi.hm.health/db/origin_db

Y la información que sale es cojonuda, estupenda :ok:

Saludos.

Viriatox
02/02/15, 15:01:25
Buenas.

Yo sí he conseguido hacerlo funcionar.



Pues yo con el adb y los drivers del movil instalados y el modo depuración activado no consigo que funcione en mi LG G2 (Android 4.4.2)
No me sale en el movil la ventana de "Backup my data"

PD: si editas el archivo config.js y pones en la ultima linea var lang = "es_ES"; ( solo hay que añadir es_ES entre las comillas que ya hay) podrás ver todos los datos en castellano

dvilloldo
02/02/15, 15:14:23
Buenas.

Pues yo con el adb y los drivers del movil instalados y el modo depuración activado no consigo que funcione en mi LG G2 (Android 4.4.2)
No me sale en el movil la ventana de "Backup my data"

¿Qué contienen los ficheros log y log_adb tras la ejecución?

Saludos.

Viriatox
02/02/15, 15:35:20
Buenas, te lo pongo por aqui:

log:

Extract Started
02/02/2015
Renaming
ADB SU copy to sdcard
* daemon not running. starting it now on port 5037 *
* daemon started successfully *

log_adb:

error: device offline

a que se puede deber?

dvilloldo
02/02/15, 15:46:48
Buenas.


* daemon not running. starting it now on port 5037 *
* daemon started successfully *[/I]

log_adb:

error: device offline

Eso me lo daba la primera vez que ejecuté, y me salía un mensaje en el móvil pidiendo permisos de ejecución. Lo he conseguido reproducir, esta vez me ha salido nada más enchufar el cable USB al teléfono (lo tengo en idioma inglés):

662466

Tras dar OK en ese mensaje debería funcionar el script (al menos a mi me funcionó)

Saludos.

Recopilatorio
02/02/15, 16:06:50
Pues nada, ni mensaje de permisos de ejecución ni datos guardados.
Pantalla CMD que pasa a toda velocidad y se cierra. He probado a instalar controladores y me dice que ya los tengo.
Ahora he hecho una prueba en la pantalla CMD, con el comando "adb devices" me dice que
adb server is out of date. killing...
* daemon started successfully *
List of devices attached
ZX1D____ZWP device

¿Alguna sugerencia al respecto?
Muchas gracias.

__Saludos__

Nota: acabo de comprobar que es el el número de mi móvil (Motorola G 2ª generación, con Lollipop 5.0.2 recién instalado, no root)

alucine2
02/02/15, 16:49:26
A mi me funciono con esta version, miband_extract_v51.zip , pero las otras no van muy finas, fallan, y mi telefono esta rooteado, tienen que afinar mas el proceso, porque falla bastante.

dvilloldo
02/02/15, 17:00:56
Buenas.


adb server is out of date. killing...
* daemon started successfully *
List of devices attached
ZX1D____ZWP device

¿Alguna sugerencia al respecto?

Dos sugerencias:

1) Ejecutar el script (run.bat) desde una ventana de ms-dos. Para ver los mensajes que genera más que nada.

2) Buscando el mensaje de error en google (adb server is out of date. killing...) parece que es un error por tener instalado HTC Sync. ¿Has tenido un teléfono HTC? Si es así, deberías desinstalar HTC Sync e instalar el driver específico del teléfono que tienes ahora (Motorola G, según dices). http://stackoverflow.com/questions/5092542/adb-server-is-out-of-date

Saludos.

Recopilatorio
02/02/15, 17:19:04
Gracias DVilloldo.
No, nunca he tenido un HTC, algún Sony Ericsson si, incluso algún Nokia :D
Voy a ver si me aclaro para hacer lo que me comentas del scrip.

__Saludos__

Recopilatorio
03/02/15, 15:53:37
Nada, soy incapaz.
Alguien que entienda del asunto me podría decir como hacer para ver los mensajes que que salen en la pantalla de fondo negro (CMD) cuando ejecuto el .bat
Como digo, sale un mensaje de error y luego otras cosas más que no soy capaz de ver porque la pantalla desaparece rápidamente.
Muchas gracias.

__Saludos__

seravifer
03/02/15, 18:59:27
Cuando dice que tiene que ser accesible por adb, a que se refiere¿? que es adb¿?

Recopilatorio
03/02/15, 23:23:47
Nueva actualización
http://forum.xda-developers.com/general/accessories/xiaomi-mi-band-data-extraction-t3019156
¡Con esta ya me funciona! :D

__Saludos__

grimgooor
04/02/15, 13:46:20
He conseguido hacer funcionar la aplicación mediante una conexión WiFi evitando así poner el cable para evitar cargas y descargas de la batería cuando conecte el dispositivo. Os digo como lo he hecho, básicamente siguiendo las instrucciones que pone el desarrollador.

1. He instalado los drivers de mi Huawei P7 mediente el programa HiSuite (propio de Huawei). Para instalarlos he tenido que poner el móvil en modo Depuración USB.

2. He creado una carpeta en C:/ con el nombre de "miband" (todo en minúscula) y ahí he extraído los dos zips del programa.

2. He modificado el archivo "run.bat" tal y como aparece aquí para que pueda acceder vía WiFi a mi móvil y forzar el archivo de copia de seguridad que necesita el programa para extraer los archivos de MiBand.
http://i.imgur.com/gMPXMJ8l.jpg
Donde está la línea roja tienes que poner la IP del móvil.

3. Una vez terminado de modificar el archivo "run.bat" lo inicié y me salió esto.
http://i.imgur.com/FoRr1g8l.png

4. Por últmo en el móvil aparece una pantalla con letras en esloveno (si..lo he mirado con el traductor de Google para ver que idioma era.. xD) donde tienes que darle a la opción inferior derecha y se abrirá automáticamente en el ordenador una pestaña en el navegador con los datos de la MiBand.
http://i.imgur.com/ndN4lbol.jpg

NOTA: decir que al principio conecté el terminal mediante el cable y una vez que funcionó lo comencé a probar vía WiFi. Para los que quieran conectar el cable decir que cuando lo conectaba se quitaba automáticamente el modo "Depuración USB" y tenía que volver a conectarlo.

Espero que os haya servido y me haya explicado bien... Un saludo.

Recopilatorio
04/02/15, 16:04:13
Muy interesante esto que comentas GrimGoor.
Supongo que en la parte no visible de la captura del archivo rum.bat no hay ningún cambio con respecto al original. En caso contrario estaría bien poderla ver entera.
En cuanto al idioma esloveno... es raro. Prueba a cambiar la última línea del archivo config.js para que quede así
var lang = "es_ES";
Creo que con eso debería salir todo en español.

__Saludos__

grimgooor
04/02/15, 18:25:26
Exacto! En la parte no visible no he realizado ningún cambio por eso no he mandado el texto completo.
Y respecto a lo del idioma esloveno.. sigue apareciendo con dicho idioma pero no es un mal mayor mientras en el html aparezca en español la información. xD.
Muchas gracias.
Saludos.

Viriatox
04/02/15, 20:49:49
el tema del esloveno es cosa de huawei xD

vicalvarock
04/02/15, 21:21:47
algún vídeo tutorial para inutiles:sisi1:

seravifer
05/02/15, 15:18:10
Yo no he conseguido hacer funcionar el script así que lo he hecho manual. Con root pasas la base de datos al ordenador y luego tienes que cambiarle el formato, fácil.
Luego uso Bittorrent Sync para sincronizar cada dia la base de datos.

Mamaun
05/02/15, 15:47:18
Alguien podría pasarme un .csv exportado de mi band como ejemplo? Querría intentar sincronizarlo con fitbit a través de fitnesssyncer

Gracias.

Recopilatorio
07/02/15, 08:50:07
El amigo xmxm del foro XDA sigue haciendo actualizaciones de su scrip para extraer los datos de MiBand (ahora MiFit): ya va por las versiones 5.6 para el extractor y 5.50 para el analizador.
http://forum.xda-developers.com/general/accessories/xiaomi-mi-band-data-extraction-t3019156

Por otra parte, he intentado seguir los pasos dados por Grimgooor y conectar mediante wifi, pero me ha fallado. ¿Debería estar el móvil rooteado para eso?

Un aspecto que me gustaría mejorar, pero no tengo ni idea siquiera si es remotamente posible, sería el de poder extraer los datos concretos de cada fase de sueño de cada noche. Es decir, qué periodos y de qué duración ha habido cada noche de sueño ligero y de sueño profundo. Ahí lo dejo :D

Por último, para Mamaun, aquí tienes un extract.csv para que hagas probatinas.
https://www.dropbox.com/s/2y69wli4thitgfx/extract.csv?dl=0

__Saludos__

grimgooor
07/02/15, 13:31:16
Recopilatorio no hace falta tener rooteado el móvil para hacer eso.

Lo he vuelto a intentar pero esta vez con la tablet siguiendo los pasos que puse anteriormente y tengo que decir que antes de intentar la conexión mediante WiFi hay que hacerlo antes mediante el cable y los drivers propios del móvil para hacer la primera conexión con el ordenador. Después si se comunica correctamente vía WiFi.

Saludos.

Recopilatorio
07/02/15, 16:36:53
Recopilatorio no hace falta tener rooteado el móvil para hacer eso.
Lo he vuelto a intentar pero esta vez con la tablet siguiendo los pasos que puse anteriormente y tengo que decir que antes de intentar la conexión mediante WiFi hay que hacerlo antes mediante el cable y los drivers propios del móvil para hacer la primera conexión con el ordenador. Después si se comunica correctamente vía WiFi.
Saludos.

Gracias GrimGooor.
Creo que el problema, tal y como lo hago, es que a ese router hay varios equipos conectados por wifi. En todo caso, no me resulta especialmente molesto conectar el cable un par de minutos para hacer el backup de datos.

__Saludos__

Recopilatorio
18/02/15, 22:54:51
Hola de nuevo.
El desarrollador xmxm de XDA aporta una actualización de la aplicación de extracción de datos (miband_extract_v57.zip)
Al parecer ahora permite sincronizar la pulsera de Xiaomi con Google Fit.
http://forum.xda-developers.com/general/accessories/xiaomi-mi-band-data-extraction-t3019156

__Saludos__

chape199
19/02/15, 17:27:00
No sabia yo esto! buen post.

yurguen
05/03/15, 17:20:03
Muy buenas,

Me parece super interesante este post, enhorabuena.

A ver si me podéis echar un cable, he conseguido extraer bien los datos pero ahora no se cómo visualizarlos, me sale la plantilla vacía...

Extraigo Mi_band_graphs.html, mi_band_table.csv y mi_band_table.html. Qué hago después con esto? Desde windows no se me visualiza nada al darle a las html, que por defecto se me abren con Internet Explorer.

Gracias!!

legen87
13/03/15, 19:20:09
Hola;
Decir que he creado un vídeo tutorial explicando paso a paso como extraer los datos de la Mi Band a un archivo html. En cuanto se suba a Youtube lo publicare en un nuevo hilo para que quede esto mas ordenado.

Un saludo

MALOW
23/03/15, 10:53:19
Hola;
Decir que he creado un vídeo tutorial explicando paso a paso como extraer los datos de la Mi Band a un archivo html. En cuanto se suba a Youtube lo publicare en un nuevo hilo para que quede esto mas ordenado.

Un saludo

Hola compañero, lo publicaste el vídeo?

mscano
23/03/15, 13:28:52
Hola compañeros,

¿sabeis cuanta memoria interna tiene la xiaomi miband? o sea, ¿cuanto tiempo puede estar registrando actividad (sin conexion bluetooth al movil) antes de que se sobreescriban los datos más antiguos?¿?

rami5
23/03/15, 13:30:40
Hola compañeros,

¿sabeis cuanta memoria interna tiene la xiaomi miband? o sea, ¿cuanto tiempo puede estar registrando actividad (sin conexion bluetooth al movil) antes de que se sobreescriban los datos más antiguos?¿?

Una semana

Recopilatorio
23/03/15, 16:23:26
Hola compañero, lo publicaste el vídeo?

Creo que buscas este enlace
http://www.htcmania.com/showthread.php?t=986173

__Saludos__

timenle
16/08/15, 14:23:21
Os funciona el apk de bonobo? Yo solo he conseguido que me copie un txt, pero nada mås.

La base de datos la puedo sacar siendo root a pelo, pero me gustarîa tratarla

Recopilatorio
14/03/16, 21:56:17
Hola amigos.
Ya se que el reflote de este viejo hilo puede parecer exceso, pero me arriesgo.
Yo he utilizado el procedimiento aquí descrito durante algún tiempo e iba guardando mis datos 'históricos'. Pero ahora he actualizado a Android 6.0 y no soy capaz de recordar qué había que tocar o autorizar en el móvil para que el .bat funcionara y leyese los datos almacenados.
¿Alguien todavía usa ese .bat y me recuerda que era lo que había que configurar en el móvil a conectarlo por USB? Muchas gracias.

__Saludos__

Nota: creo que era "depuración usb" o algo parecido, pero no doy con ello en Android 6.0

Recopilatorio
15/03/16, 22:23:00
Me respondo a medias. Lo primero que hay que hacer (que se me había olvidado) es entrar en Ajustes del móvil, ir a "Acerca del teléfono" y pulsar varias veces: con eso queda visible el apartado de "Opciones de desarrollo" que antes estaba oculto.
En esas Opciones de desarrollo hay que activar "Depuración por USB".
Pero hasta ahí llego: el .bat de extracción que pusieron hace tiempo en XDA (http://forum.xda-developers.com/general/accessories/xiaomi-mi-band-data-extraction-t3019156) parece que no funciona con Android 6 (al menos yo no logro que me haga la lectura de los datos acumulados como hacía antes).
A ver si alguien sigue usando el método y comenta algo. Muchas gracias.

__Saludos__