The other week I had to examine a rather simple data import program, written in VB6. The program reads some numbers from a CSV file, and creates a bunch of SQL INSERTs to transfer them to a database: it worked flawlessly, except for some values with .15 or .45 as the decimal part.
In the end it all boiled down to a code snippet like this (it's VB6, but should compile in VB.NET too, just create a form with a button and a click event in both cases)
Now, the funny part is that if you print, even with as many decimal digits as you like, 8.45 - 5.45, you get, apparently, the number 3.000. Then, why s = 3 is equal to False ? Why Int(s) and Fix(s) = 2?
Never mind that using Double is not recommended in cases like this, in any way - one should use Currency : I wanted to know exactly why there is such an apparently disconcerting behaviour.
I tried to replicate the snippet in C# (using Math.Floor instead of Int()) : same result. After that I extended the snippet with a routine found searching stackoverflow.com (look in the comments for the URL) to decode the internal IEEE 754 format used to store doubles (it is the same for each and every language using double precision floating point numbers since the last iterations of microsoft compilers for DOS I believe. Here's the code:
using System;
using System.Text;
namespace TestDouble { class Program { static void Main(string[] args) { double s, s3;
static string d2s(double d) { // yanked from: http://stackoverflow.com/questions/389993/extracting-mantissa-and-exponent-from-double-in-c-sharp // Translate the double into sign, exponent and mantissa. long bits = BitConverter.DoubleToInt64Bits(d); // Note that the shift is sign-extended, hence the test against -1 not 1 bool negative = (bits < 0); int exponent = (int)((bits >> 52) & 0x7ffL); long mantissa = bits & 0xfffffffffffffL;
// Subnormal numbers; exponent is effectively one higher, // but there's no extra normalisation bit in the mantissa if (exponent == 0) { exponent++; } // Normal numbers; leave exponent as it is but add extra // bit to the front of the mantissa else { mantissa = mantissa | (1L << 52); }
// Bias the exponent. It's actually biased by 1023, but we're // treating the mantissa as m.0 rather than 0.m, so we need // to subtract another 52 from it. exponent -= 1075;
if (mantissa == 0) { return " 0"; }
/* Normalize */ while ((mantissa & 1) == 0) { /* i.e., Mantissa is even */ mantissa >>= 1; exponent++; }
The problem with VB6/VB.NET and C# is that a double precision number is apparently converted to a string representing a decimal number with a maximum of 15 decimal digits. This is in compliance with the standard, as far as I've seen, but it's all that the language can churn out - if I specifiy more decimal digits in the formatting string I end up with the same precision anyway, not surprisingly of course. By the way, '3' is stored as what the IEEE 754 standard defines a 'subnormal' number, all in the mantissa with a zero exponent.
It seems that I stumbled on a really pathological case of double precision rounding. In the original program the numbers represented hours (the integer part) and minutes (the decimal part): it looked like the calculations were wrong only with quarter of an hour! I've event translated the C# program in Java. It seems that Java uses one decimal digit (but only one) more formatting double data - in my case it would have helped though...
static String d2s(double d) { // adapted from http://stackoverflow.com/questions/389993/extracting-mantissa-and-exponent-from-double-in-c-sharp // Translate the double into sign, exponent and mantissa. long bits = Double.doubleToLongBits(d); // Note that the shift is sign-extended, hence the test against -1 not 1 Boolean negative = (bits < 0); int exponent = (int)((bits >> 52) & 0x7ffL); long mantissa = bits & 0xfffffffffffffL;
// Subnormal numbers; exponent is effectively one higher, // but there's no extra normalisation bit in the mantissa if (exponent == 0) { exponent++; } // Normal numbers; leave exponent as it is but add extra // bit to the front of the mantissa else { mantissa = mantissa | (1L << 52); }
// Bias the exponent. It's actually biased by 1023, but we're // treating the mantissa as m.0 rather than 0.m, so we need // to subtract another 52 from it. exponent -= 1075;
if (mantissa == 0) { return " 0"; }
/* Normalize */ while ((mantissa & 1) == 0) { /* i.e., Mantissa is even */ mantissa >>= 1; exponent++; }
Nota bene: mi sono accorto poco dopo aver terminato questa guida che Archos Video trasferito anche se all'inizio funziona dopo un po' si blocca a causa di un sedicente 'license verification error'. Archos Music e Talk funzionano come descritto: però se se siete interessati al player video c'è ancora del lavoro da fare (ho già provato ad adattare il build.prop - niente da fare), comunque lascio il post perchè qualche informazione potrebbe essere utile comunque.
La Archos ha recentemente pubblicato su google play la versione 'universale' del suo player video. Si tratta di un player con una ottima interfaccia utente, e la possibilità di sfruttare share di rete (SMB) e server DLNA, anche se non mi sembra raggiunga il livello di compatibilità di un player come VLC.
Prima di questa release il player era disponibile solo come app di sistema in alcuni tablet archos come il Gamepad o l'Archos 80 XS: in questi dispositivi, basati su chipset RK3066 è sfruttata (a quanto pare) l'accelerazione nativa della GPU. Su altri tablet con lo stesso chipset (come il Mediacom 101 S2 su cui ho testato questa guida, comunque le informazioni dovrebbero essere valide anche per altri tablet con lo stesso hardware e la stessa versione, Jelly Bean, di Android) gira benissimo la versione commerciale del player: se si ha anche un dispositivo Archos - altrimenti sarebbe irregolare - e si vuole provare a usare lo stesso player video sull'altro tablet, ecco come fare. Inoltre il firmware Archos contiene anche una versione di Google Talk e di Magazines (non molto utile in italia credo) che può far comodo su dispositivi come il 101S2 che non dispongono nativamente di queste app.
Per effettuare lo spostamento delle app in questione è necessario:
- saper utilizzare ed eventualmente ricompilare programmi a linea di comando da window e/o linux
- poter almeno leggere dati da una immagine in formato RAW ext3, come quelle dei firmware archos: io ho usato direttamente linux, su window si può provare un tool come http://www.diskinternals.com/linux-reader/
- saper spostare file da/a il proprio dispositivo android, possibilmente con ADB (per il 101S2 vedi la mia guida in questo blog) oppure avere i permessi di root sul device e usare un file manager che li sfrutti (p.es. ES File explorer, per il root su 101S2 vedi qui)
Per prima cosa è necessario procurarsi una immagine del firmware archos. Ad oggi 30/12/12 l'unica disponibile è quella del Gamepad disponibile qui o comunque nella sezione download di www.archos.com.
Il file dovrebbe essere un file in formato standard Rockchip, ovvero l'impacchettamento di un loader e di alcune immagini raw delle varie partizioni da ricreare: tuttavia con i Wendal's tools originali apparsi sul forum di slatedroid (versione compilata qui) o anche la versione specifica per RK3066
non è possibile estrarre le immagini raw dal file update.img. A questa URL su github
menzionata nel thread originale su slatedroid però è possibile scaricare sorgenti di tool alternativi a quelli di Wendal che scompattano senza problemi il firmware archos. Dei tools, l'unico che interessa è rkunpack.c. Lo si può compilare (su Linux, o su Windows, posto che si disponga di un compilatore adeguato come quello del pacchetto cygwin) semplicemente con
cc rkunpack.c -o rkunpack (linux)
cc rkunpack.c -o rkunpack.exe (windows con cygwin)
se non ce la fate a ricompilare da soli rkunpack ecco qui una versione windows ricompilata col mio cygwin (su w7 a 64 bit, ma gira anche su xp a 32, servono anche le librerie cyg*.dll incluse nello zip ovviamente). Una volta posto il file update.img nella stessa cartella di rkunpack.exe e degli altri file dare da prompt dei comandi:
rkunpack update.img
il tool creerà una cartella image con dentro i file .img delle varie partizioni in formato raw/ext3. Il file che ci interessa è il più grande, system.img
Per accedere ai file da spostare io ho copiato i file su una macchina Linux (Ubuntu 11 per la precisione) e da shell ho usato il comando:
sudo mount -t ext3 -o loop /percorso/system.img /home/febo/cartella
ovviamente nell'esempio system.img è stato posto in /percorso ed è stata creata la cartella /home/febo/cartella : fatto questo i file della partizione sono visibili a partire da questo ultimo percorso e ricopiabili a piacere altrove. Alternativamente si può usare un tool windows, come già detto http://www.diskinternals.com/linux-reader/ funziona.
Fatto questo è possibile posizionarsi nella cartella app della partizione e copiare i file .apk delle app che interessano. I file nel caso del gamepad sono:
ArchosMusic.apk (video player archos) ArchosVideo.apk (player mp3 archos) Magazines.apk (applicazione google per abbonamenti) Talk.apk (google talk per jelly bean)
Talk.apk e Magazines.apk sono installabili così come sono, basta copiarli sul tablet e installarli con un file explorer, o apk installer, o altro tool. Io uso ADB da linea di comando così:
adb install Talk.apk adb install Magazines.apk
Provando a fare lo stesso con le altre due applicazioni si ottiene invece un bell'errore MISSING_SHARED_LIBRARY.
Esaminando meglio i due apk (consiglio questo ottimo tool, android-apktool) in effetti si nota che manca un file .jar del framework. Per estrarlo dal firmware archos e reinstallaro prelevare dall'immagine raw montata i file
./framework/com.archos.frameworks.jar
./etc/permissions/com.archos.frameworks.xml
i file devono essere ricopiati con i giusti permessi (644) nelle corrispondenti cartelle /system/framework e /system/etc/permissions del device di 'arrivo'. Seguono i comandi da dare per inserire i file da ADB (posto che i 2 file siano nella stessa cartella di adb.exe).
Io ho usato questo sistema: sicuramente si dovrebbe procedere anche con un file manager come Root File Explorer o ES File Explorer con l'opzione apposita settata, anche se è possibile che sia comunque necessario usare adb remount per rendere scrivibile /system (non ho provato).
Una volta fatto questo al riavvio i due apk dei player archos saranno installabili senza problemi. Da Adb:
Una eventuale versione commerciale del player Archos deve essere disinstallata, altrimenti l'installazione fallirà ancora (da ADB errore SHARED_USER, messaggio generico di installazione fallita da android).
Un problema noto del nuovo tablet Mediacom 101 S2 è l'assenza dell'icona di Gmail nel launcher di sistema. In realtà la cosa è dovuta alla 'non ufficialità' della presenza delle Google apps nel firm del tablet: l'app in se e per se è presente, però non appare nell'app drawer e non c'è un modo semplice per far apparire l'icona sull'home screen. Per il momento l'unica soluzione trovata è stata ..installare un altro launcher.
Il problema si verifica con i due firmware di 'fabbrica' del 101S2: con il firmware presente fino a qualche giorno fa sul sito Mediacom bastava aggiornare Gmail e l'icona appariva subito. Il firmware però aveva anche la 'feature' di disabilitare la fotocamera posteriore del tablet ed è stato recentemente sostituito con l'immagine del firmware 'di fabbrica' del 19/10/2012 (vedi la mia recensione al riguardo). Visto che per il momento il rilascio di un aggiornamento vero sembra allontanarsi ho speso un po' di tempo per approfondire una mia idea relativa alla creazione 'manuale' dell'icona smanettando sulle impostazioni del launcher stesso. La ricerca ha avuto - almeno sulla mia unità - successo. Questo è il resoconto, ovviamente non posso offrire alcuna garanzia che funzioni anche con il vs 101S2, se perdete dati o altro sono problemi vostri, etc.
La procedura è stata provata con un firmware del 19/10/2012 flashato dall'immagine scaricata dal sito mediacom. Dovrebbe funzionare tranquillamente anche con l'altro firmware del 27/9/2012 ma non ho avuto modo di provare. Oltre a questo i requisiti sono:
- il tablet DEVE ESSERE ROOTATO : seguire una delle guide presenti online se non lo è già, ad esempio la mia.
- serve un file manager che sfrutti i permessi di root e consenta di copiare file da/a qualsiasi parti del file system del tablet. Io ho usato ES File Explorer abilitando dalle opzioni la modalità root, ma va bene qualsiasi altro programma simile
- bisogna essere in grado di spostare dei file dal tablet al proprio PC o viceversa (io ho usato lo stesso ES File Explorer in modalità LAN, ma ovviamente va bene qualsiasi altro sistema)
- serve un editor di file SQLite. Io ho usato 'SQLite Database browser' un ottimo freeware disponibile per tutte le piattaforme.
- per semplicità potete anche scaricare dal mio sito questo file con i dati dell'icona gmail già pronti da copiaincollare.
Se non avete un minimo di pratica nella gestione di qs file sia sul tablet che su android, sconsiglio di procedere oltre: fate meglio ad aspettare la prossima release del firmware: se non sapete cosa fare rischiate di dover riflashare il tablet (cosa ormai non drammatica vista la disponibilità di un'immagine finalmente funzionante dalla Mediacom)
Il trucco consiste semplicemente in questo: il launcher standard tiene le impostazioni delle icone in una tabella chiamata 'Favorites' in un database SQLite contenuto nel file /data/data/com.android/launcher/databases/launcher.db nella memoria del tablet. Un'icona è semplicemente un record di questa tabella, con campi relativi al nome dell'icona, all'apk da lanciare, alle coordinate dell'icona e al suo tipo etc. Ho preso da un altro dispositivo android (nella fattispecie, un'emulatore) i dati dell'icona, li ho riscritti su una copia del file launcher.db preso dal 101S2 e ho riscritto il file sul tablet (cosa possibile SOLO da root). Riavviando subito il tablet l'icona di Gmail appare finalmente senza problemi apparenti.
Per procedere la cosa più semplice è aggiungere nel punto in cui si vuole fare apparire l'icona di GMail l'icona di una qualsiasi altra app: poi basterà cambiare i campi della tabella rilevanti. Nell'esempio mostrato io ho aggiunto l'icona di 'Play Books' ma va bene qualsiasi icona.
Una volta fatto questo si tratta di localizzare il file launcher.db nella cartella /data/data/com.android/launcher/databases del tablet col file manager e di spostarlo in qualche modo sul proprio pc, dove in precedenza sarà stato installato SQLite Database Browser. Consiglio di copiare il file launcher.db su una sua cartella separata. Lanciate l'editor e localizzate il file con l'opzione Open Database del menu File. Fatto questo, scegliete la tab 'Browse Data' e la table 'favorites'. Dovrebbe apparire la lista delle icone del vs tablet, in fondo ci dovrebbe essere l'icona che avete aggiunto per tramutarla in quella di gmail. Nell'esempio è evidenziata la 'Play books'
I campi da modificare per fare questo non sono molti, eccoli (ovviamente si vedono scrollando orizzontalmente verso destra) title: titolo dell'icona, va cambiato in
Gmail
intent: 'cosa' chiamare, inserire (esattamente) questo testo:
#Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.google.android.gm/.ConversationListActivityGmail;end itemType: è un valore numerico che se non lo fosse già deve essere messo a 0 (zero). iconPackage: cancellare il valore presente (altrimenti rimane l'icona dell'applicazione di partenza)
iconResource: cancellare il valore presente (altrimenti rimane l'icona dell'applicazione di partenza, come sopra) icon: deve contenere la scritta PNG preceduta e seguita da due caratteri speciali. Se non ci fosse, basta copiaincollarla da un'altra riga della tabella.
Ho messo in linea il file http://www.delenda.net/varie/launcher.zip che contiene il database preso dall'emulatore con i dati già pronti per un'icona gmail da copiaincollare: la cosa più semplice è lanciare due sessioni di SQLite Database browser e copiare i valori dei 5 campi indicati sopra. Il file E' SOLO UN ESEMPIO NON RICOPIATELO SUL TABLET !!!
Una volta editati i campi salvate le modifiche col bottone apposito e riportate il file sul vs tablet.
Col file manager DOTATO DI PERMESSI DI ROOT copiate il file modificato nello stesso percorso /data/data/com.android.launcher/databases da cui era stato preso. In teoria l'operazione è pericolosa, nel senso che si potrebbe corrompere il file ma ho fatto diverse copie senza problemi nel ricercare la giusta combinazione di campi e il loro significato (idealmente bisognerebbe procedere in altro modo, ev. da recovery). Ad ogni modo appena riscritto il file launcher.db è bene riavviare il tablet. Se tutto va bene dovrebbe apparire l'icona di Gmail. Se l'icona appare ma da 'applicazione non installata' oppure c'è ancora l'icona della vecchia applicazione o ancora un'icona col robottino verde di android avete probabilmente sbagliato a copiare qualche campo (riprovare).
Nota bene: ho anche provato la procedura con l'APK di Gmail 4.2 disponibile in questa pagina : è una versione di Gmail più aggiornata, la cui installazione però richiede ancora i permessi di root, visto che bisogna disintallare il Gmail di sistema (ad esempio con Link2SD o altro 'root uninistaller')
Maledetto autunno piovoso e lavorativo che mi ha fatto scoprire in colpevole ritardo questa opera di ignoti vandali che dovrebbero essere staffilati in pubblico per le loro devastazioni, non prima di essere tuttavia ringraziati per il loro acvme.
Tutto somato comunque un candidato senza differenzi da Renzi alla carica di p.d.c. concorrerà comunque... C'è da pensare...
Stasera ero in vena di rischiare il mio nuovo tablet Mediacom 101S2. Ho provato a rootarlo seguendo alcune indicazioni raccolte in rete. E' andata bene, ed ecco il resoconto in una guida ragionata.
Questo testo descrive come ottenere i permessi di root sul Mediacom 101S2. Ho testato quanto segue personalmente sul mio tablet, tuttavia tenete presenti queste avvertenze.
1) Se danneggiate in qualsiasi modo il vostro 101S2, sono problemi vostri e non miei.
2) L'operazione potrebbe invalidare la garanzia del 101S2.
3) Le conoscenze richieste per effettuare la procedura sono quelle di un utente avanzato di Windows (installazione di driver, uso del prompt dei comandi e dei file)
4) Alla data di oggi 28/11/2012 è possibile effettuare un ripristino del firmware in caso di problema, ma non si ripristina il 100% della funzionalità iniziale, visto che il firmware del 16/11/2012 attualmente scaricabile dal sito Mediacom rende inutilizzabile la fotocamera posteriore (cfr. il post precedente)
L'operazione è stata testata su un 101S2 con firmware Numero Build Mediacom M-MP101S20120927: per vedere il numero di build basta andare in Settaggi/Impostazioni sul tablet. Esistono almeno altri 2 firmware.Uno con build 20121019, sempre 'di fabbrica' ma con data diversa, e quello del 20121116 già menzionato. Mediacom ha promesso un nuovo firmware appena possibile, a quanto mi risulta.
Ho testato la procedura su Windows XP SP3. La procedura dovrebbe essere la stessa su Windows 7, e il tool usato per il root ha anche uno script per Unix/Linux: tuttavia mi limito a descrivere la procedura su Windows.
Per procedere è bene avere il tablet carico (meglio evitare di tenerlo in carica durante l'operazione visto che la presenza del caricabatterie cambia le modalità di reset) ed usare il cavo mini USB fornito con il tablet e non un altro.
Il primo step è quello di attivare sia sul tablet, che sul PC, il supporto ADB. Consiglio di fare questo con i driver google (e non con quelli PDA.NET) seguendo le istruzioni della mia guida che ho pubblicato su questo blog giorni fa. E' in realtà il passo più complicato, ma è assolutamente necessario. Dovete installare l'android-SDK, modificare i file di configurazione dei driver, installarli, e testare il buon funzionamento dell'ADB prima di procedere.
Una volta fatto questo ottenere i permessi di root è piuttosto semplice grazie a un programmino creato da un utente del forum XDA-Developers, che usa il nickname "Bin4ary". Il 'sito web' del programmino è questo thread del forum in questione. Ho testato la procedura con la versione 1.6 del tool, che si chiama 'Root with Restore by Bin4ry'. Non è l'ultima versione, e secondo altri utenti del 101S2 le ultime possono non funzionare. Comunque trovate la versione 1.6 cercandola su google, oppure anche qui.
In cosa consiste il tool di Bin4ry? Si tratta di uno script batch, un file .BAT MS-DOS, che utilizza i comandi ADB di copia file e reboot per applicare in modo semplice al tablet un bug noto di Android 4.1 che consente di ottenere l'accesso root in un vasto numero di telefoni e dispositivi. Lo script richiede che i driver ADB siano correttamente installati e che il tablet sia collegato al PC con l'opzione 'Debug su USB' abilitato, come spiegato nella guida sull'ADB. Per effettuare l'operazione utilizza alcuni file android e alcuni file copiati dall'SDK presenti nella cartella "stuff" dell'archivio di 'Root with Restore'. Lo script batch vero e proprio è RUNME.BAT, gli esperti possono anche esaminarlo con un editor di testo per controllare le operazioni effettuate. Il file runme.sh dell'archivio è semplicemente la versione Linux dello script.
Per procedere, dopo aver collegato il tablet e scaricato il file, estraetelo: è meglio cercare una versione del tool in formato .ZIP. L'archivio va estratto in una cartella qualsiasi del PC. Io ho estratto l'archivio in "C:\Root_with_Restore_by_Bin4ry_v16", il default estraendo il file in C:\ col supporto cartelle compresse di windows.
Una volta fatto questo si può fare doppio click su RUNME.BAT da gestione risorse, oppure cosa che preferisco, lanciare un prompt dei comandi (da amministatore su Windows 7) posizionarsi col comando CD sulla cartella e lanciare il programma scrivendo RUNME.BAT e dando invio.
Appare in ogni caso questa schermata:
L'opzione da scegliere è 1). La 2) "Special.." non riguarda il 101S2. L'opzione x) Unroot serve ad annullare il rooting e a riportare il tablet alle condizioni iniziali.
Una volta fatto questo il tool inserisce alcuni file sul tablet e fa partire, sul tablet, un'applicazione di sistema di Android per il restore dei settaggi. E' semplicemente il 'trucco' usato per ottenere i permessi di root. Se tutto va bene appare questa scritta:
Sul tablet parte un'app che chiede di effettuare un ripristino, un restore per i non-anglofoni, rispondere affermativamente.
Fatto questo appare questa altra scritta:
Entro 10 secondi il tool invia tramite ADB il comando di reboot al tablet, che dovrebbe ..obbedire. Il 101S2 si resetta, e il tool attende che riappaia per completare l'operazione. E' meglio NON cercare di acceere al tablet dopo il riavvio. Come scrive il tool in inglese, se qualcosa va storto il tool andrà avanti su un ciclo di attesa infinita. Dopo il primo riavvio se tutto va bene, la cosa durerà al massimo un paio di minuti, il tool scriverà:
'Going to copy files to it's place', grammaticalmente scorretto ma a questo punto se tutto va bene il tablet farà il reboot una seconda volta e l'operazione sarà conclusa.
A questo punto si può chiudere la finestra del tool e riaccedere al tablet. Nella mia esperienza non è stato toccato nessun dato o app, mi è solo tornato lo sfondo dell'home screen di default.
Il tool installa una nuova piccola applicazione, 'Super SU', che fa il log degli accessi in modalità root ed opzionalmente evita di confermare o negare ogni volta per applicazioni specifiche i permessi di root: è normale trovarsela nel drawer delle app e volendo si può disinstallare. Attenzione che se si disabilita un'applicazione, è il SuperSU a non farla andare in modalità root, anche se l'exploit di per se funziona.
Tutto qui, con app come 'Root Check' si può controllare il buon funzionamento dell'operazione e iniziare ad usare app che richiedano i permessi di root.
Se qualcosa è andato storto.. leggetevi le avvertenze iniziali. Sarebbe meglio se Mediacom mettesse in linea, se non un firmware aggiornato, almeno le immagini dei firmware di fabbrica, per ogni evenienza. Io gli ho già scritto, fatelo anche voi a supporto.mediacom@mediacomeurope.it
Come già scritto, ripetendo l'operazione e scegliendo x) si dovrebbe poter tornare indietro, tuttavia non ho ancora testato questa possibilità. Vi conviene salvarvi una copia della cartella del tool, se l'operazione va a buon fine.
Ormai è una settimana che ho sottomano il nuovo tablet Mediacom 10.1S2, preso con la promozione 'Star's tablet' di Expert. Dopo averlo usato non poco (anche troppo) in questi giorni e dopo essermi confrontato sui forum con altri utenti di questo nuovo dispositivo, è il momento di una recensione più ragionata e meno iperbolica su un prodotto dal prezzo piuttosto interessante, dalle prestazioni assolutamente più che adeguate al prezzo richiesto e che interessa credo una larga fetta di pubblico in questo momento.
Gli Extra.
Innanzitutto partiamo dagli 'extra' forniti col tablet in promozione. Dei 20 film promessi solo 2 sono in formato fisico. 'Cattivissimo me' è in una confezione Blu-Ray+DVD (2 dischi) con contenuti speciali e la possibilità di scaricare una digital copy separata. L'altro disco è il DVD de 'Il prof. dott. Guido Tersilli primario della clinica Villa Celeste convenzionata con le mutue', un vecchio film di Alberto Sordi, il sequel de 'Il medico della mutua'. Gli altri film, insieme comunque ai primi 2 titoli, sono scaricabili online. Ecco la lista:
I film si scaricano installando un'app da un sito indicato sul libretto allegato nella confezione, e registrandosi con un codice scritto nello stesso opuscolo. La applet consente di scaricare i film una sola volta. I film sono fisicamente dei file .mp4 di circa 600-800 mb. Il download sarà disponibile fino al 15/5/2013. Attenzione: se l'app viene disinstallata, o anche se si cancellano i soli dalle impostazioni, non è più possibile riaccedere anche se non si sono ancora scaricati tutti i film (aggiornamento: contattando l'email di supporto nel libretto in questi casi è possibile farsi riattivare l'account).
Teoricamente i file dovrebbero essere visualizzabili solo sul tablet. Tuttavia ho provato a copiare i file .mp4 su una chiavetta USB e visualizzarli su PC. Con Videolan VLC si vedono tranquillamente. Solo 'Cattivissimo Me' è stata effettivamente scaricata una licenza digitale. Ho anche provato a riprodurli su un BD Player Samsung che legge un po' di tutto, ed ha anche il Cinavia: nessun problema, i file sono privi di protezione o licenze.
I film mediamente non sono granché specie per chi come me apprezza il cinema in lingua originale: è presente il solo audio italiano. La qualità dei film scaricati è a livello DVD, o anche un po' inferiore. Non sono in HD: diciamo che sono a livello di un Divx in risoluzione standard.
Il secondo extra è un cosiddetto abbonamento di due mesi alla digital edition di Corsera e Gazzetta dello Sport (questo si trova in quasi tutti i tablet Mediacom indipendetemente dalla promozion Expert). In realtà sul tablet sono presenti le app per accedere ai due quotidiani online. Bisogna fare la registrazione tramite l'applet e poi appare semplicemente la possibilità di abbonarsi con addebito sul telefonino (pagamento Mobilepay) con i primi 60 gg di prova gratuiti 'offerti da Mediacom'. Se NON si disdetta l'abbonamento entro 60 giorni, dopo si inizia a pagare. Una volta registratisi con l'applet si può anche accedere all'abbonamento dal PC. N.B. Per ora non ho ancora attivato l'abbonamento tuttavia pare ci sia un malfunzionamento di qualche genere con le app dei due giornali che sembrano diverse da quelle standard del Corriere della Sera. Può darsi che siano aggiornate dal nuovo firmware (aggiornamento: in effetti le app funzionano ma sembrano non consentire l'inserimento del proprio numero di telefono e conseguentemente del PIN inviato tramite SMS per attivare la promozione - tuttavia si riesce ad aggirare il problema con un semplice ...copia e incolla android da una qualsiasi altra app che supporti la scrittura di un testo qualsiasi)
Comunque nella scatola si trova il tablet in una busta di plastica leggera, l'alimentatore di rete, un corto cavo OTG (microUSB maschio, USB femmina) e un cavo più lungo microUSB maschio, USB maschio. Il manuale di istruzioni in più lingue mostra come accendere il tablet e poco altro. Oltre a un foglietto di carta che ricorda la promozione per il Corriere non c'è altro. Non ci sono dischi per il ripristino del firmware, custodie od altri accessori.
Il tablet è fornito con una batteria interna (non rimovibile ne sostituibile dall'utente, come nel 99% dei tablet) correttamente semicarica al 60%. Come al solito è meglio caricarla una prima volta completamente prima di usare il dispositivo.
Una ricarica completa dura anche 6-7 ore. L'indicatore del tablet mostra un valore di carica del 99% per un tempo inusitatamente lungo, ma è una 'feature' di Android più che del tablet. A un certo punto il led di carica passa dal rosso al verde e la batteria raggiunge il 100%. Il manualetto consiglia di 'non usare il tablet a caricabatterie acceso per salvaguardare la vita della batteria', ma è una precauzione a mio avviso eccessiva, anche perché dispostivi di questo tipo sono veramente spenti e inattivi solo con la batteria completamente scarica.
Il caricabatteria è da 5V,2A, con uno spinotto da 2,5 mm (NON è compatibile Nokia). NON è supportata la carica via USB o anche la semplice alimentazione: ci vuole il caricabatterie per forza.
Mediacom vende o vendeva anche un caricabatterie 'universale' per auto che ha anche uno spinotto compatibile. Costa circa 12 euro, si trova da Expert e funziona anche con un adattatore da 220V a presa auto - posto che questo abbia un amperaggio sufficiente.
Pare che il 101S2 sia una versione del tablet di fabbricazione cinese Sanei N10 Dual Core: su ebay è possibile reperire caricabatterie compatibili N10 che in effetti sembrano adatti anche al 101S2. Il sito web ufficiale di Sanei è questo, ma non sembra particolarmente accessibile per chi non capisce il mandarino.
Il 10.1S2 esce dalla busta con uno sticker che ricorda le principali caratteristiche tecniche, e una pellicola protettiva per il display. La pellicola può essere lasciata in sede, non impedisce l'uso del touch - comunque c'è chi preferisce toglierla e si trova più facilitato nell'interfacciarsi col tablet.
Le dimensioni del tablet sono circa 256mmx176mm. E' praticamente l'ingombro di un Galaxy Tab 2 10.1 Rispetto ad un iPad è circa 1 cm più lungo orizzontalmente e 1 cm più corto verticalmente, guardandolo in 'landscape'. Il formato dello schermo è 16:9 e la risoluzione 1280x800. Lo schermo è effettivamente un IPS, retroilluminato a led: ha un'ottima visibilità ad angoli anche molto bassi.
In alto sul lato più lungo sopra lo schermo è presente una fotocamera da 0.3mp (formato VGA): per applicazioni di videochiamata è sufficiente. Sul retro invece c'è in posizione semicentrale una camera da 2mp. La qualità di questo sensore è appena sufficiente (siamo un po' più in basso del mio vecchio Nokia 5800). Non è presente alcun tipo di flash a led. Qui (1, 2, 3, 4, 5, 6, 7, 8, 9) ci sono alcuni esempi di foto prese cona la fotocamera posteriore. Qui invece (1,2) due (scarsissimi) scatti con la fotocamera frontale. L'applicazione di sistema inclusa per le foto consente anche di scattare foto panoramiche, ecco un esempio, fatto con la fotocamera posteriore.
I connettori sono tutti sul lato sinistro: dal basso alimentazione con led, cuffie (ovviamente jack 3.5mm), connettore miniUSB, forellino di reset da attivare con una graffetta (c'è un secondo forellino apparentemente inattivo...) connetore miniHDMI, slot microSDHC, pulsante di accensione-stand by.
Sul retro sulla parte opposta sono presenti le casse, inutile aspettarsi una grande qualità sonora da questi altoparlantini.
La CPU fornita è un Rockchip RK3066 Dual Core: una delle tante implementazioni dell'architettura ARM Cortex A9. La GPU è una Mali 4000 Quad core. L'RK 3066 viaggia a 1.6 Ghz. La RAM è 1 GB, e la flash interna è da 16 GB, disponibili all'utente poco più di 13 gb.
La memoria interna è espandibile tramite lo slot microSDHC che ospita schedine fino a 32 gb (non senza qualche problema come si può leggere più avanti. Tramite la porta USB è possibile ovviamente usare chiavette USB o dischi rigidi esterni. Contrariamente a quanto ho scritto nella prima version di questa recensione il table supporta la lettura di dischi o chiavette formattate in NTFS. Per i dischi rigidi c'è bisogno praticamente sempre di una forma di alimentazione esterna, eventualmente tramite un hub alimentato, però l'NTFS è letto. Non è supportata l'exFAT.
Software
Il 10.1S2 è fornito con una versione sostanzialmente standard di Android 4.1 Jelly Bean. E' personalizzata l'animazione iniziale (facilmente sostituibile, come descritto nel post precedente), per il resto il tablet presenta alcune immagini di prova in galleria, un video trailer in mp4 e due mp3 di musica new age. Le due app Corriere/Gazzetta sono preinstallate. E' presente l'Advanced Task Killer, l'APK installer per gestire file APK direttamente, un semplice file manager e lo SlideMe Market. Ci sono anche le due app Gmail e Google Play, ma sono, almeno nella release iniziale del firmware 'out of the box' nascoste. Per quanto riguarda Google Play, lo si può fare partire da APK Installer. Volendo fare apparire l'icona sull'home screen bisogna procedere così: esportarlo in apk e poi reinstallarlo sempre da APK installer. Una volta fatto questo e aggiornato tutto dal Play Store stesso l'icona appare nel drawer delle applicazioni e può essere spostata sull'home screen. Per GMail invece, sempre con la versione base del firmware (vedi dopo) non c'è un modo di far apparire l'icona a meno di non usare altri launcher come ADW Launcher. Io per ora mi limito ad usare il widget di GMail e a lanciarlo da li (lo si può fare anche da APK Installer ma è più scomodo)
Utilizzo
Nell'utilizzo comune il tablet è effettivamente ottimo, molto veloce e molto fluido, come confermano le altre recensioni più entusiastiche apparse già in rete: lo scrolling è molto rapido, la navigazione anche in modalità desktop su pagine complesse con Chrome o Firefox per Android, davvero immediata. Il display è molto nitido e di ottima qualità.
Per quanto riguarda i giochi effettivamente anche con giochi molto pesanti come Dead Trigger non ho notato alcun rallentamento.
Nell'immagine sotto riporto uno screenshot del benchmark Quadrant Free con il risultato ('Tuoi dispositivo') del 101S2 confrontato con altri tablet.
La riproduzione di file multimediali con i due player video forniti è buona: si può gestire una ampia gamma di formati: in ogni caso sul market ci sono app gratuite per ogni esigenza a partire dalla beta di VLC per Android. Il collegamento mini HDMI a tv o monitor esterni è immediato e duplica lo schermo del tablet, a differenza dei collegamenti analoghi su altri dispositivi, anche di marca. Eventualmente con un telefono Android che faccia da telecomando ed eventualmente uno storage adeguato su USB il 101S2 può anche fungere da media center.
Connettività
Per quanto riguarda le periferiche esterne, tramite il connettore mini USB si possono collegare (oltre alle chiavette) tastiere e mouse standard senza bisogno di driver particolari. Ho provato un piccolo hub USB 2.0 passivo con attaccati tastiera, mouse e chiavetta senza alcun problema. Anche la mia vecchia tastiera/mouse/telecomando Logitech wireless a lunga distanza non ha dato alcun problema di collegamento.
C'è anche il Bluetooth: anche qui nessun problema particolare ad accoppiare tastiere e mouse BT. E' possibile anche usare l'audio BT con profili headset e A2DP. In altre parole ci si può collegare ad auricolari BT e a sistemi audio ad alta qualità sempre BT. Con uno stack bluetooth di terze parti (quello fornito con Windows non lo fa) si può anche utilizzare l'audio del PC per musica e video invece di quello interno sfruttando il profilo A2DP.
Il 101S2 non ha sensore GPS però sono riuscito ad accoppiare un'antenna GPS Nokia LD-4W. Per utilizzare un'antenna GPS è necessario utilizzare una delle due o tre app 'Bluetooth GPS' disponibili gratuitamente sul play store. Le app, che richiedono tutte l'abilitazione di 'Posizioni fittizie' (mock locations) in Settaggi/Opzioni sviluppatore simulano l'antenna GPS con le applicazioni che la richiedono. E' anche possibile usare un altro telefono Android con antenna GPS come antenna esterna: questo richiede un'altra app gratuita da far girare sul telefono, Gps2Bluetooth.
Il collegamento Wifi, col mio router TP-Link dotato di DD-WRT è eccellente, utilizzabile in tutto l'appartamento anche se il router stesso è posto in posizione tuttaltro che ottimale. Anche il tethering col mio telefono LG P500 Optimus One funziona.
Nei settaggi è presente anche la Ethernet: tuttavia non è chiaro con quali tipi di adattatore USB-Ethernet funzioni e se effettivamente la funzionalità è sfruttabile.
Non sono presenti interfacce IR o altre connessioni. Per l'uso tramite ADB rimando al post precedente.
Nella mia esperienza il tablet si maneggia piuttosto bene, anche se il retro in metallo satinato non da un grip entusiasmante. Il dispositivo non pare scaldarsi in nessun caso anche con utilizzi piuttosto pesanti.
Difetti
Veniamo ai difetti riscontrati. Seguendo i forum pare che in certi casi ci siano tablet con pixel bruciati, scricchiolii, impossibilità di usare il wi-fi. Può darsi che ci siano batch difettosi in qualche store: ad ogni modo almeno da Expert non ci sono per esperienza personale grossi problemi a farsi sostituire subito il tablet. Qualcuno lamenta una certa difficoltà ad usare il wi-fi, ma è difficile dire in questi casi se si tratti di problemi relativi al tablet, al router, o ad interferenze con altre reti sempre più numerose.
Al momento però il vero punto debole del tablet sembra risiedere nello slot microSDHC. Personalmente ho visto come una microSDHC Sandkisk da 32 gb classe 10 (tra le più veloci) assolutamente originale inizialmente venga letta però entro poche decine di minuti si renda in pratica inaccessibile bloccando le applicazioni che tentano di accedervi. La schedina su PC funziona perfettamente, anche se col mio camcorder HMX-H200 in effetti da problemi. Con altre microSDHC meno capienti (2,4,8gb) e meno veloci non ho avuto questi problemi - con un'altra card sempre Sandisk da 8gb ho visto degli smontaggi 'spontanei' con frequenza più bassa della card da 32 gb. Spero che il problema si risolva con uno de prossimi aggiornamenti del firmware e non dipenda da problemi hardware del lettore interno: uno dei punti di forza dei tablet 'cinesi' economici rispetto a prodotti più blasonati è la presenza dello slot microSDHC e di connettività standard. Aggiornamento: con la mia unità una Samsung 32gb classe 10 proprio non viene vista (altri utenti invece hanno avuto risultati migliori); una Kingston 32gb classe 4 invece pare finalmente non dare problemi.
Aggiornamento: questa è una lista dei problemi riscontrati col 101S2 che ho inviato a Mediacom. Dovrebbe tutto essere risolvibile con un upgrade software, speriamo arrivi quant prima
- le istruzioni del firmware attuale (del 16-11-2012) indicano di
premere il tasto VOL - (volume meno): il tasto corretto è VOL + (volume
+) (NB: per entrare in recovery mode usare VOL+ e Power a tablet spento, poi solo VOL+ all'apparire dell'icona col logo di Android Jelly Bean)
- tutti quelli che hanno installato il firmware del 16-11-2012
lamentano l'impossibilità di utilizzare la fotocamera posteriore, sia
con la app di fabbrica che con altre app
- il 'vero' firmware base datato 27-9-2012 o 19-10-2012 non è
disponibile per il download, cosa che in caso di necessità di ripristino
del tablet mette l'utente nell'impossibilità di avere un ripristino al
100%, a meno che il firmwar del 16 non sia corretto
- su molti tablet si verificano seri problemi di compatibilità con
le schedine microSDHC: i modelli più capaci e più veloci (tipicamente le
32gb classe 10) non sono riconosciute del tutto oppure si smontano
spontaneamente o ancora bloccano le app che provino ad adccedere ai dati
contenuti
- se si spostano delle app sullo spazio di archiviazione interno
(/mnt/sdcard) e successivamente si inserisce una chiavetta usb oppure
una microSDHC, allora la app spostata si rifiuta di partire con un 'app
non installata', questo fino a quando si fa riavviare il tablet (con o
senza la pennetta/chiavetta usb)
- le app di fabbrica del corriere e della gazzetta rendono difficile
l'inserimento del numero di telefono e del pin per l'attivazione: a me è
riuscito solo con un copia e incolla. Non solo una volta attivato
l'abbonamento la app continua a fare il caching delle pagine del
giornale sullo spazio di archiviazione interno, saturandolo rapidamente.
Non è possibile cancellare questi dati da settaggi: è necessario fare
un reset generale alle impostazioni di ssitema, perdendo tutto, o
procedere a forzare la modalità root e usare app specifiche. Non è
possibile nemmeno usare le app 'standard' del corriere, perché vanno in
conflitto con quelle di fabbrica, che no sono disinstallabili.
Aggiornamento: mi hanno risposto venerdì 7/12 con un laconico 'a breve uscirà un nuovo firmware sul sito'
I firmware
Una parola sul firmware: le due unità che ho avuto sottomano avevano un firmware (per vederlo basta usare un benchmark come Quadrant o AnTuTu) datatao 27/9/2012. Ho visto in rete lo screenshot di un altro firmware datato 19/10/2012.
Di questi firmware non sembrano essere disponibili in rete (e neanche col tablet, come già detto) le immagini di ripristino. Il 16 novembre Mediacom ha pubblicato sul suo sito un altro firmware: questo firmware inizialmente era fornito con istruzioni di installazione sbagliate, visto che per preparare il tablet al flashaggio bisogna usare il tasto Volume+ e non il tasto di reset. Comunque le istruzioni sono state corrette (o quasi, visto che indicano il tasto Volume-): il firmware in questione è privo delle immagini, del video e degli mp3 di prova, però dispone di Google Play e icona GMail correttamente inseribile sull'home screen. Peccato che, come confermatomi da Mediacom e dall'esperienza di altri utenti, si perda l'utilizzo della fotocamera da 2mp posteriore utilizzandolo. Ad oggi 25/11/12 è meglio a mio avviso attendere ancora un po' che Mediacom aggiorni il firmware prima di provare: senza immagini dei firm precedenti infatti è impossibile tornare indietro.
AGGIORNAMENTO: Il 27/28 dicembre 2012 Mediacom si è finalmente decisa ad aggiornare il firmware presente sul sito. Non è un nuovo firmware, ma l'immagine del firmware 'di fabbrica' datato 19/10/2012. In particolare:
- essendo quello già presente in una buona parte dei tablet non risolve i problemi con le sd card, o il wifi, o altro
- è compatibile con i vari metodi usati per rootare il tablet (vedi sotto)
- è privo delle immagini, degli mp3 e dei video di esempio
Già rootato!
Se volete provare ad ottenere i permessi di root, ho preparato questa guida.
Il mio è il primo firmware del 27/9/2012, per ora il root funziona molto bene.
Un utente del forum 'altri tablet mediacom' di androidiani.com ha poi impacchettato una versione di CWM recovery per il 101 S2, insieme a una guida per l'installazione. Funziona con tutti i firmware finora esistenti.
Disponendo già dei driver per l'aggiornamento del firmware installato l'installazione è semplicissima, basta scaricare il pacchetto, collegare il tablet spento con VOL+ premuto, lanciare il tool di aggiornamento e cliccare su Flash ROM.
Accessori
Al momento l'unico accessorio veramente specifico del 10.1S2 è una custodia-supporto in similpelle distribuita da Mediacom stessa a un prezzo di poco inferiore ai 20 euro.
Personalmente ho provato anche una custodia morbida pleated per iPad della Belkin e ..il 101S2 ci sta, però serve solo per proteggere il tablet e non per usarlo come supporto.
Ho provato, e sconsiglio, le custodie con tastiera usb incorporata e supporto a leggio che si trovano su ebay da diversi reseller (basta cercare tablet 10.1 custodia tastiera, sospetto che sia un unico modello di custodia rivenduto da centinaia di seller tra i 15 e i 30 euro). Non è che non funzionino o il tablet 'non ci stia' : il problema è che, a parte l'estetica opinabile, una delle staffe copre proprio il tasto di accensione del tablet, inoltre l'elastico di supporto in alto a destra rimane troppo distante per bloccare bene il tablet, che rischia di scivolare fuori. Si può ovviare al problema forando e/o piegando la staffa in modo che faccia da distanziatore senza bloccare il tasto di accensione. Ad ogni modo la custodia è troppo ingombrante, mentre la tastierina di passo non standard ha il layout USA, un connettore USB di dimensioni regolari che deve essere collegato al cavo OTG o meglio a un cavetto OTG angolato da acquistare a parte: tutto l'insieme alla fine è esteticamente poco presentabile e di difficile chiusura.
Certo è una soluzione da circa 20-25 euro complessivi, però
probabilmente è meglio la custodia specifica più eventualmente una
tastierina bluetooth separata come la Microsoft Wedge.
Anche se probabilmente il 101S2 è una versione rimarchiata del Sanei N10, attenzione che questo ha i connettori posti in modo opposto rispetto al mediacom. Custodie specifiche per l'N10 probabilmente non vanno bene. Lo stesso vale per il Galaxy Tab: altezza e larghezza sono praticamente uguali, non lo stesso si può dire per la posizione dei connettori.
Naturalmente tastiere, mouse, etc sono dispositivi sostanzialmente standard che dovrebbero funzionare a colpo sicuro - a parte qualche tasto funzione particolare delle tastiere. Per quanto riguarda i caricabatterie ho già mostrato le opzioni disponibili.
Conclusioni
A quel prezzo se la mediacom sistema il firmware presto e mantenendo la rootabilità, è da non perdere..