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.

Sunday, December 20, 2015

iPhone 6 - Part 3

This is a continuation of iPhone 6 - Part 2.

Photos

Next I wondered how to get photos from the iPhone to my PC. I had been using Bluetooth on my Android devices. (I will discuss Dropbox and Google Photos later.)

Again iTunes came up. The only alternative I came up with was a USB cable. Not as capable as I expected.

Non-Apple App Configuration

Hangouts notification sounds - You can't setup a custom notification sound for Google Hangouts.
Notifications for Hangouts didn't work at all (not even an icon badge) until I had the Hangouts app active when it received a message. Hangouts worked anywhere after that.

GasBuddy startup - You can't set a startup page for GasBuddy like you can in Android. If the app has closed it starts at the "Find Gas Near Me" page. Otherwise it returns to the last used page

Pocket Casts - You can't set a unilateral playback speed. Changing the "Up Next" sequence requires an extra step to "Edit" the list where in Android it's just tap and hold to move. It's very unusual for an Android app to have a more optimal user experience.

Direct dial icons - You simply can't do it. This would be a homescreen widget in Android. There are some workaround apps that use Safari but they aren't very elegant.

Swype - Swype caused the Gmail app to terminate when tapping the "Search" button on the Inbox screen. This worked fine using Apple keyboard. I'm sure that will be fixed. Also, Apple switches back to the Apple keyboard when entering passwords. Probably a good idea but a little disconcerting.

Google Maps - When using Google Maps navigation with the origin being the current location, iOS doesn't seem to give Google Maps the current location. It seems to give Google Maps the location that you were at when you last used Google Maps.

Other iDevices Ringing with iPhone

By default all devices on the same iTunes account ring when the iPhone rings. It took a little while to find that setting with some spousal consternation.

Background Processing

Google Photos - Google Photos doesn't upload photos until you launch the app. And if it starts uploading and you navigate to another app it stops after 5 minutes. Here's a "cool hack" to get around this.

Dropbox - To overcome this background limitation Dropbox uses Location Services to trigger background uploads. The effectiveness depends on how often iOS notifies Dropbox that the location has changed. Casual observation indicates that iOS' location granularity is less than Android's. (more later)


Pocket Casts - Pocket Casts doesn't begin downloading podcasts until the app is launched even when plugged in. Don't forget to launch it before you go to bed. On Android Pocket Casts pauses while Runkeeper announces its intervals. On iOS Pocket Casts just keeps playing.

Gmail - My wife (using Gmail on iOS) has commented that she had received a notification of new mail but when she went to the Gmail app there was nothing new there. Then quickly she'd say "There it is." It seems that Gmail doesn't load new mail until the application is launched. There could be some other subtleties here but this is the general observation.

Google Location Tracking

iOS seems to have (or at least shares) much lower granularity of location than Android. Here is a comparison of the same GPS sensitive app (Runkeeper) running on iOS and Android. Notice that there are many more GPS fixes under Android.



Notifications

Active apps don't have a notification tray icon. This makes it difficult to negotiate back to a running app. For example if you are listening to Pocket Casts and go to Gmail and then want to return to Pocket Casts, there is no notification icon for Pocket Casts. You have to either double tap the Home button and locate Pocket Casts in the task manager (unfriendly to me as is Android's) or you have to tap the Home button to go back to the home screen, locate the Pocket Casts icon and tap it. If you haven't run another app in the interim Pocket Casts has a lock screen "widget" that you can use to manage Pocket Casts. This issue is not specific to Pocket Casts but not all apps have the lock screen interface.

Sending a text has a "whoosh" sound. If you're a "Good Wife" fan you'll remember that's how her son got in trouble. To eliminate the sent text notification tone "u can flip the switch on the side to vibrate and you wont hear anything." Really?

On the Moto X you can eliminate camera shutter sound. The OnePlus wouldn't let you do that. On the iPhone "The only way to turn this off is to turn on the mute switch." See above.

To be continued ...

Sunday, December 13, 2015

iPhone 6 - Part 2

This is a continuation of iPhone 6 - Part 1.

Here's the point by point comparison of my Androids and the iPhone 6.

Operating System

Android Lollipop has been through 5.0, 5.0.2, 5.1, and 5.1.1. The "cellular standby" bug doesn't look like it's going to be fixed in Lollipop and my Moto X isn't getting Marshmallow.

