[Catalina] Voice Chat not working in Heroes of the Storm

I have tried all the commands but i get - can not open data file. What am I doing wrong?

Check the pathway to the data file “TCC.bd” on your computer. The terminal command I provided goes Library >> Application Support >> com.apple.TCC >> TCC.db. If your pathway is different, then you’ll have to modify the terminal command for your pathway.

This is incredibly frustrating that this is even a thing that needs to be done, and i’m glad I didn’t try to fix this issue even a few months ago before all of you worked your magic and figured this stuff out. I guess thank you to whoever is “smarter” than Zentgraf? but really, thank you Zentgraf for the initial how-to. Thank you Yella for continuing to have issues and figuring more stuff out. Thank you easyNow for also having issues (I also copy/pasted and had issues), and thank you Bonegripper for preformating the text. You’re all wonderfully smart in the world of computers and command code, or at least had issues and did what you had to do to learn how to do these things. Thank you for sharing!!!

Heroes is great! Please pay more people to support the macOS users of this game! In the meantime, thank you HoTS forums community for your valuable input and support.

2 Likes

Hey, I just got it working too! So first step you need to do as mentioned above:

Disable The System Integrity Check so that you can access the relevant system database.

  • Reboot your Mac and hold Cmd+R on startup. This will bring up the Recovery Mode. If you have a multi button mouse with a keyboard function (such as a Razer Naga) you may need to unplug it during the boot up.
  • Open Utility → Terminal from the menu bar and type: csrutil disable
  • Reboot.

Now all you need to do is copy this whole thing:

Paste it into the terminal and go with your left arrow key through the whole text command and delete every ’ and " you will find and retype it again with the keyboard. Then press enter, confirm with a password and it’s all done and working. This is for latest version of Catalina.

After this I also runned the Recovery again and enabled back the System integrity check.

Hope that helps! Take care :sunny:

i agree, we are a lot of mac users and this is a lot of frustrating.

So after I press enter and put in my password all I get is:

"SQLite version 3.28.0 2019-04-15 14:49:49

Enter “.help” for usage hints"

Are there any more steps? Should have typing in the password proc’d the “Allow access to microphone” box?

Update:

I finally got it to work! You have to use zsh not bash.

I upgraded to zsh after I got the message:

The default interactive shell is now zsh . To update your account to use zsh , please run chsh -s /bin/ zsh .

So just copy and paste that in and it’ll upgrade the terminal to zsh incase you havent done so already. Then when you run the long command again it should work. HOTS popped up right away in my microphone permissions with the box already checked.

Thanks everyone!

I got this to work with a bit of modification on Catalina. The table columns for the insert command were missing so I found them in sqlite by doing a .schema command on the access table.

  1. Use cmd-R to reboot to recovery mode on power up or reboot.

  2. Once in recovery mode open Terminal from the Utilities menu in the top bar.

  3. Enable the CSR utility by entering:

csrutil enable

  1. Reboot

  2. Open Terminal from Applications/Utilities (or search for Terminal from the magnifying glass in the top right bar)

  3. From terminal enter:

sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db

  1. From sqlite prompt with the database now opened enter:

INSERT or REPLACE INTO access (service, client, client_type, allowed,
prompt_count, csreq, indirect_object_identifier, indirect_object_code_identity, flags, last_modified, service, policy_id) VALUES(‘kTCCServiceMicrophone’,‘com.blizzard.heroesofthestorm’,0,1,1,NULL,NULL,NULL,‘UNUSED’,NULL,0,1541440109);

  1. Go back to terminal from recovery mode and enable CSR by entering:

csrutil enable

  1. Reboot

Thanks so much have been trying for ages but this worked!!! :smiley:

Hello,

I’ve tried your recommendation but does not work for me unfortunately.

If I copy paste that command and then delete the ’ and " i get the next error.

