Sunday, February 07, 2016

Dropbox vs Bluetooth vs Google Photos

There are so many good choices for automatically storing images from your smartphone. I've been using a couple of them and wanted to review the resulting images and metadata.

On my Nexus I have Dropbox and Google Photos both set to automatically upload images when I'm on Wi-Fi. When I want to "archive" a photo, I transfer it from my smartphone to my laptop using Bluetooth.

Here are the actual images:

Dropbox

Bluetooth

Google Photos

To my untrained eye, the images are visually indistinguishable.

But the files are different. Here're the details as I observed. (complete data at the end of the post)

File Names
Dropbox: 2015-12-16 16.12.47.jpg
Bluetooth: IMG_20151216_161246.jpg
Google Photos: IMG_20151216_161246.jpg

Notice that not only does Dropbox rename the file but the implied date/time is different than the other methods.

File Size:
Dropbox: 2,623,643
Bluetooth: 2,623,643
Google Photos: 1,557,928

This is using Google Photos "Upload size" set to "High quality", not "Original". In this test Google further compressed the image by 40%.

The other characteristics and metadata are all the same as far as I can tell.

So what am I going to change?

Nothing, yet.

For me each of these tools have different use cases.

For Dropbox, I really like having my images automatically stored in a Windows file system. There's probably some method to accomplish this with Google Photos but it doesn't just jump out at me. I really don't like that Dropbox renames the files.

Bluetooth is clearly the geek's solution. I only use this method when I want to preserve a high quality image. The file system target for the Bluetooth upload varies by whether the file is an image or a video. I probably could change that.

Google Photos is the slickest tool. It's fast and easy to manage. Using "High quality" (which really isn't high quality) is free. I wish that Google wouldn't recompress the images when they fall below 16 megapixels. Since my camera is 8 megapixels I tried changing the "Upload size" to "Original" and sending the image again. I had the same result of additional compression. There are still some outstanding questions to me about this. How long does it take to Google Photos to recognize and act on this Settings change? Does this Settings change on the phone propagate to the web uploading? I'll keep playing with this.

Have fun!

Image properties
Image name : 2015-12-16 16.12.47 (Dropbox upload).jpg
Folder : C:\Users\Ben Moore\Desktop\Uploads\
Size : 3200 x 2368 pixels ==> 44.44 x 32.89 inches (72.00 dpi)
Color count : 518272
File size : 2.50 Mb
Date : 12/16/2015 4:12 PM

EXIF
Date Time=2015:12:16 16:12:47
GPSDate Stamp=2015:12:16
GPSLongitude Ref=W
GPSLongitude=89 Degrees 33 Minutes 49 Seconds
GPSImage Direction=297/1
GPSLatitude Ref=N
GPSTime Stamp=22:12:34
GPSImage Direction Ref=M
GPSLatitude=34 Degrees 49 Minutes 55 Seconds
GPSInfo=692
Model=Nexus 5
Image Width=3200
Resolution Unit=Inch
YCb Cr Positioning=Centered
Image Length=2368
YResolution=72.00
Orientation=Normal
Software=HDR+ 1.0.106412213y
Color Space=sRGB
FNumber=F2.4
Date Time Digitized=2015:12:16 16:12:47
Subject Distance Range=Unknown
Focal Length=3.97 mm
Aperture Value=F2.5
Exposure Mode=Auto
Exif Image Length=2368
Custom Rendered=Custom process
Max Aperture Value=F2.5
Scene Capture Type=Standard
Scene Type=Directly Photographed
Digital Zoom Ratio=1/1
Saturation=Normal
Exposure Program=Normal
Sharpness=Normal
Exif Image Width=3200
Shutter Speed Value=0.0487 sec (1/21)
Metering Mode=Center
Date Time Original=2015:12:16 16:12:47
Components Configuration=YCbCr
Subject Distance=0/1
Flash=Off, surpressed
Exif Version=0210
Contrast=Normal
ISOSpeed Ratings=587
Sensing Method=OneChipColorArea
Flash Pix Version=0100
Exposure Time=48861/1000000 sec
Exif Offset=234
XResolution=72.00
Make=LGE

Comment
Dropbox

Image properties
Image name : IMG_20151216_161246 (Bluetooth transfer).jpg
Folder : C:\Users\Ben Moore\Desktop\Uploads\
Size : 3200 x 2368 pixels ==> 44.44 x 32.89 inches (72.00 dpi)
Color count : 518272
File size : 2.50 Mb
Date : 12/16/2015 10:03 PM

