Kindle Paperwhite Locks Up / Hangs When Connected to Mac Via USB

I plugged my Kindle into my Macbook. The Kindle went to “USB Drive Mode” and locked up. The Mac did not recognize it as a USB drive. (The Mac ignored it.) The Kindle did not leave USB mode when unplugged. I’m using OS X El Capitan 10.11.6.

I had to hard-reboot the Kindle by holding in the power button until it restarted. The problem was 100% repeatable.

After several tries with my Macbook, I rebooted the Kindle and plugged it into a Windows notebook and it worked as designed. So it was a problem with my Macbook.

I unplugged everything from my Macbook, rebooted the Kindle, rebooted the Macbook, and re-connected the Kindle to the Mac. It works. 100% repeatable.

I suspect that VMware Fusion had messed up my USB port. (I exited VMware, but that didn’t cure the problem. I had to reboot the Mac to fix the issue.)

Converting Kindle Books With Calibre Missing Grapics

I did a format conversion with Calibre, to convert a Kindle AZW into another format. When I did, all of the figures/illustrations/graphics were missing or blank.

It turns out that when a book gets downloaded to a physical Kindle, special things happen to the graphics. They may not be available in converted output, or they may be reduced to monochrome.

To avoid the issue, convert a freshly-downloaded copy of the book, instead of the book currently on the Kindle. Go to the Manage My Kindle page at https://www.amazon.com/mn/dcw/myx.html and choose “Download & transfer via USB” in the Action column. Download the .azw. Convert this file to your desired format.

Of course conversion only works for non-copy protected books.

Temporary FTP Server With IIS

I work in a corporate environment. Sometimes, someone needs to send me a large file. I have a shared folder on a NAS, which works for most users. We also have a web-based file-drop.

However, if I’m working with a Linux server person, if his server has no GUI, he can’t always manage to deliver a file to an SMB server or navigate a web interface. He ought to be able to transfer that file from his server to his Windows laptop, and from there to the web file drop, but sometimes our support staff are… unmotivated or perhaps un-talented. They speak FTP and that’s about it. I could talk with their supervisor, in order to motivate them to try harder, but when I want to expedite an immediate solution, it is useful if I can just bring up a temporary FTP server.

Here’s a no-added-software way to do this with Windows 7. (It is similar for other versions, but may have minor variances.)

For first-time setup, skip to the ‘One-time Setup of Inactive Server’ heading below.

Activate the FTP Server When You Want to Use It

  • Run: inetmgr.exe
  • Right-click on the site » Manage FTP Site » Start
  • Discover your IP address: ipconfig | findstr /I ipv4
  • Test it to be sure it is really accepting login.
  • Provide your IP address to the person who wants to send you the file. Template:
    • Hello, I have set up a temporary FTP server at xx.xx.xx.xx. User is “anonymous”. Use your email address as the password. This is only a temporary FTP drop on my personal laptop, and that IP address will change the next time my laptop gets a new address from DHCP, so please send the file AS SOON AS POSSIBLE and please notify me when delivery is complete.

One-time Setup of Inactive Server

  • Create ~\My Documents\Incoming-FTP.
  • Grant Permission to <computername>\Users (via right-click on the Incoming-FTP folder)
  • Grant all permissions except Full Control.
  • Run: OptionalFeatures.exe
  • Enable
    • Internet Information Services » FTP Server »FTP Service
    • Internet Information Services » Web Management Tools » IIS Management Console
  • Run: Inetmgr.exe
  • In the right column, right-click and remove Sites:Default Web Site
  • Right-click and ADD FTP Site.
    • Name the site “Incoming” and point it to ~\My Documents\Incoming-FTP.
    • Do NOT start automatically and do NOT allow SSL.
    • Authentication = Anonymous
    • Authorization = All Users
    • Permissions = Read and Write

Shrinking VMware Virtual Disks

I had a Windows 10 VM, created from a real PC using VMware Converter. The PC had one disk with two partitions. I couldn’t get VMware Fusion to shrink the disk.

I tried using Fusion on the host, going to General from the Settings for the VM. I told it to shrink the single VMDK (which had the two partitions in it). It wouldn’t shrink it below 240 GB.

Then I went to a CMD prompt in the guest, and I used

  • VMwareToolboxCmd.exe disk shrink D:\

and I shrank my VMDK file down to 80 GB.

Notes on Ableton Live

High-level:

  • Ableton Live is a Digital Audio Workstation (DAW).
  • It is used for creating/editing digital audio compositions. (Tunes, symphonies, sessions, etc.)