The OnePlus One came with CyanogenMod which I originally thought was a plus. It shipped with CM 11S (4.4.4) and was upgraded to COS 12 (5.0) and COS 12.1 (5.1.1) and has gotten no updates since then (i.e. Stagefright).

iOS 9 has had its share of updates as well with 9.0, 9.0.1, 9.0.2, and 9.1.

Incidentally my gazelle iPhone came with a beta release of iOS 9.1 which caused me problems with Location Services.


Battery Life

The Moto X struggles with battery life as a result of the Lollipop "cellular standby" bug. The OnePlus One didn't have the over the top battery life I had expected. Surprisingly the iPhone 6 battery life wasn't as good as my wife's iPhone 5S. Here's my spreadsheet with battery usage.

Default Apps

As I was using Google apps I was worried about the limitations of iOS of setting alternate default apps, e.g. Safari. What I discovered was that while you're within the Google ecosystem Google can handle directing you to the desired Google app.

Ringtones

There are dozens of ways to get ringtones over to an Android phone. When I searched for how to do that on the iPhone I came across this article.


Really, 16 easy steps?

When I reached out to a friend who is very technical and a died in the wool Apple user he replied:
Lastly, while I don’t really recommend iTunes if you can avoid it since it has turned into a bloated pig... I don;t find I have to use iTunes for anything.
But when I pressed him for alternatives:
I have iTunes running on a shared Mac in the house...
You can draw your own conclusions.

I used iTunes and moved my ringtones to the iPhone.

To be continued...

Sunday, December 06, 2015

iPhone 6 - Part 1

tl;dr I sent it back.

After my OnePlus One experience, I was ready to look at an iPhone. There were 3 major drivers; stability, size and battery life. The OnePlus One was FLAKY and the 2013 Moto X has suffered through Lollipop 5.0 and 5.1. And Motorola has promised NOT to put Marshmallow on it. I expected (and found) that iOS was very stable. The OnePlus One was also BIG. The iPhone 6 was enough bigger than the Moto X but not so big as the OnePlus One. I had expected better battery life from the OnePlus One but didn't experience that.

So I jumped and ordered a 64GB iPhone 6 from gazelle. Their selection was good as was their price and given that I was trying an iPhone I wanted a generous return policy.


The iPhone 6 is the perfect size for me. And it's so thin.


Source: phoneArena.com

Motorola Moto XApple iPhone 6
DESIGN
Device typeSmart phoneSmart phone
OSAndroid (4.4.2, 4.4, 4.3, 4.2.2)iOS (9.x, 8.x)
Dimensions5.09 x 2.57 x 0.41 inches (129.3 x 65.3 x 10.4 mm)5.44 x 2.64 x 0.27 inches (138.1 x 67 x 6.9 mm)
Weight4.59 oz (130 g)4.55 oz (129 g)
DISPLAY
Physical size4.7 inches4.7 inches
Resolution720 x 1280 pixels750 x 1334 pixels
Pixel density316 ppi326 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, Oleophobic coating
CAMERA
Camera10 megapixels8 megapixels
   FlashLEDDual LED
   Aperture sizeF2.4F2.2
   Focal length (35mm equivalent)30 mm29 mm
   Camera sensor size1/2.6"1/3"
   FeaturesDigital zoom, Autofocus, Touch to focus, Geo taggingSapphire crystal lens cover, Face detection, Smile detection, Digital zoom, Self-timer, Digital image stabilization, Back-illuminated sensor (BSI), Autofocus (Phase detection), Touch to focus, Geo tagging
Camcorder1920x1080 (1080p HD) (60 fps)1920x1080 (1080p HD) (60 fps), 1280x720 (720p HD) (240 fps)
   Features