EXIF
Date Time=2015:12:16 16:12:47
GPSDate Stamp=2015:12:16
GPSLongitude Ref=W
GPSLongitude=89 Degrees 33 Minutes 49 Seconds
GPSImage Direction=297/1
GPSLatitude Ref=N
GPSTime Stamp=22:12:34
GPSImage Direction Ref=M
GPSLatitude=34 Degrees 49 Minutes 55 Seconds
GPSInfo=692
Model=Nexus 5
Image Width=3200
Resolution Unit=Inch
YCb Cr Positioning=Centered
Image Length=2368
YResolution=72.00
Orientation=Normal
Software=HDR+ 1.0.106412213y
Color Space=sRGB
FNumber=F2.4
Date Time Digitized=2015:12:16 16:12:47
Subject Distance Range=Unknown
Focal Length=3.97 mm
Aperture Value=F2.5
Exposure Mode=Auto
Exif Image Length=2368
Custom Rendered=Custom process
Max Aperture Value=F2.5
Scene Capture Type=Standard
Scene Type=Directly Photographed
Digital Zoom Ratio=1/1
Saturation=Normal
Exposure Program=Normal
Sharpness=Normal
Exif Image Width=3200
Shutter Speed Value=0.0487 sec (1/21)
Metering Mode=Center
Date Time Original=2015:12:16 16:12:47
Components Configuration=YCbCr
Subject Distance=0/1
Flash=Off, surpressed
Exif Version=0210
Contrast=Normal
ISOSpeed Ratings=587
Sensing Method=OneChipColorArea
Flash Pix Version=0100
Exposure Time=48861/1000000 sec
Exif Offset=234
XResolution=72.00
Make=LGE

Comment
Bluetooth

Image properties
Image name : IMG_20151216_161246 (Google Photos download).jpg
Folder : C:\Users\Ben Moore\Desktop\Uploads\
Size : 3200 x 2368 pixels ==> 44.44 x 32.89 inches (72.00 dpi)
Color count : 515986
File size : 1.49 Mb
Date : 12/16/2015 10:19 PM

EXIF
Image Width=3200
Image Length=2368
Make=LGE
Model=Nexus 5
Orientation=Normal
XResolution=72.00
YResolution=72.00
Resolution Unit=Inch
Software=HDR+ 1.0.106412213y
Date Time=2015:12:16 16:12:47
YCb Cr Positioning=Centered
Exposure Time=48861/1000000 sec
FNumber=F2.4
Exposure Program=Normal
ISOSpeed Ratings=587
Exif Version=0210
Date Time Original=2015:12:16 16:12:47
Date Time Digitized=2015:12:16 16:12:47
Components Configuration=YCbCr
Shutter Speed Value=0.0487 sec (1/21)
Aperture Value=F2.5
Max Aperture Value=F2.5
Subject Distance=0/1
Metering Mode=Center
Flash=Off, surpressed
Focal Length=3.97 mm
Flash Pix Version=0100
Color Space=sRGB
Exif Image Width=3200
Exif Image Length=2368
Sensing Method=OneChipColorArea
Scene Type=Directly Photographed
Custom Rendered=Custom process
Exposure Mode=Auto
Digital Zoom Ratio=1/1
Scene Capture Type=Standard
Contrast=Normal
Saturation=Normal
Sharpness=Normal
Subject Distance Range=Unknown
Image Unique ID=07daf91361effb820000000000000000
Exif Offset=234
GPSLatitude Ref=N
GPSLatitude=34 Degrees 49 Minutes 55 Seconds
GPSLongitude Ref=W
GPSLongitude=89 Degrees 33 Minutes 49 Seconds
GPSAltitude Ref=Sealevel
GPSTime Stamp=22:12:34
GPSImage Direction Ref=M
GPSImage Direction=297/1
GPSDate Stamp=2015:12:16
GPSInfo=738

Comment
Google Photos

Sunday, January 31, 2016

adb

If you don't know what "adb" is just quit reading and go back to Facebook.

The first Nexus 5 I bought was a refurbished 16GB model. I've been using a 32GB 2013 Moto X. When I bought the Nexus 5 I didn't see a 32GB model.

Even before I received the 16GB Nexus 5 I saw a 32GB model for $20 more.

I ordered the 32GB Nexus 5 and thought I would return the 16GB one.

When the 16GB arrived it was still in a sealed Google box. It clearly was brand new.

I started playing with it. That story is here.