syntax error near unexpected token `(’

What should I do.

PS: using Mojave here.

Thanks in advance.
Radu

This is the Catalina fix, so it’s not going to help Mojave. You might find the Mojave fix here: No Microphone will work since OSX Mojave update - #11 by Liraim-2489

Hello,

Tried that solution too but the error is Error: unable to open database “/Users/./Library/com.apple.TCC/TCC.db”: unable to open database file

Mine is in‎⁨ Macintosh HD⁩ ▸ ⁨Library⁩ ▸ ⁨Application Support⁩ ▸ ⁨com.apple.TCC⁩ ▸ TCC.db

So should I paste sqlite3 ~/Library/Application Support/com.apple.TCC/TCC.db ?

Thanks.


Later edit:
What I’ve done was
ms-air:~ ms$ sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db

SQLite version 3.24.0 2018-06-04 14:10:15

Enter “.help” for usage hints.

sqlite> INSERT or REPLACE INTO access VALUES(‘kTCCServiceMicrophone’,‘com.blizzard.heroesofthestorm’,0,1,1,NULL,NULL,NULL,‘UNUSED’,NULL,0,1541440109);

sqlite>

Now Heroes.app appears in Microphone but I’ve tested with mic open but it does not work yet. Maybe should I csrutil enable and then to see.

Thanks anyway.

I am having issues basically the same after upgrading to Catalina.

When using this command “sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db” I get the following error.

Error: unable to open database “/Users/xxxxx/Library/Application Support/com.apple.TCC/TCC.db”: unable to open database file

Anyone can provide some advice?

Thanks heaps.

FYI this solution does not work for me or anyone in this thread from what I can see. Any solution from blizzard support? I am struggling with the terminal commands which seem to vary from version to version or are non standard in some way. I’m on Catalina 10.15.4.

@rapscallion. Hi, this fix worked for me. Catalina 10.15.4.
I had trouble when reading certain posts above, but then I realized I hadn’t retyped the ’ and " after deleting them. Also, if you don’t include the “sudo” then it doesn’t work. Urge you to give it another try by pasting the entire thing below and following the instructions to delete and retype the ’ and " characters. Hit enter one time and it will prompt for password.
I followed this and it worked. Don’t forget to reboot and enable csrutil after.
Good luck!:

sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db “INSERT or REPLACE INTO access VALUES(‘kTCCServiceMicrophone’,‘com.blizzard.heroesofthestorm’,0,1,1,NULL,NULL,NULL,‘UNUSED’,NULL,0,1541440109);”

Sorry about that, everyone. When I originally wrote the terminal command, I made it in a text file for the sole purpose of avoiding format issues, and having it copy and paste friendly. It never occurred to me the Battle.net forums would use an incompatible text format.

The terminal command does work for Catalina; but sounds like you’ll have to manually type it in. Maybe copy and past it into a text file to get the proper text format, then copy and past from that.

From the password prompt I get the following error:

Password:
Error: unable to open database “/Users/xxxx/Library/Application Support/com.apple.TCC/TCC.db”: unable to open database file
xxxxs-mbp:~ xxxxxx$

Did anyone have this issue?

Did you disable the system integrity check? Are you inputing the correct password?

Adding two comments that might be helpful.

Annica’s post was super helpful. However there is one error above line 4 you should write csrutil disable

If you are getting an Error: unable to open database it is likely related to not disabling csrutil.

I also ran into another issue I’m going to document here for anyone else struggling with this issue. Once I got <sqlite to appear the I got an error: Error: no such column: ‘kTCCServiceMicrophone’

To fix I used the following SQL command instead:

REPLACE INTO access VALUES(‘kTCCServiceMicrophone’,‘com.blizzard.heroesofthestorm’,0,1,1,NULL,NULL,NULL,‘UNUSED’,NULL,0,1541440109);

Hope that helps!

Thanks I fell victim of line 4 of Annica’s post. Well spotted. Finally got around to this and can shelve discord again :slight_smile: