Showing posts with label systems. Show all posts
Showing posts with label systems. Show all posts

Friday, June 11, 2021

PWM, temporal dithering and headaches with newer Apple displays

iPhones

Most new smartphones use a display technology called OLED.  These displays use a technology called PWM (pulse width modulation) for dimming the display.  This creates a flicker, which while not perceptible to the eye, can cause all kinds of symptoms -- headaches, nausea, etc.  Every time I have tried the newer iPhones with OLED displays in the store, I find I immediately feel eyestrain.  This has kept me from buying one of them and I have stuck to an iPhone with the older display technology called LCD.

If you have had issues with newer phones, you might be sensitive as well.  This article sums up the problem nicely.

PWM may not be the whole issue.  There's also refresh rates (which impacts the smoothness of scrolling), addressed to some extent by ProMotion in some newer iPhones, and also temporal dithering.  More on temporal dithering below.

MacBooks

With newer MacBooks, a small, but not insignificant, number of users, including myself, have experienced really bad headaches when using them.  A few things that I did to try and mitigate the problem included turning off true tone, turning off auto brightness, and turning off dimming when running on battery.  None of these helped.

Digging deeper, I discovered that there's a feature called temporal dithering that Apple implements in order to render a larger number of colors than the display is natively capable of.  Unfortunately there is no way to turn this off using native controls in macOS.

In some of the forums, it was suggested that SwitchResX is an app that can be used to disable temporal dithering by setting the display to render millions of colors rather than billions of colors which is the default.

Another useful tool for checking various aspects of displays such as pixel inversion is the Lagom LCD monitor test pages.  Testing side by side with a Dell XPS, the M1 MacBook Air showed noticeably more flicker.

Finally, Iris is another tool attempts to get around PWM with laptops by using an app to control brightness and filtering colors in a way that makes the display experience easy on the eyes.

References

Tuesday, May 9, 2017

Apple Macbook Pro: 3 failures in < 4 months of ownership

I got a 2016 Macbook Pro non-Touch Bar back in January of 2016.  I have now had 3 failures in less than 4 months of ownership.
  • RAM failure which caused the machine to constantly shutdown.  System board replaced.
  • 'x' key stopped working.  Key fixed.
  • Scrolling intermittently stops working on the touchpad.  Currently in for repair.
Each repair results in about 5 days of lost service--make an appointment at the store, take it in, have it shipped for repair, and have it shipped back--not to mention the inconvenience of needing to perform a backup, and erasing sensitive data before taking the machine in.

The cost of each repair without warranty would be a whopping $475.  Fortunately the machine is still under warranty.

And I really don't like having to give out my machine's password which can be viewed in the clear by Apple employees.  They need to figure out a better way to service machines that does not involve the user giving out their password.

Update:

After I got the machine back following the 3rd repair, the machine would make a "popping" sound when opening and closing the lid.  I took it back to the Apple store and this time I asked for a replacement.  They ended up giving me an upgraded machine in exchange--a max'ed out 13" Touch Bar Macbook Pro.  I've had some graphic glitches with the machine when waking it up, but after a couple of software updates, it seems to be working OK.

Update 2:

I discovered a cosmetic defect on the Touch Bar model and so I ended up returning that and ordering a 2017 non-Touch Bar model.  The 2017 model has worked out OK so far.

Thursday, April 27, 2017

vi tips

To format text removing line wraps:
!}fmt

To mark/delete/paste blocks:
  • At the beginning of the block: ma [mark a]
  • At the end of the block d'a/y'a [delete till a, yank till a]
  • To paste the block: p/P
To change everything from upper to lowercase:
%s/.*/\L&/
To search and replace "text1" with "text2" throughout the file:
1,$s/text1/text2/g

Friday, February 6, 2015

What do I use my iPhone for?