Technical:

  • Documents are called “Live Sets”
  • Core Library is in C:\ProgramData\Ableton\Live 9\Resources\Core Library or ~/Library/Application Support/Ableton/Live 9 Core Library
  • Downloaded Live Packs are in ~\Documents\Factory Packs or ~/Music/Ableton/Factory Packs
  • User Library (with your presets and defaults) is ~\Documents\Ableton\User Library or ~/Music/Ableton/User Library
  • Drag up/down on the ruler to zoom in/out.
  • Drag left/right on the ruler to scroll left/right
  • Switch between Arrangement (timeline) view and Session view with Tab.
  • Switch between Clip View and Device View with Shift-Tab (for a MIDI track)

Tasks:

  • Get some ‘starter’ data to work with
    • Download, unzip, and add to the PLACES panel in Ableton: “Chapter Examples” from http://www.oup.com/us/interactivecomposition
  • How to play some midi sound
    • Select Arrangement View
    • Drag a .mid file from PLACES to a MIDI track. (When it asks about adding the tempo, tell it No.) This adds “un-voiced” MIDI data.
    • Drag a Sound from CATEGORIES on top of the MIDI track. This adds a voice (“sound”).
    • Press spacebar to play/stop.
  • Create a new MIDI voice (instrument? sound?)
    • We’re going to take a set of mp3 files with 3 octaves of trombone notes and turn them into a new MIDI instrument (a voice to apply to MIDI data so you can hear it).
    • Using your web browser, go to http://www.compositiontoday.com/sound_bank/trombone/trombone.asp and download each of the notes by right-clicking on the note on the staff.
      • Name the files something like Tromb-2-G.mp3 for the sample of the note G2.
      • These samples are all MP3 files, but I’ll bet you can use many other audio file types.
    • All of the following instructions are in Ableton Live Intro v9.7, unless otherwise indicated…
    • Select Arrangement view using the icon with 3 horizontal lines near the upper-right corner of the main panel.
    • Select the Instruments CATEGORY.
    • Drag Instrument Rack (an “instrument”) onto the top track in the main panel. It should say “1 Instrument” to the right of the track.
    • Double-click on “1 Instrument”. In the lower-main panel, you should see “Drop Audio Effects Here”
    • To the left of “Drop Audio Effects Here” is a panel which says “Drop an Instrument or Sample Here”. This is your Instrument Rack.
    • Drag all of your trombone sample files from your Finder/Windows-Explorer window and drop them onto your Instrument Rack.
    • Now you have 37 notes in your Instrument Rack.
    • There are some buttons on the left edge of your Instrument Rack. ( Hover over them to see which is which.)
      • Enable Device Activator
      • Hide Macro Controls
      • Show Rack’s Chain List
      • Hide Devices
    • Press the button labeled “Key” in the Instrument Rack.
    • The bulk of the Instrument Rack now contains a piano keyboard and long green lines. There is a green line for each imported sample (MP3 file). The green line indicates “this sample file will be played when this note is pressed.” It is currently showing you that every sample file gets played for every note on the piano. You will need to tell it that each sample gets played by exactly one piano key.
    • To hear what this Instrument Rack sounds like now, look near the upper right corner of your screen. You’ll see a tiny button that looks like a few notes of a piano keyboard, a button labeled “KEY” and a button labeled “MIDI”. Ensure that the piano keyboard button is enabled. (Yellow. Click it to toggle, if necessary.) Press the “A” key on your keyboard. You should hear lots of noise. This is because every key on the piano is playing ALL samples. Yuck.
    • First, you’ll want to tell it not to play all those notes.
      • Click on any sample in the Instrument Rack (e.g. Tromb-4-A). Press Control-A (Cmd-A on the Mac). This will select all samples.
      • Drag the left edge of any of the green bars to C0. Drag the right edge of any of the green bars to C0. You’ve now told it that C0 on the piano keyboard will play all samples, and no other piano keys do anything.
    • Next, we’ll tell it to play the Tromb-4-C sample only when the piano key for C4 is pressed:
      • Scroll up/down in the Instrument Rack until you find Tromb-4-C. Click it.
      • Drag the right edge of the green bar for Tromb-4-C to piano key C4.
      • Drag the left edge of the green bar for Tromb-4-C to piano key C4.
      • If you have a MIDI keyboard connected, press C4. If not, press the K key on your keyboard. (If you are using a non-QWERTY keyboard, press the 8th key on the home row. Ableton uses your physical key’s location and not the letter associated with that key.) You’ll hear Tromb-4-C played.
    • Repeat the process you applied to Tromb-4-C for all samples and assign each sample to the desired piano keyboard key.
    • Test your instrument rack using your MIDI keyboard or the home-row keys on your computer keyboard.
    • To see if this works with Ableton MIDI data, take a .mid file (I used “Piano Riff 1.mid” from http://www.vjmanzo.com/oup/ic/Chapter_Examples/Chapter%201%20-%20Basics.zip) and drag it from PLACES and drop it on the first track (labeled “1 Instrument”) in the main panel.
    • Press the spacebar and you should hear the tune played.

Getting to Know Your Android Wear Smartwatch

I bought an Asus Zenwear 2 Android Wear Smartwatch because:

  • My phone lives in my pocket, not on my desk.
  • It frequently signals for my attention, as text messages, calendar alerts, etc. arrive.
  • Every time I pull it out of my pocket is a risk that I’ll drop it or accidentally fling it across the room.

Basically, I just wanted to move my phone alerts from my pocket to my wrist.

Here are some suggestions on how to get to know your smartwatch.

  • When it is new, pair it up with your phone and don’t install any new software except for the latest OS.
    • Install Android Wear from the Google Store onto your phone. Launch it. Follow its prompts until it says “Connect your watch”.
    • Turn on your watch. (Or factory reset it, if necessary.)
      • It boots slowly. Be patient.
      • If you factory reset your watch, you’ll want to go into Android Wear on your phone and ALSO tell it to forget your watch.
      • After your watch starts showing multi-lingual welcomes, swipe from right to left. Select your language by tapping.
      • It will tell you to attach it to a power source. You can swipe from the right to skip.
      • Swipe from the right as needed, to step through its instructions.
      • Tap the watch when its name appears on your phone.
      • The watch and the phone will switch to showing a numeric code. Accept this code on your phone.
      • Step through the prompts on your phone. Say OK to everything.
      • Eventually your phone will return to the Android Wear home screen and it should say that your watch is connected.
      • Your watch may say “updating” and or “syncing” for a while. Just wait for it to finish.
  • Live with it as a plain watch for several days.
    • It is easy to get overwhelmed by the thing. What are all the gestures? How do I make sense of it?
    • If you need to dismiss a notification, swipe from the left.
    • If you need to scroll down on a notification, swipe from the bottom.
    • If you get a notification (such as Calendar) which says “+3 more” or something similar, tap the “+3” to expand the list.
    • There’s a rumor that battery life will be terrible on the first 2 days, but it will get better. That matches my experience, but I did other stuff too, so I can’t tell for certain. The first day I had it, it was dead after 14 hours. By day 5, it was still at 75% at 11 hours. (Again, I fiddled with it, so I can’t say for certain why.)
    • After you’ve lived with it as a watch for several days, continue below. “Day 1” is the first day AFTER you lived with it as a plain watch for a while.

  • Day 1: Shut up and leave me alone - a.k.a. Theater Mode
    • Sooner or later, you’ll be in a situation where you need your watch to be quiet and stay dark, such as when you go to see a movie.
    • From the watch display, swipe down to see “Do not disturb”. This would silence your phone, but we’re going to make it stop lighting up too, so…
    • Swipe twice from the right to see “Theater mode”.
    • Tap “Theater mode” to darken and silence your watch.
    • Note: This does NOT silence your phone.
    • To awaken your watch, press the stem (the button you would use to wind a mechanical watch).
      • If your watch does not have a stem, multiple taps on the screen should awaken it.
  • Day 2: No, really shut up and leave me alone. a.k.a. “Oops. Sorry. I thought I shut that off.”
    • You learned how to put your watch to sleep yesterday but, oops, your phone still made noise in the middle of Uncle Bob’s funeral. Theater mode affects the watch, not the phone.
    • You can put your phone into semi-silent mode by:
      • On the watch screen, swipe from the top. You’ll see “Do not disturb”.
      • You can tap “Do not disturb” to put your phone into “Alarms only” mode, but that puts your phone into “alarms only” mode.
    • If you really don’t want your Calendar alert for your daily “Post to Twitter at 3:45” going off in the middle of Uncle Bob’s funeral, you’ll have to do that from your phone.
    • To silence your watch and your phone:
      • Put your PHONE into “Do not disturb” and “Total silence” mode.
    • To silence everything and darken your watch:
      • Put your PHONE into “Do not disturb” and “Total silence” mode.
      • AND put your watch into Theater mode.
    • Little dot near 12:
      • Sometimes there is a little dot near 12 on the display. That is showing you that your phone is in “Do not disturb” mode. It is the same icon you see on the DND screen, except much smaller.
  • Day 3: Learn to check your battery level.
    • Check this on the phone, not the watch.
    • Open Android Wear (on your phone).
    • Tap the gear icon (settings)
    • Tap the name of your watch on the Settings page
    • Tap “Watch battery”
  • Day 4: Change your watch face.
    • On the watch screen, swipe from the right
    • Tap Settings
    • Scroll down to Change Watch Face
      • Reminder: Scroll down = swipe from the bottom
    • Scroll left/right to find a face you like
    • Tap the face to select it
  • Day 5: Unlock your phone when it is near your watch. (Assumes you use a PIN on your phone.)
    • On the Phone…
      • Settings » Security » Trust Agents » enable Smart Lock
      • Settings » Security » Smart Lock » Trusted Devices » Add Trusted Device » Bluetooth » add your watch
    • There’s a risk here. Generally, it seems convenient to have your phone unlocked when you’re wearing your watch. But when you take off your watch and your phone to charge them, don’t let them out of your sight.
  • Day 6: A “two-fer”. Install two calculators:
    • Calculator for Android Wear
    • Wear Tip Calculator
    • You install these on your phone. They get auto-added to your watch.
    • To access the watch’s menu of apps, swipe from the left. Then scroll down.
  • Day 7: Install Google Fit.
    • Before installing, I’m at about 70% of battery remaining at 8 PM.
    • This is a fitness app. I don’t know much about it yet. I’m installing it because my phone recommended it.
    • For the most part, it provides Fitbit-like capability.

Knowing Where to Put The X

There was a large company, with many complex machines. Bob, the senior engineer, retired. They gave him a retirement party and allowed him to purchase a gold watch. (Companies used to give a gold watch at retirement, but they don’t any longer.)

Six months after Bob retired, one of the old machines broke. None of the new engineers could fix it. They all said, “Only Bob can fix this generation of machine.”

So they called Bob. Bob said, “I don’t want to work any longer.” They said, “We really need this machine. We’ll pay whatever it takes.” Bob said, “$10,000.” They said, “OK.”

So Bob came in to work. He looked at the machine for a while. He listened to it making noise. He took out a role of masking tape and marked an X with it. He said, “Smack it right there with a hammer and it will work.”

So they smacked it and… the machine started working again! Bob said. “I want my $10,000.” Leadership said, “You can’t expect us to pay $10,000 just for putting some tape on a machine. You have to send an itemized invoice.”

A week later, they received an itemized invoice:

  • Placed tape on machine: $1
  • Knowing where to put the tape: $9,999

OneNote 2016 Quick Notes Is Empty and Shows Loading Please Wait

I upgraded from OneNote 2013 to 2016. The “Quick Notes” pseudo-notebook (the Quick Notes icon at the bottom of the list of open notebooks) came up empty, showing “Loading… Please Wait” – forever. Bummer.

There’s a bug in OneNote 2016. The Quick Notes button must be connected to a folder in a closed notebook. i.e. I have an open notebook with an “Unfiled Notes” folder. I went into File » Options » Save & Backup and set my Quick Notes Section to this folder. So long as this notebook remains open, the “Quick Notes” button at the bottom of the notebook list shows “Loading… Please Wait”.

If I close the notebook, exit and restart One Note, then Quick Notes is populated.

Solution: Move your Quick Notes into their own notebook, and leave it closed – or just ignore the Quick Notes pseudo-notebook, because your quick notes are saved in the folder you told it to use.

Ubuntu Guest With Mouse Latency Under VMware Player

Mouse performance is poor when I’m running an Ubuntu 16.4 guest in a VMware Player VM. The mouse periodically hangs for a second or two when I move it around the guest. The latency is a major annoyance.

I found this to be relevant.

NumLock is indeed on in the VM and off in the host, and the mouse hangs at the edge of the VM window. (The Num Lock keyboard LED does not light, but typing with the numeric keypad reveals the on/off discrepancy.) Toggling Num Lock via the NumLock key within the VM fixes the latency.

My host boots with NumLock off, by default.

To disable Numlock-on-boot in the VM:

  • Shut down the VM.
  • Edit the .vmx file and add (after the config.version line):
    • bios.forceSetupOnce = “TRUE”
  • Start the VM. It will boot to the BIOS.
  • Select “Keyboard Features” on the Main BIOS settings page
  • Ensure it is OFF. (It was already off for me, so UBUNTU was setting NumLock, not the BIOS.) I cycled it through its values and re-saved the BIOS settings and rebooted.
  • It came up with NumLock off.
  • I shut down the VM, exited VMware, and re-launched the VM.
  • It came up with NumLock off and no pauses.

It could be that re-saving the settings fixed it. It could be something funky about having to toggle NumLock once per host boot, to get the state in synch. I’ll have to watch to see if it comes back when I reboot the host.

I’ve read that this has to do with Dell touch pads and the TouchGuard feature “thinking” that NumLock gets toggled when you enter/exit the VM. TouchGuard thinks you just typed a key and so it pauses the touchpad to prevent touchpad actions while typing. This matches the observed behavior – it does not hang when using a non-touchpad mouse.