After upgraded from Big Sur to Monterey, my MBP has issues with Motu audio driver, especially when using Video Chat apps. The audio driver crashes when video chat app launches, without any sound playing out at all. The console has such crash log for the MOTUCoreUACAudioServerPlugin:
terminating with uncaught exception of type boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::runtime_error> >: buffer key already exists in the map!
Googling around doesn’t help much. The above log suggests that the app is launching audio twice, leading the output audio driver to clone the same buffer, which is quite mysterious.
Fortunately, Motu USB audio interface actually can work without the driver, just as a common USB audio device. The only side effect is losing the loopback interface in the DAW. After some test of unloading the driver kernel extension, it does work well with the video chat app as a pure USB audio device.
Because Motu doesn’t provide driver uninstall program, the only way is manually removing it. This guide shows how to use systemextenionsctl to uninstall the driver from MacOS, as deleting kernel extension files won’t work. Make sure disabling SIP temporarily beforehand.
Hope that Motu will release newer driver fixing the crash problem.
For the previous post of setup Karaoke with Sonos Beam, there’s a Raspberry with Behringer USB audio interface to do the ADC job. Because the digital Toslink only outputs signal when it’s driven to do so, some high level audio stack would be some prerequisite. Otherwise, the optical sends out no sound by default.
PulseAudio is the simplest option. Just install it and add a loopback module, which will automatically direct audio from input ports into output ports. But the audio latency is non-negligible, up to almost 600ms or more, causing some quite annoying echo effect. After some googling, there’s a startup param “latency_msec” to reduce it a bit. But the delay of the sound is still audible, as PA is stream based, so some stream buffer is always there, causing the latency.
Therefore, Jack audio system will be the final choice, which claims to be realtime. However, the qjackctl config app for Jack is QT based, requiring X window to display the UI properly. This article guides how to autostart qjackctl with LXDE. And this one will auto run graph with patchbay upon qjackctl’s running.
With Jack system, the latency is much better. Although no direct measurement is found, the hearing experience is acceptable that the voice from microphone seems almost instantly played together with the TV audio.
For traditional TV and Amp/Receiver, mixing with microphone is pretty straight forward. Just connect everything to the Receiver or Amp, then it will do the mix and play out the sound to the speaker system. But for Sonos system, sound is native digital and flows thru the interlinks, leaving no where to mix the microphone sound and output to the speakers. After some googling around, it’s mostly said to be impossible to play TV sound together with microphone input (aka. Karaoke) with the Sonos sound system.
Well. It actually can be done with the help of some kind of ADC (Analog-Digital-Converter). In another word, everything should be analog at first, mixed together, then converted to digital, then go to the HDMI input of Sonos Beam, and finally played with all paired speakers.
Nowadays, TVs are all shipped with HDMI outputs, without RCA sockets anymore. But luckily headphone jacket still remains, which means TV sound could output analog signal thru the standard 3.5mm jack. Then a usb audio interface is required to do the mixing work, which will output analog signal (even internally digital in the mixer). Audio Interface with 4 inputs would be better, accepting two microphones and two line-in. A conversion line of 3.5mm jack to 2 6.35mm line-in jack will be needed to route the audio into the usb audio interface, which will mix the mic sound with the previous TV line-in, and output thru 2 monitor RCA jacks. The RCA lines will convey the mixed analog sound output to the ADC.
Some cheap standalone ADC might not work correctly to generate the encoded audio to Beam, which only accepts stereo PCM and Dolby Surround format (DTS now also supported). Luckily, USB audio interface Behringer UCA202 can do the ADC job and output to optical digital signal. Connecting with a computer (or Raspberry Pi), it will digitalize the audio signal again and output to TosLink optical interface perfectly. With the Sonos Beam TosLink to HDMI adapter, Beam will finally and successfully play the mixed sound to all paired Sonos speakers.
After updated to iOS 14.7.1, my iPhone encountered severe battery drain over night, dropping almost 60-70% battery. Tried to disable all kinds of background activity: Siri, Find my phone, Email, Music, …, nothing worked. The battery graph showed nothing was going on during the night, but still drained like a severe slant slope. The battery health even hit 79%, indicating need for replacement service.
The almighty Google of one thread in Apple forum finally saved my phone from a week of battery pain: Resetting the network. Yes, after doing that, it just takes 5% the juice for one night.
Update: Also encounter problem unable to charge after the iPhone 13 event. Turns out that some dust stuck in the plug hole prevents the charging. Brush it out with a long brush (toothbrush is not deep enough), then charging will work normally.
I upgraded VMWare Fusion to version 12 in Big Sur lately. But the vmware-vmx process for the Windows guest system will take 150+ %CPU. Googling a bit that updating vmware tools seems not the solution, this forum thread and the origin source thread looks promising but actually doesn’t help.
After a few trials, disable Hypervisor in the Processor-Advanced will greatly lower the CPU, but some usb devices might also stop working. Finally, disable side-channel mitigation in the advanced settings helps quite a bit.
After shutting down the guest, and modifying the settings, the vmware-vmx process goes back to around 60-80% CPU.
I encountered a strange problem of high CPU from configd and SystemUIServer process in Catalina, which made the fan boosting up with enormous noises.
Just killing these processes won’t help. And googling also doesn’t get much info.
Configd is the system configuration process, while SystemUIServer is the UI handling process. Apparently, something that needs to be configured is going wrong, which also messes up with the UI.
The culprit is the Finder that has iPhone connected. Because iTunes is now gone, Finder is handling the sync with iPhone devices. But for some unknown reason, when iPhone is connected thru USB, an error “Could not check for an update to the carrier settings for your phone. This device is no longer connected” prompts. After that, the Finder’s device tab of iPhone info still works, but the connection status will refresh constantly between success and USB error. Such constant UI updates lead to the CPU high usage.
Reset the finder settings plist file and force quit Finder works only for a while. Choosing the option to hide “CD, DVD & iOS devices” in the Finder sidebar preferences could be the solution. Update: one faulty USB port seems the actual reason that prompts the error.
The Finder’s device sync functionality is very buggy. Sometimes it will keep synchronizing thru WiFi and even prevent the system from restart. Make sure to uncheck the WiFi sync option in the connected device tab too.
Finally, the only stable way to sync/backup with iOS devices is thru iCloud.
HiDPI is just like what the MBP internal “Retina” screen does. It uses 4x resolution to render, and projects the rendered pixels to the target lower resolution on external monitor, which will show much sharper texts and images. So for 1080p HiDPI, it actually renders at 4320p, and shows at 1080p (4 pixel to 1 pixel projection), therefore requiring a 4K screen to work.
Theoretically, there is no benefit to enable HiDPI on a 1080p monitor, because physical screen pixels remains 1080p and the 4K rendered resolution should be projected to the same pixels as original 1080p rendering. However, there’s still a visible improvement, especially in rendering text. Here’s my screenshot comparison.
Without HiDPI, more fuzzy bold rendering of text:
With HiDPI, much sharper and slim rendering:
Since it’s a 1080p monitor, the default device profile won’t list HiDPI resolution options in the display settings. There’s a Mac shareware SwitchResX to install custom resolution profile when SPI is disabled. But this can also be done by the free RDM app and this online profile generation tool. After following the steps to install custom made 1080p HiDPI display profile, you could then select the lightning HiDPI for a 1080p external display with the RDM app.
Update: It still works in Big Sur to activate custom HiDPI profiles. But some things need to note:
ioreg -lw0 | grep IODisplayPrefsKey, now shows a bit different string pended with another 16 byte string, but the vendorID and productID still remains the same, so the old display property file will work too.
disable SIP might not let you change the /System/Library/Displays folder protected in Big Sur, copy the display property file to /Library/Displays folder instead.
There is a good article for WinToGo setup on MBP2018, along with this article and my old post for MBP2012, but they are all just good for USB drives only. If you want to do a Win2Go with a thunderbolt3 drive, several days of rebooting is ahead.
Firstly, WinToUsb won’t list thunderbolt drives, making it impossible to create bootable disk. This means the old way of imagex/dism and bcdboot to make a bootable installable thunderbolt drive is your friend. Then Win10 boot setup fails with mysterious error “Windows setup could not configure to run on this computer’s hardware” during the preparation spinning circle interface. Nothing googled directly helps, including the popular “msoobe” command hack. After hours of trials, this post gives the correct steps of bootable disk partitions creation. Actually, the article at the top mentioned the hack to format with “EFI System Partition”, which will do the same trick to create MSR partition automatically, but the latest windows 10 seems unable to create correctly these partitions with the hack, causing the preparation setup failure.
Secondly, the Windows 1803 version won’t install on thunderbolt3 drive with MBP 2018. It always fails with DMA Access Violation crash blue screen of death. DMA is related to the storage driver. Since MBP 2018 came out in the later half of the year, Windows 1809 version has the correct thunderbolt3 drivers included and will install.
Thirdly, Windows 10 boots, installs, and freezes if boot camp drivers are added into the install media. After several rebooting and studying, the problem might be related to the AMD Radeon drivers and ReLive settings. The solution is to begin setup without the add-driver step. It means that some external mouse and keyboard should be used during the install process. The built-in keyboard with touch bar as well as the trackpad won’t work without boot camp drivers. So a set of external usb keyboard/mouse for the setup is necessary.
Finally, Win2Go of Windows 10 can install and run successfully now. Though, standalone boot camp drivers install might take quite a long time and hang for some USB XHCI controller. Anyway, it doesn’t matter to have an unrecognized mass storage device after a forced restart. Everything works with super fast speed, including the AMD display card, the thunderbolt drive and all USB devices!
The unrecognized devices listed in Win10 Device Manager could be T2 chip related devices, which are reserved only for OS X and unaccessible in Windows. Since ACPI power management is also controlled by T2, Win10 will have to use standard Microsoft driver for power management. This will sometime lead to some strange battery behaviors, like discharging even if ac power is plugged-in. The only hope is some future released BootCamp drivers.
Latest Raedon 18.40 bootcamp drivers are here, which seems to fix the power discharging issue when GPU is on.
Just migrated my old rMBP 2012 to new MBP 2018. With the help of Migration Assistant, everything seems as good as the old one, except that Office365 is not activated. When activating Office, it will always fail, reporting some unknown error 0xD0000FFFE.
It seems that the existing license was not correctly migrated.
After some Googling, solutions like deleting folders under ~/Library/Group Container is ridiculously unacceptable, since it will remove all your Outlook inbox folders!
This post has the official software to remove the existing license. Then re-activate Office365 will succeed happily.
Just upgraded to WordPress 5.0 and found a strange problem of theme customize live preview showing some domain Ad website instead of my own site.
Googling around shows nothing useful but quite a few sites have similar domain advertising site description listed in the Google search results, which means they got hijacked too.
By disabling the plugins one-by-one, it turns out that Akismet3 is the culprit which shows version 3.9.9 from wordpress.com without “view details” link. Don’t know how it got installed. The official one should be Akismet Anti-Spam, version 4.1, from Automattic, and with “view details” prompting the plugin introduction.