Front-facing camera2 megapixels1.2 megapixels
HARDWARE
System chipMotorola X8 (Qualcomm Snapdragon S4 Pro MSM8960)Apple A8
ProcessorDual core, 1700 MHz, KraitDual-core, 1400 MHz, Cyclone ARMv8-A 2nd gen., 64-bit
Graphics processorAdreno 320PowerVR GX6450
System memory2048 MB RAM1924 MB RAM
Built-in storage32 GB64 GB
Maximum User Storage28 GB
Storage expansion
BATTERY
Talk time12.00 hours
Stand-by time10.0 days (240 hours)10.4 days (250 hours)
Capacity2200 mAh1810 mAh
Not user replaceableYes
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
GSM850, 900, 1800, 1900 MHz850, 900, 1800, 1900 MHz
UMTS850, 900, 1700/2100, 1900, 2100 MHz850, 900, 1700/2100, 1900, 2100 MHz
FDD LTE700 (band 13), 850 (band 5), 1700/2100 (band 4), 1900 (band 2) MHz700 (band 13), 700 (band 17), 700 (band 28), 800 (band 18), 800 (band 19), 800 (band 20), 850 (band 5), 850 (band 26), 900 (band 8), 1700/2100 (band 4), 1800 (band 3), 1900 (band 2), 1900 (band 25), 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), HSPA (unspecified), HSUPA, UMTS, EDGE, GPRS, EV-DO Rev.A, EV-DO Rev.B
nano-SIMYesYes
PositioningGPS, A-GPS, S-GPS, GlonassGPS, A-GPS, Glonass, Cell ID, Wi-Fi positioning
NavigationTurn-by-turn navigationTurn-by-turn navigation, Voice 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
   ConnectormicroUSBProprietary
   FeaturesMass storage device, USB chargingUSB charging
HDMI
OtherNFC, Tethering, Computer sync, OTA syncNFC, UMA (Wi-Fi Calling), Tethering, Computer sync, OTA sync, AirDrop
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, Fingerprint (touch), Barometer
Hearing aid compatibilityM3, T3M3, T4
OtherVoice dialing, Voice commands, Voice recordingVoice dialing, Voice commands, Voice recording
AVAILABILITY
Officially announced01 Aug 201309 Sep 2014
Source: phoneArena.com

Next I'll do a point by point comparison of my Androids and the iPhone 6.

Sunday, November 29, 2015

Google Cloud Outages

I've written numerous times about cloud availability. Last year I posted about an outage in Microsoft's Azure service.

Some of my comments were:
Recently there was an 11 hour outage of Microsoft's Azure storage services.

Again users were hard pressed to get details on the outage as "the Service Health Dashboard and Azure Management Portal both rely on Azure."
Cloud outages don't have to be like that.

Here're the communications from Google on a pair of recent outages in their cloud services.

Gmail Outage

November 3, 2015 1:21:00 AM PST
We're investigating reports of an issue with Gmail. We will provide more information shortly.
November 3, 2015 1:38:00 AM PST
Our team is continuing to investigate this issue. We will provide an update by November 3, 2015 2:38:00 AM PST with more information about this problem. Thank you for your patience.

This issue is affecting IMAP and SMTP delivery
November 3, 2015 1:48:00 AM PST
Our team is continuing to investigate this issue. We will provide an update by November 3, 2015 2:48:00 AM PST with more information about this problem. Thank you for your patience.

This issue is affecting incoming POP, SMTP and IMAP connections.
November 3, 2015 2:25:00 AM PST
The problem with Gmail should be resolved. We apologize for the inconvenience and thank you for your patience and continued support. Please rest assured that system reliability is a top priority at Google, and we are making continuous improvements to make our systems better.
Four posts in just over one hour.

Google Calendar Outage

November 4, 2015 8:20:00 AM PST
We're investigating reports of an issue with Google Calendar. We will provide more information shortly.
November 4, 2015 9:25:00 AM PST
Google Calendar service has already been restored for some users, and we expect a resolution for all users within the next 1 hours. Please note this time frame is an estimate and may change.
November 4, 2015 10:25:00 AM PST
The problem with Google Calendar should be resolved. We apologize for the inconvenience and thank you for your patience and continued support. Please rest assured that system reliability is a top priority at Google, and we are making continuous improvements to make our systems better.
Three posts in just over two hours.

Everybody is going to have outages. But this is the way to handle them.

Sunday, November 22, 2015

LG Senior Phone

My 90-ish year old mother hit me up a couple of years ago as to why her cell phone didn't look like her friends'. She was using a Motorola Razr V3. I asked her what her friends' phones looked like. She said flat and black. They were using iPhones.

So off I went on a quest to upgrade her to an iPhone. I turned up an iPhone 4 that suited her just fine. She upgraded it on her own to iOS 7 (yikes!).

But she's continued to struggle with control actions on the iPhone. The main problem is that when she completes a phone call she taps the "home" button. This puts the display back on the home screen but doesn't terminate the call. If the other party doesn't disconnect my mother's phone is still on the call. Luckily I have unlimited minutes but it still means she can't place or receive another call.