The 16GB Nexus 5 was too nice to just send back so I gave it away.

Then the 32GB Nexus 5 arrived. I started down the road to updating it.

But...

The OTA updates came to a screeching halt after 5.1.1 LMY48B. None of my normal activities (e.g. power cycle, factory data reset, cache wipe, etc.) would get it to update further.

I posted my dilemma on reddit and began a very helpful dialog with raxiel.

raxiel walked me through sideloading the OTA updates with adb. I had trouble getting Windows to recognize the driver from the SDK folder usb_driver and had to create a new android_winusb.inf file using the information in this post. Even then I had to force Windows Device Manager to use that driver.

I sideloaded a couple of OTA versions but the Nexus 5 still wouldn't automatically apply the subsequent OTAs.

I began a non-productive dialog with the retailer about returning it as defective. This encouraged me to look for an alternative.

raxiel was hanging in there with me. He suggested that I just flash the factory image for 6.0.1 MMB29K. While that would have gotten the Nexus 5 current I wouldn't have known whether subsequent OTAs would apply.

So I flashed the factory image for 6.0.0 MRA58K.

The complete list of available factory images and flashing instructions is here.

That page makes it sound simple to flash factory images. The reality is that it's tricky. For example, if you haven't already unlocked the device's bootloader, when you do that it does a factory data reset on the phone and you have to go back and re-enable Developer Mode and then USB Debugging. Then you have to confirm the RSA signatures again.

In the end I found this YouTube video that walked though the process.