Aside from being an extension to my computer for things like email and web browsing, my iPhone has essentially replaced the function of all of the following devices
  • Watch
  • Calendar
  • Music player (for the car)
  • GPS/maps
  • Compass
  • Alarm clock
  • Scanner
  • Flashlight
  • Timer (for cooking, meditation, catnaps)
  • Camera (I no longer own a regular camera)
  • Calculator (although I prefer bc when I'm at a regular machine)

Tuesday, October 7, 2014

macOS stuff

This post is a collection of little things related to macOS (Mac OS X was rebranded macOS).  I will be updating it with some of my learnings and the various changes that I made to customize the shell for my use.

bash

.bash_rc vs .bash_profile

bash has two places where one can put startup commands -- .bashrc and .bash_profile.  .bash_profile is executed only for login shells.  .bashrc is executed for non-login shells.  If one has commands that only need to be executed for both, then one can create a .bash_profile and source .bashrc from there by adding the following line to the .bash_profile:

. ~/.bashrc || echo "problem sourcing ~/.bashrc"

On Mac OS all shells are login shells.  So I just use .bash_profile.

aliases and functions

Aliases are discouraged in bash, but I use them anyway.  An example of an alias I use is:

alias ls='ls -lF'

If I wanted to use a function, I would have used:

ls(){ command ls -lF "$@" ; }

One key difference between bash and csh is that in bash, aliases cannot accept arguments.  So for any such aliases in csh, one would have to define functions in bash.  For example, here's a function pg:

pg(){ open /Applications/iWork\ \'09/Pages.app/ "$@" ; }

At the command line I can simply say "pg file" and the pages application is started up with the file specified.

Case insensitive auto-completion

Create a file ~/.inputrc and add the following line in it:

set completion-ignore-case on

This will prevent /etc/inputrc from being used.  On macOS, there is no /etc/inputrc by default, but if there was you get around it by adding the following line as the first line in the ~/.inputrc file:

$include /etc/inputrc

findword utility

This is a useful utility which scans files for a given word within all files in all subdirectories from where the command is executed.

findword(){ find . -type f -exec egrep -i "$@" {} /dev/null \; ; }

macOS versions and hardware compatibility

Versions of macOS are described here.

Hardware compatibility (i.e. latest version of macOS) that is supported on any device can be found at EveryMac.com.  Just find a given machine and at the bottom of the page are the details regarding OS compatibility.  For example, for my 2010 Macbook Pro, the details are here (search for "Maximum MacOS" on this page).

Battery health
  • Applications -> Utilities -> System Information.
  • On the left, under "Hardware," select "Power."
  • There it will show the charge capacity, number of cycles, and condition.
  • If you need the design capacity, you have to use an app such as coconutBattery.
Disabling facetime notification sound

When receiving calls on a cell phone running iOS, the calls appear on macOS.  This causes an annoying sound, especially if one is already in the midst of a conference call via some other tool like zoom or skype.  To disable these sounds, do the following:

System Preferences -> Notifications -> FaceTime -> Play sound for notifications (uncheck)

Useful applications
Other useful stuff

Monday, March 31, 2014

Some useful tools for the Internet

Here are some tools that I find useful.
  • isup.me - Checks whether a site you're not able to reach is up.
  • Speakeasy Speed Test - Checks the upload and download speeds of your Internet connection.
  • Dr. Link Check - Free for up to 1000 links.   Occasionally reports false positives because some sites block the tool, and it times out on slow sites.
  • Adblock Plus - Surf the web without annoying ads!

Thursday, May 30, 2013

What happened to the links for astrology forecasts?

For many years now, since around 1994/1995, I maintained a page with links for astrology forecasts using my account at Duke University where I was a graduate student at the time.  I continued to have access to the account even after I graduated.  A few months ago, I lost the ability to login to my account there.  Then a couple of weeks or so ago the page went offline.  As a result, I didn't have a way to notify users of the page about the new location.

I'm currently hosting the page at anoop.netlify.app.

Monday, March 4, 2013

A new host for my web page

I attended graduate school in the Electrical and Computer Engineering departments at Duke University where I built my first home page. I just had a bunch of HTML files all in a folder public_html folder. My account and web pages there have been active all along. I started looking for alternatives for a similar service ever since I graduated (which was a long time ago).
These were my requirements:
  • Free (or nearly free). 
  • Allows me to provide my own HTML and CSS files. 
  • Strongly prefer no advertisements. 
Many years ago, Geocities provided such a service. Geocities was subsequently acquired by Yahoo, and Yahoo later discontinued the service. So I had to look for yet another alternative.

Most places that advertise that they offer free websites don't really offer the control of hosting your own HTML files (or even if they did, I wasn't able to find it). Among several options that I explored were Google Sites, Weebly, and Wordpress. All of these require one to pick a pre-defined template and then edit content within the confines of that template. I never quite liked any of the templates. In fact, I'm not particularly crazy about the template of this blog, but it works. I kind of like things plain.

Dropbox

I was pleasantly surprised when I accidentally stumbled across someone that was hosting his HTML files on Dropbox. After confirming with him that that is indeed what he was doing, I created an account and moved my files over to Dropbox to be my new home on the web. It met all the 3 requirements that I stated above. Dropbox is actually a file sharing/file synchronization service. However, they have a public folder and anything that is put there can be shared with anyone. So one can have both HTML and non-HTML files and they would all be publicly accessible.

But all that ended in 2016...

Netlify

On 8/31/2016, I received the following email from Dropbox:
Hi Anoop, 
We’re writing to let you know that we’ll be discontinuing the ability to render HTML content in-browser via shared links or Public Folder. If you're using Dropbox shared links to host HTML files for a website, the content will no longer display in-browser. 
Please note that this change will take effect for your account on October 3, 2016, and only impacts how shared files are displayed on the web. Your files will remain safe in Dropbox. 
Thanks for being a loyal Dropbox user. 
- The Dropbox Team
As a result I started looking for another low-maintenance website.  I found a couple of blogs about this topic and quickly signed up for bitballoon (now netlify).  My new site is at https://anoop.netlify.com.

If you would like to keep working with Dropbox

UpDog allows you to render html files stored in a Dropbox Apps folder.  Download times can be slow as it involves UpDog retrieving the files from Dropbox.

Update: UpDog shut down its service on Feb 8, 2020.  There are alternatives, but they all appear to be paid, not free.

Other alternatives

Non-Dropbox alternatives that I explored
Here area a couple of blogs that discuss static web hosting alternatives.

Sunday, October 21, 2012

Opting out of interest-based ads in iOS 6

I came across this in message boards on macrumors.com.

Apple decided to enable tracking by default in iOS 6.  To opt out, go to Settings -> General -> About -> Advertising and turn ON the Limit Ad Tracking option (OFF by default).

There's more information on what this is all about on Apple's website.  The tracking information is used to tailor advertising from the iAd network.  By disabling this, you'd still get advertisements, but they will be random rather than tailored based on information in an application or other non-personal information on the phone.

If you ever restore the phone, the setting will default back to OFF and must be enabled again.

Opting out of AT&T's ads and information sharing

You can opt out of receiving interest-based ads from AT&T by updating your preferences here.

Monday, April 16, 2012

iPhone stuff

Here's my list of iPhone apps that I think are very useful. I'll keep updating this list as I find new ones.

Streaming directions from Apple Maps to your car's speakers

This requires the car to have bluetooth and the phone to be paired with the car.  Then follow the directions in this article to enable HFP prompts.

Testing RF performance

From the iPhone keypad, dial *3001#12345#* and hit “Call”

This will bring up the true signal meter to replace the bars. You can use that to determine just how badly the signal is fluctuating. If you are standing outdoors with the phone on a level surface and not moving, the meter shouldn't change more than 10 db.

iPhone camera specs

This article provides a nice comparison of the cameras in iPhone 4 through iPhone 5s.

Manuals
  • Manuals for various versions of iOS are available here.
  • User guides for the iPhones currently on sale are available here.
The most versatile device?

Aside from being an extension to my computer for things like email and web browsing, my iPhone has essentially replaced the function of all of the following devices
  • Watch
  • Calendar/planner
  • Music player
  • GPS
  • Compass
  • Alarm clock
  • Scanner
  • Flashlight
  • Calculator
I don't consider at the point yet where is can replace my computer, though, mainly because it's very hard to connect to certain websites and get them to deliver their native pages; many websites only offer a pared-down mobile version once they detect they are connecting to an iOS device.

iPhone camera controls

I took a free 1-hour class at the Apple store on 12/27/15.  I learned a few things about the camera.  Here's what they covered:
  • Regular picture, square picture.
  • Focus, focus/AE lock (tap and hold), exposure adjust (by sliding finger up and down).
  • Changing perspective by rotating the camera because the lens sits differently in each of the 4 positions.
  • Burst mode (vary the number of shots by holding the click button), timer mode (displays a count down and the number of shots), live photo mode (captures 1.3 seconds on either side of the shot within the jpg file, use a long touch to view the photo with motion).
  • Panorama mode.  
    • Can be set to create a panorama shot moving left-to-right or right-to-left.
    • Phone must be upright for side-to-side shots.
    • Phone must be tilted 90 degrees for top-to-bottom shots.
  • Flash settings -- auto, on, off.
  • HDR - high dynamic range.  This is useful when taking pictures with a combination of bright and shadows, e.g. during sunset.  HDR and flash are mutually exclusive.
  • Video, slow-motion video (120 or 240 fps depending on size 1080 v 720), time-lapse video (compression of long duration events at 1 fps).
    • Focus/AE lock works but you cannot change the exposure.
  • Digital zoom for photo and video.
  • Viewing, editing the album.
Many of these features are covered in this video.

Checking feature availability on carriers

Feature availability on various carriers (e.g. visual voicemail, WiFi calling) can be checked here.