She enjoys looking at and sharing photos on her camera roll and I like being able to use "Find My Friends" to locate her.

So I set off on a quest to find a more "senior friendly" phone.

They're not easy to find.

I ended up with an LG Wine Smart D486. It's a flip phone running Android. It's about the same size as an iPhone 4 but slightly thicker.


Here are the specifications. Notice that the keyboard pictured on that page is in Korean. Be sure that the one you get has English buttons.

I had some questions and wanted to read the User Manual. I contacted LG in Taiwan and they referred me to the support page. Although it was in Mandarin I could figure out the link to the PDF manual. It was in Mandarin also.


So I bit the bullet and just bought one. Unfortunately they're not sold in the US so I bought it from an organization in Taiwan. Shipment via DHL was quick. I bought it on eBay on 11/12/15. It shipped on 11/16/16 and arrived on 11/18/15.

So far the D486 is everything that I wanted and more.

Language hasn't been a problem (other than the manual) as it comes up in English on the initial power-up.

Generally it works like a traditional flip phone. It uses the 10-digit keyboard for input so you don't want to type much. The "C" key just above "2" is "Clear." You'll thank me for that.

It's running KitKat 4.4.2 so it's current enough.


The version of Android is slightly tweaked. For example it has an "EasyHome" option for the home screen. This gives a simpler homescreen with bigger icons.


I didn't use this option as I wanted an even simpler home screen.


The big weather and clock widget is an LG custom widget.

Like a traditional flip phone, it has several "hard" buttons. One of them is configurable so I set it to launch Google Photos.


In Settings I found how to set the phone to answer incoming calls by just flipping it open. Flipping it closed terminates the call.


And pressing and holding the green "Call" key will call 911.


But the feature that puts this over the top for me is what LG calls "Safety Care."


"Emergency notice" lets you specify who to automatically text message with the phone's location after an emergency call is placed from the phone.



"Phone non-usage notice" lets you specify who to automatically text message with the phone's location when either the phone hasn't been used for a specified time or when the battery is low.



"My location notice" lets you specify who to automatically text message with the phone's location when that contact is called or a call from that contact goes unanswered. I set the "Unanswered calls only" option so I get a text when I call my mother and she doesn't answer.



I tested this and here's what the text message looks like.


"Out of zone notice" lets you specify who to automatically text message with the phone's location when the phone enters or leaves a preset area. I'm not using this feature.


I enabled Google+'s location sharing to replace the "Find My Friends" function.

It doesn't have the proper LTE bands for AT&T but that's not really a problem for her.

It uses a microSIM so moving from the iPhone 4 to the LG was easy.

It came with a set of Google apps but they weren't automatically updating. I went to the Play Store and downloaded current copies. Now they are automatically updating. Don't forget to install and setup the Android Device Manager.

It's early yet but it seems perfect.

Sunday, November 15, 2015

Oracle and Secure Hardware

An article about Oracle being hacked popped up in my news feed recently.
Interns Hacked Oracle Software in under an Hour, Researcher Says 
Among the many ways in making its software more secure, Oracle, he (founder Larry Ellison) said, is looking at implementing security technology built right into the hardware or the chip. He says that the security feature will be switched on, by default and will have no way of turning it off once it is being used.
I'm not trying to be "Chicken Little" but we have to acknowledge that hackers will continue to dive deeper and deeper into our systems. Thinking that you can build secure technology into hardware or chips is shortsighted.

If you want to put your propeller hat on, here's why it will be hacked.


You'd think Ellison would realize that given his company's history with Java.

References:

https://www.schneier.com/blog/archives/2015/03/bios_hacking.html
https://blog.kaspersky.com/equation-hdd-malware/7623/
http://www.computerworld.com/article/2955641/cybercrime-hacking/macs-can-be-remotely-infected-with-firmware-malware-that-remains-after-reformatting.html
http://www.mcafee.com/us/resources/solution-briefs/sb-quarterly-threat-q1-2015-1.pdf
http://www.darkreading.com/vulnerabilities---threats/bios-bummer-new-malware-can-bypass-bios-security/d/d-id/1139823

Sunday, November 08, 2015

Android Pay vs. Google Wallet

About a year ago I posted about Google Wallet. Since then I've been using it where it was available. I still get questions of "What did you just do?" when I use it.

