martedì 8 luglio 2014
IBeacon ed aggiornamento IOS 7.1.2 su Iphone 4S
Sviluppando per beacon su IOS mi sono trovato di fronte ad una cosa piuttosto strana
Il medesimo codice che girava correttamente su un Iphone 5S si rifiutava di funzionare su Iphone 4S a parita' di IOS installato
Con l'uscita dell'aggiornamento ad IOS 7.1.2 tutto si e' risolto senza modificare nessuna parte del codice dell'applicazione
Libri obsoleti
Ho salvato dal macero un po' di archeologia informatica in formato cartaceo.
Come si vede andava di moda Fortran ma la lettura dei manuali Digital apre veramente un mondo su cosa erano i calcolatori negli anni 70
da osservare anche il livello di dettaglio tecnico presente nella documentazione
Come si vede andava di moda Fortran ma la lettura dei manuali Digital apre veramente un mondo su cosa erano i calcolatori negli anni 70
da osservare anche il livello di dettaglio tecnico presente nella documentazione
lunedì 7 luglio 2014
Beacon su IOS
A seguito delle prove effettuate in questo post ed in questo post (usando in entrambi i casi un telefono Moto G con Android e librerie Radius) mi sono convertito ad IOS ed ho ripetuto l'esperienza usando un IPhone 4S con le medesime antenne usate in precedenza e le API di IOS
non ho ancora capito bene il motivo ma sembra che il segnale risulta nettamente piu' stabile su IOS che su Android (hardware o software???)
da notare che al contrario di Android su IOS vengono segnalati come valori negativi le fallite acquisizioni
il codice impiegato per misurare il segnale e' riportato in seguito (ripreso da questo link dall'esempio Art Gallery)
#import "ViewController.h"
#define ESTIMOTE_PROXIMITY_UUID [[NSUUID alloc] initWithUUIDString:@"4506F9C7-00F9-C206-C12C-C2F9C702D3C3"]
int oldminor;
@interface ViewController ()
@property (nonatomic, strong) NSMutableArray *beacons;
@property (nonatomic, strong) NSArray *paintings;
@property (nonatomic, strong) CLLocationManager *locationManager;
@property (nonatomic, strong) CLBeaconRegion *beaconRegion;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
_beacons = [[NSMutableArray alloc] init];
_locationManager = [[CLLocationManager alloc] init];
_locationManager.delegate = self;
_beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:ESTIMOTE_PROXIMITY_UUID
identifier:@"lucainnoc.Ibeareader"];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)viewDidAppear:(BOOL)animated
{
[_locationManager startRangingBeaconsInRegion:_beaconRegion];
}
- (void)viewDidDisappear:(BOOL)animated
{
[_locationManager stopRangingBeaconsInRegion:_beaconRegion];
}
- (void)locationManager:(CLLocationManager *)manager didRangeBeacons:(NSArray *)beacons inRegion:(CLBeaconRegion *)region
{
if (beacons.count) {
CLBeacon *closestBeacon;
for (CLBeacon *beacon in beacons) {
NSLog([NSString stringWithFormat:@"%f", beacon.accuracy]);
}
}
}
@end
Webview su IOS
Per poter implementare una WebView su IOS, dopo aver trascinato il componente WebView, si dichiara il nuovo componente come
@interface ViewController : UIViewController
{
IBOutlet UIWebView *Vista;
}
In questo caso la web view si chiamera' Vista
Per modificare la URL a cui punta la webview si agisce con il seguente comando
[Vista loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/"]]];
Attenzione: di default la webview occupa tutto lo schermo per cui non sono visibile gli altri eventuali controlli (tipo pulsanti o label)
martedì 17 giugno 2014
SD Card su Macbook Pro A1286
Recentemente mi e' stato prestato un MacBook Pro A1286 un po' datato (meta' 2009) ma sempre una bella macchina.
Non lo sapevo ma questo modello dispone di un lettore integrato di SD Card e dato che avevo da scaricare delle foto ho inserito la memoria nell'apposito slot
Con un certo disappunto non compariva il dispositivo nel Finder. Sulla prima ho pensato che il componente fosse rotto (data l'eta' del calcolatore) ma da una ricerca su Internet ho verificato che si tratta di un problema conosciuto. In pratica non si deve inserire la memoria fino in fondo ma, a tentativi, si deve trovare il punto in cui il lettore riesce a percepirla
Considerando che il computer era venduto da nuovo ad oltre 2200 dollari e che un lettore di SD Card e' un componente da meno di 5 euro e' una caduta di stile da non poco (fra parentesi i portatili IBM hanno un meccanismo a scatto e funzionano benissimo)
Non lo sapevo ma questo modello dispone di un lettore integrato di SD Card e dato che avevo da scaricare delle foto ho inserito la memoria nell'apposito slot
Con un certo disappunto non compariva il dispositivo nel Finder. Sulla prima ho pensato che il componente fosse rotto (data l'eta' del calcolatore) ma da una ricerca su Internet ho verificato che si tratta di un problema conosciuto. In pratica non si deve inserire la memoria fino in fondo ma, a tentativi, si deve trovare il punto in cui il lettore riesce a percepirla
Considerando che il computer era venduto da nuovo ad oltre 2200 dollari e che un lettore di SD Card e' un componente da meno di 5 euro e' una caduta di stile da non poco (fra parentesi i portatili IBM hanno un meccanismo a scatto e funzionano benissimo)
giovedì 5 giugno 2014
Kinect per paleontologia
Continuando la serie delle prove di Kinect come scanner 3D, e' stata provata una applicazione per paleontologia. L'oggetto scansionato e' un corno di cervo (piuttosto malridotto) parzialmente ancora inglobato in matrice argillosa
La scansione e' molto ravvicinata (circa 80 cm) e la scena e' stata tagliata per estrarre il solo dettaglio di interesse
Il colore blu indica le zone piu' vicine al sensore mentre il rosso/arancione sono le zone piu' lontane (ovvero il piano di appoggio)
Il file originale puo' essere scaricato a questo indirizzo
La scansione e' molto ravvicinata (circa 80 cm) e la scena e' stata tagliata per estrarre il solo dettaglio di interesse
Il colore blu indica le zone piu' vicine al sensore mentre il rosso/arancione sono le zone piu' lontane (ovvero il piano di appoggio)
Il file originale puo' essere scaricato a questo indirizzo
lunedì 26 maggio 2014
CC2540 vs CC2541
Il mio fornitore di beacon ha cambiato l'integrato passando da un CC2540 ad un CC2541 (entrambi Texas Instruments)
Ho fatto una breve prova per vedere se c'era una miglioramento sulla stabilita' del segnale
La prova (seppur con un numero modesto) e' stata fatta a geometria fissa evitando il piu' possibile di influenzare la misura
Ho fatto una breve prova per vedere se c'era una miglioramento sulla stabilita' del segnale
La prova (seppur con un numero modesto) e' stata fatta a geometria fissa evitando il piu' possibile di influenzare la misura
Alla fine e' emerso che il parametro Accuracy e' stato di
CC 2540 : 6.79+/-5.23
CC 2541 : 4.89+/-3.32
Con il 2540 la deviazione standard vale circa il 77% del valore medio mentre con il 2541 circa il 67%
Un miglioramento ma non certo sensibile
Iscriviti a:
Post (Atom)
Debugger integrato ESP32S3
Aggiornamento In realta' il Jtag USB funziona anche sui moduli cinesi Il problema risiede nell'ID USB della porta Jtag. Nel modulo...
-
In questo post viene indicato come creare uno scatterplot dinamico basato da dati ripresi da un file csv (nel dettaglio il file csv e' c...
-
Questo post e' a seguito di quanto gia' visto nella precedente prova Lo scopo e' sempre il solito: creare un sistema che permet...
-
La scheda ESP32-2432S028R monta un Esp Dev Module con uno schermo TFT a driver ILI9341 di 320x240 pixels 16 bit colore.Il sito di riferiment...