One slight twist that I made is that when I extracted the factory image from the download I copied the extracted folder to my desktop. Then since fastboot needs to be available for the flash-all script I copied (didn't move) the contents of the platform-tools subfolder installed with the SDK install into the new folder on my desktop. Read that twice before you do it.

Understandably this video edits out the elapsed time. And the adb output on the video shows a time of 122 seconds. I don't know what that time represents. Mine was 144 seconds. More importantly the total elapsed time was almost 10 minutes with long periods that appeared to have no activity.

When I completed the flash I re-enabled Developer Mode and then USB Debugging so I could relock the bootloader. And then a factory data reset to disable Developer Mode.

The good news is that as soon as I connected to Wi-Fi the Nexus 5 began an OTA of 6.0.0 MRA58N.

Whew!

Sunday, January 24, 2016

TV Wiring Diagram Christmas 2015

I overlooked sharing my 2014 TV configuration.


This served me well until ...

TiVo had a big Black Friday sale. I got to looking at replacing my aging TiVo Premiere (with a 1TB external drive) in the den and the smaller TiVo Premiere in the master bedroom with current devices.

I bought a TiVo Roamio Plus for the den and a TiVo Mini for the master bedroom.


This tremendously simplified the number and age of the moving parts.

I replaced the 1TB hard drive in the Roamio with a 3TB even before I powered it up.

The Mini is pretty much a regular TiVo with no tuners and no hard drive. It "borrows" a tuner from the Roamio as needed and streams recordings from the Roamio.


The Roamio supports streaming to mobile devices so I can watch recorded programs on my smartphone or tablet.

The November 2015 software update added QuickMode.
QuickMode allows you to play recordings faster - at 1.3 x normal speed - with pitch-corrected audio, so you don't have to put up with high-pitched squeaky audio while you watch your favorite programs in less time.
The Roamio came with 12 months of TiVo service included and going forward service will be less than half of what the Premieres cost. The Mini doesn't require TiVo service. Nor does the Mini require a CableCARD so there's less money to Comcast which is always a good thing.

The break even is just over a year and the savings are $20+ per month after that.

Sunday, January 17, 2016

EMCO Ping Monitor

A while back my Comcast Internet connection and television service started going down every day around 9:00AM and coming back up just before noon. Needless to say this was frustrating.

And Comcast customer service was no help at all. I started asking them for credit for the outages. They would give me a day of service credit for each instance. I would call them up and ask them to put a note in my account. Then once a week I'd call them and ask for a credit.

This got to be a record keeping problem. And I wanted to know whether the problem was outside of my neighborhood, on my Comcast "LAN", just my modem or just my router.

I found EMCO Ping Monitor Free. As its name suggests it's free and monitors via pings.

The free edition allows performing ping monitoring of up to five hosts. I run it on an Ethernet connected system and configure it to monitor:
  1. my router
  2. my Comcast modem
  3. Google DNS (8.8.8.8)
  4. comcast.com
  5. internationalpaper.com

You configure how often it attempts a ping and how many failed pings should be counted as a network failure.


It will send e-mail notifications of events, failures or return to service.



You can export the stats into csv files.


Nice program. Easily paid for itself.

Sunday, January 10, 2016

Nexus 5 Journey

It came with Android 4.4.3.


Upgraded to 4.4.4.


Then 5.0.1.


Then 5.1.


Then 5.1.1 LMY48B.


Then 5.1.1 LMY48I Stagefright.


Then 5.1.1 LMY48M.


Then 6.0.


Then 6.0 November update.


Finally.


Until 6.0.1 MMB29K.


Sunday, January 03, 2016

Next - Nexus 5

After I returned my iPhone 6 I keep looking for something fresher than my Moto X. I took a run at a Nexus 5. The Nexus 5X seemed too big for me.

Source: phoneArena.com


Motorola Moto XGoogle Nexus 5
DESIGN
Device typeSmart phoneSmart phone
OSAndroid (4.4.2, 4.4, 4.3, 4.2.2)Android (6.0, 5.1, 5.0, 4.4.4, 4.4.2, 4.4)
Dimensions5.09 x 2.57 x 0.41 inches (129.3 x 65.3 x 10.4 mm)5.43 x 2.72 x 0.34 inches (137.84 x 69.17 x 8.59 mm)
Weight4.59 oz (130 g)4.59 oz (130 g)
DISPLAY
Physical size4.7 inches5.0 inches
Resolution720 x 1280 pixels720 x 1280 pixels
Pixel density316 ppi445 ppi
TechnologyAMOLEDIPS LCD
Colors16 777 21616 777 216
TouchscreenMulti-touchMulti-touch
FeaturesLight sensor, Proximity sensor, Scratch-resistant glass (Corning Gorilla Glass)Light sensor, Proximity sensor, Scratch-resistant glass (Corning Gorilla Glass 3)
CAMERA
Camera10 megapixels8 megapixels
   FlashLEDDual LED
   Aperture sizeF2.4F2.4
   Focal length (35mm equivalent)30 mm30.4 mm
   Camera sensor size1/2.6"1/3.2"
   FeaturesDigital zoom, Autofocus, Touch to focus, Geo taggingOptical image stabilization, Face detection, Digital zoom, Self-timer, Back-illuminated sensor (BSI), Autofocus, Touch to focus, Geo tagging
Camcorder1920x1080 (1080p HD) (60 fps)1920x1080 (1080p HD) (30 fps)
   Features
Front-facing camera2 megapixels1.3 megapixels
HARDWARE
System chipMotorola X8 (Qualcomm Snapdragon S4 Pro MSM8960)Qualcomm Snapdragon 800 MSM8974
ProcessorDual core, 1700 MHz, KraitQuad-core, 2260 MHz, Krait 400
Graphics processorAdreno 320Adreno 320
System memory2048 MB RAM2048 MB RAM
Built-in storage32 GB32 GB
Maximum User Storage28 GB
Storage expansion
BATTERY
Talk time12.00 hours17.00 hours
Stand-by time10.0 days (240 hours)12.5 days (300 hours)
Capacity2200 mAh2300 mAh
Not user replaceableYesYes
Wireless charging
Yes
MULTIMEDIA
Music player
   Filter byAlbum, Artist, PlaylistsAlbum, Artist, Genre, Playlists
   FeaturesAlbum art cover, Background playbackAlbum art cover, Background playback
SpeakersEarpiece, LoudspeakerEarpiece, Loudspeaker
YouTube playerYesYes
INTERNET BROWSING
Built-in online services supportYouTube (upload), Picasa/Google+YouTube (upload), Picasa/Google+
TECHNOLOGY
CDMA800, 1900 MHz
GSM850, 900, 1800, 1900 MHz850, 900, 1800, 1900 MHz
UMTS850, 900, 1700/2100, 1900, 2100 MHz800, 850, 900, 1700/2100, 1900, 2100 MHz
FDD LTE700 (band 13), 850 (band 5), 1700/2100 (band 4), 1900 (band 2) MHz800 (band 20), 850 (band 5), 900 (band 8), 1800 (band 3), 2100 (band 1), 2600 (band 7) MHz
DataLTE, HSDPA+ (4G) 42.2 Mbit/s, HSUPA 5.76 Mbit/s, UMTS, EDGE, GPRSLTE Cat 4 (150/50 Mbit/s), HSDPA+ (4G) 42.2 Mbit/s, HSUPA 5.76 Mbit/s, UMTS, EDGE, GPRS
micro-SIMYes
nano-SIMYes
PositioningGPS, A-GPS, S-GPS, GlonassGPS, A-GPS, Glonass
NavigationTurn-by-turn navigationTurn-by-turn navigation
CONNECTIVITY
Bluetooth4.0 EDR4.0
Wi-Fi802.11 a, b, g, n, n 5GHz, ac802.11 a, b, g, n, n 5GHz, ac
   Mobile hotspotYesYes
USBUSB 2.0USB 2.0
   ConnectormicroUSBmicroUSB
   FeaturesMass storage device, USB chargingUSB charging
HDMI
via microUSB
OtherNFC, Tethering, Computer sync, OTA syncNFC, DLNA, Miracast, ANT+, SlimPort, TV-Out, Tethering, Computer sync, OTA sync
OTHER FEATURES
NotificationsHaptic feedback, Music ringtones (MP3), Polyphonic ringtones, Vibration, Flight mode, Silent mode, SpeakerphoneHaptic feedback, Music ringtones (MP3), Polyphonic ringtones, Vibration, Flight mode, Silent mode, Speakerphone
SensorsAccelerometer, Gyroscope, Compass, Thermometer, BarometerAccelerometer, Gyroscope, Compass, Barometer, Step detector, Step counter
Hearing aid compatibilityM3, T3
OtherVoice dialing, Voice commands, Voice recordingVoice dialing, Voice commands, Voice recording
AVAILABILITY
Officially announced01 Aug 201331 Sep 2013
Source: phoneArena.com

Don't the specifications of the Nexus 5 look familiar? They're almost exactly the same as the iPhone 6. Look at this. And the iPhone 6 is a 10 months newer design.

Sunday, December 27, 2015

iPhone 6 - Part 4

This is a continuation of iPhone 6 - Part 3.

Back Button

iOS 9 has a "Back to..." button in the top left corner if you go from one app to another, e.g. Hangouts to Settings. But this is only one level and doesn't always persist if you navigate within the second app.


Screen Resolution

The Moto X is 720 x 1280. The OnePlus One is 1920 x 1080. The iPhone 6 is 750 x 1334 unless Zoomed (then 640 x 1136) which is the same resolution as the iPhone 5. Zoomed gives you 1 less row of icons.

SmartLock vs. Touch ID

Lollipop's SmartLock with Trusted Devices, Trusted Locations and On-Body Detection only requires unlocking the Android phone with a PIN a few times per day. The iPhone's Touch ID requires unlocking the iPhone with a fingerprint every time you want to use it. Further the sequence that you use, e.g. notification displayed, tap Home button, pressing thumb on Home button vs. swiping notification, pressing thumb on Home button, have different results.

Hotspot

I had to call AT&T to activate the hotspot although it had been working fine under Android. And you can't change the SSID without renaming the phone.


Google Voice Voicemail

Something in the back and forth migration disabled my Google Voice voicemail. Almost certainly a one time issue.

iMessage

iMessage was turned on by default. There are stories about how difficult it is to migrate from iMessage back to native SMS. After weeks of discussions with Apple Care I'm still not receiving group MMS from some iMessage users.

Also, you can't integrate Google Hangouts into iMessage so I had 2 different messaging apps.

Voice Controls

I hadn't realized how much I depended on Android's voice controls, Moto Voice and Ok Google. I had to turn off Ok Google detection on the OnePlus One but I still could dictate brief text messages using the microphone icon on the keyboard. And on the Moto X I could listen to and respond to text messages without even taking the phone out of its holster. None of this is available on the iPhone.

I didn't exercise Siri.

Motorola Connect

The Motorola Connect app on the Moto X connects to a Chrome extension on a PC to giving me bi-directional connection to the Moto X's SMS. I din't realize how much I used that until it was gone. iMessage has this function on other Apple devices.

Motorola withdrew Motorola Connect in November 2015.

Accessories

Obviously accessories for the iPhone are widely available. I've struggled with my niche Android phones to find holsters and charging docks. More mainstream Android phones likely wouldn't have that problem.

I like carbon fiber on my smartphones going back to my Samsung Captivate. The iPhone 6 I bought was space gray so I added a nice carbon fiber skin.

Conclusion

I loved the size of the iPhone 6 but with the differences in how iOS operated compared to Android I couldn't rationalize the $500 expenditure.

Yahoo! News had this related article.

As I discussed this journey with the president of our company he said "iPhone users just don't understand what they're missing." I'll leave that attributed to him.