There was a transition time in NFC payment support when Apple introduced Apple Pay. Some businesses even withdrew their NFC payment support, e.g. CVS, over a squabble about fees.

NFC payment took a giant leap forward recently with the transition from Google Wallet to Android Pay.

Google let this transition appear confusing as they repurposed the Android Google Wallet app to a person-to-person payment system and introduced an Android Pay app to effect the NFC payments.

But there's more here than meets the eye.

In a recent post on an xda-developers.com forum triggered by a deep technical question about rooted devices a Google developer said:
That "ensuring" [that the security model of Android is intact] is done by Android Pay and even third-party applications through the SafetyNet API. As you all might imagine, when payment credentials and--by proxy--real money are involved, security people like me get extra nervous. I and my counterparts in the payments industry took a long, hard look at how to make sure that Android Pay is running on a device that has a well documented set of API’s and a well understood security model.
The above discussion was about rooting and explained why Android Pay was sensitive to that condition. This also explains why using Android Pay requires you to have a lock screen on your device.

Then the developer went on to describe the difference in the relationship of Android Pay to the payment networks.
The earlier Google Wallet tap-and-pay service was structured differently and gave Wallet the ability to independently evaluate the risk of every transaction before payment authorization. In contrast, in Android Pay, we work with payment networks and banks to tokenize your actual card information and only pass this token info to the merchant.
You can experience the difference yourself when you add a credit/debit card to Android Pay. If Google has negotiated with the payment network you will be asked to confirm the addition of that credit/debit card with the payment network. In my experience this is done with a live phone call with the payment network. When that is completed and you subsequently use that credit/debit card in an Android Pay transaction you will NOT be required to enter a PIN.

Alternatively if Google has NOT negotiated with the payment network you will NOT be asked to confirm the addition of that credit/debit card with the payment network. Then when you subsequently use that credit/debit card in an Android Pay transaction you WILL be requested to enter a PIN. This seems to be the same method used by the former Google Wallet app.

This difference in the transaction appears to be related to the tokenization of the credit/debit card information.

Transactions involving credit/debit cards where Google has negotiated with the payment network use a token. Google is not a direct participant in the transaction.

Transactions involving credit/debit cards where Google has NOT negotiated with the payment network use virtual account numbers generated by Google.


Subsequent to my initial experience with Android Pay my financial institution canceled my debit card and reissued it. I went to the Android Pay app, deleted my old card and tried to add the new one. It wouldn't add. It looks like Google is limiting addition of cards to those that they have negotiated with the payment network.

I don't consider myself an expert on this subject. This post is just describing my observations.

Sunday, November 01, 2015

OnePlus One - Three Strikes

I've had an ongoing flirtation with the OnePlus One. The first one I traded. The second one I sold. The third one I kept and used.

But...

It really is BIG.

And FLAKY!

I got used to the size but the niggling issues drove me crazy.

The compass didn't work after upgrading to Lollipop. Seems to be a common problem with Lollipop but my Moto X doesn't have the problem.

Cyanogen OS 12.1 replaced a couple of the AOSP applications. The most irritating one was the inclusion of TrueCaller. Let's just say the the OnePlus community didn't have the same perspective as OnePlus. You could opt out of the sharing capabilities of TrueCaller but my beef was that TrueCaller's incoming call screen had a small thumbnail of the caller while the AOSP had a full screen image.

The vibration of the OnePlus One was very weak. So much that I pretty much couldn't feel the vibrations with the OnePlus One in its holster on my hip. Subsequently I turned on audible notifications for everything which is irritating for everyone.

When I was talking on the phone people mentioned that they couldn't hear me clearly. Some Googling turned up that "Ok Google" detection causes problems with voice during calls. Turning off "Ok Google" detection "fixed" it.

The screen's brightness kept lowering resulting in the screen being pretty much dark when you received an incoming call. I tried several of the workarounds to no avail.

And the battery, while longer lasting than the Moto X, still wasn't as good as my wife's iPhone.

So I listed it on swappa and it sold the first day. Obviously I didn't ask enough for it.

What's next? RDF

Sunday, October 25, 2015

iPad Virtual Desktop

I had lunch with one of my former co-workers recently. We were chatting about virtual desktops (VDI) as that keeps coming up with my current clients.

We were deep diving into clients for virtual desktops. He related that one of their technical architects was working on iOS VDI clients. He was getting frustrated and asked the following question:
Why are we trying to make an iPad work like a Windows desktop?
Good question.