WiFi Direct printing on MacOS High Sierra 10.13 and iOS 11 is terrible. Windows and modern Android handles "juggling"[1] of WiFi connections for you. Apple's software does nothing helpful with regard to using WiFi Direct. You are on your own to juggle[1] WiFi connections. It's worse than the old (and slow) Bluetooth printers, where at least the computer handled connecting to the printer for you.

Adding a WiFi Direct printer on MacOS

  1. Ensure WiFi direct is enabled on the printer, have your Mac connect to the WiFi Direct network the printer creates. Using you're usual WiFi network is potentially wrong and connecting to the printer with it may not help you print in the future.
  2. Open the System Preferences app. Then click for Printers and Scanners. Hit the plus button to add a printer, and the WiFi direct printer should appear in the list. Follow the usual process to add the printer.

WiFi Direct printing on Windows 10 or Android

  1. Print as usual. The printer is in the list and your device will handle connecting to it automatically.

WiFi Direct printing on MacOS or iOS

  1. First rule, you have to connect to the same WiFi network as the WiFi direct printer. Since connecting your device and printer to the same WiFi router defeats the purpose of WiFi Direct, you'll have to connect to the WiFi Direct network your printer creates. Open your settings app, go to WiFi settings, select the right network, enter the WPA password if needed, wait for it to finish connecting. (On a Mac, it's faster to do most of that using the WiFi item in the system menu bar.)
  2. Now you can print like normal. The printer will be in the list and can connect now.
  3. Don't forget to reconnect to your usual WiFi network after you are done printing.

What about AirPrint?

AirPrint only works when you are already connected to the same WiFi network. It's not at all helpful.

The Solution

For the time being, there isn't one. You're choices are to manually juggle[1] the WiFi network, use Windows or Android, or get a bluetooth printer instead of a WiFi Direct printer. Personally, I miss my HP OfficeJet 100, even considering the ink service module.

Update Sept 1, 2018

I figured the problem may be caused by MacOS blocking the various system extensions the HP app tried to install. So I completely uninstalled the printer, reinstalled it, and ensured that I allowed the extensions to be activated. Turns out, this didn't help. The computer still won't print unless I connect to the same WiFI network the printer is on, or I connect to the printers WiFi Direct network.


Footnotes

[1]: By "juggling" of WiFi networks, I mean the manual process of connecting to the printers WiFi Direct network, printing, and then manually changing back to your usual WiFi network.