-
Notifications
You must be signed in to change notification settings - Fork 478
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RDY | Automatic Intel Bluetooth firmware uploader #262
Comments
UPDATE:It seems that after sleep/wake, bt mac address keeps the same value, so we can't use it to detect if bt is working property. The good news is Another con about this method is we can't disable or control bt. There are missing options in bt submenu. The above image is with firmware uploaded.TODO list:
UPDATE: It seem that we can control bt with |
EDIT: This post FAQ will always be updated, read before asking.Q: It stopped working after sleep... Q: LaunchAgent script can't find Q: How to install/use this? Q: I can't turn off bluetooth!!! Q: Firmware is uploaded(version 170.****), but bluetooth not working. Q: There's no bluetooth in settings! Q: It was working fine and just stopped working! General InformationWell there's a beta build(less than 800mb after unzip) UPDATE2(noautosuspend): https://drive.google.com/file/d/1PKjLbcYlimpaAeGYigOANIHedNVIFE9P/view?usp=sharing you need have vmware fusion installed and activated. import VM in vmware and DON'T RUN IT AS ROOT/SUDO, as running VM with root is dangerous. And please write some feedback, even it works like a charm(I double it). UPDATE: VMBTFirmUploader.zip replace it with the original one, this version added a third parameter for There's a launchagent script to start it at boot.
You need to change Path to VMBTFirmUploader and Path to bt.vmx(it's inside of bt.vmwarevm folder) and save it to |
After 4 days of testing, I can say that bt is pretty stable, and wifi signal problem is almost gone(after a reboot, probably was My fault by tweaking network profile and to test continuity..)! Below is what work(what I personally tested) :
Below is what doesn't work or cons:
My personal advice is to solder Bluetooth only if you really care about resource and have good soldering skill. This solution is for anyone that has no internal wifi, don't want to risk it, bad soldering skill or just wanna save camera/fingerprint for Windows/Linux... My personal experience about it is perfect, so the rest of TODO list is in low priority(maybe I can do it in Christmas break), but I should able to bugfix/hotfix it ASAP. |
@matvada You can just remove cdrom in setting without a problem, just load snapshot named btpower .. In case that above don’t work you can try download that iso http://mirrors.evowise.com/archlinux/iso/2019.09.01/archlinux-2019.09.01-x86_64.iso |
dont have much more time to test but had same error to @matvada at first. tried to resume snapshot and received internet connection is 4g so will try with archlinux iso later |
ok managed to add archlinux iso is configured as cd but seems to need it to be in the same folder etc as your setup @Menchen . fails to boot. |
@matvada @jackreeves Thanks for the feedback, I can confirm that archlinux iso is needed, follow this guide: UPDATE: This post is outdated, now the zip file include archiso.
|
still cant get it to work im afraid. ill try follwo the steps and record my screen another day so you can see where maybe im going wrong but for now seems to either boot clean arch or keep wanting and failing to load your versions of arch. |
@jackreeves what the error was? |
@jackreeves @matvada I have uploaded a new version that come with archiso incluided, so no need for manual configuration. Feel free to post feedback! https://drive.google.com/file/d/1-KXqlMmhrf-jOpQdfxwEMwp1YmwQFM6a/view?usp=sharing You can delete the old one, the VMBTFirmUploader binary is also updated. You should able to run it with |
thanks fo the effort thus far @Menchen . im here now: so still not working but got it booted and daemon running. I previously had a USB BT dongle attached but unplugged and restarted. DO i have to change the patches to make this work? |
@jackreeves make sure that you have And sorry about my fault for not explaint it more cleary, you need run it with Also, can you post the output of |
@Menchen thank you for your support. Now my situation is this:
Have I made any mistakes? |
@matvada make sure that you downloaded https://drive.google.com/file/d/1-KXqlMmhrf-jOpQdfxwEMwp1YmwQFM6a/view?usp=sharing , have been updated. |
@Menchen if it's the same version loaded two days ago (the one in this comment #262 (comment)) then i have already used this. |
I have changed the link in all post, so if you don’t have BTFirm folder you need to download again |
@Menchen i downloaded the file BTFirmWirhlISO.7z this morning and used it to do the tests attached in my previous comment. |
Then try to find BTFirm.vmx and replace it... the error was complaining that BTFirm.vmx is missing |
@Menchen the BTFirm.vmx is correctly inside the file BTFirm.vmwarevm |
@Menchen I found the error, it was my path error (Sorry for my mistake)
and finally it worked |
@Menchen after a reboot and a rollback of the bluetooth mode (from usb stick to default) now this is the current situation: As you wrote in this comment #262 (comment) my Bluetooth firmware is 0.0 and doesn't work. |
The firmware output is before uploading, try |
@Menchen now bt firmware version is ok, but mouse and keyboard don't want to connect. |
Can you post Also try to delete mouse and keyboard and sync again |
@Menchen i tried to delete mouse and keyboard bluetooth doesn't find devices... |
Sorry to not mention, but also this |
@matvada do |
@Menchen found, replaced the path into the plist file and now all works. |
It seems that even with the latest version(noautosuspend), there are some issues when uploading firmware can happen(error -110 if you open VMWare.) The good news is in the next-bluetooth git in Linux kernel they have already fixed it https://lore.kernel.org/linux-bluetooth/113CA53A-9FB7-4793-B2C4-828B185C4853@holtmann.org/T/#t I'm posting this so in the case someone can't use Bluetooth after warm-boot or sleep with the latest release can try to build that from source and see whether that help or not. |
Hello |
@macguru341 I believe that you can run it without importing it.... |
When I open it directly it ask if the VM moved or copied |
@macguru341 I mean open it with |
Sorry I’m new with that - you mean I need to run it in terminal ? Just copy what you wrote? |
@macguru341 You need to open your terminal, you need to be in the directory of then file you downloaded. You can also drag You need to drag |
Thanks a lot for your help.
|
|
thanks - imaged to make it work but I don't understand the last step with the LaunchAgent: |
@macguru341 you place the plist file in /User/$USER/Library/LaunchAgents/io.github.menchen.VMBTFirmUploader.plist, it’s all explained in that post. |
Hello @Menchen how are you? I don't use the LauchAgent but I manually insert the script in the terminal and before starting the script the WiFi connection works fine, but after activating the script the bluetooth works but the connection stops working or it's really poor. Thinking it was a dongle problem I replaced it with one of the same model but the problem persists. Do you use the same dongle or similar to test it? As usual thank you very much for your time. |
@matvada Any Bluetooth device will interfere 2.4GHz WiFi as Bluetooth use it as well, the solution is switching to 5GHz WiFi.... Another thing I have noticed is after sleep something WiFi stop working about 10 second, switching with airplane mode help. Personally I use a WiFi card in M.2 Slot, maybe that helps.. usb dongle tend to be unstable. |
Hi! I'm confused. This works on a Lenovo Ideapad s340?
Thank you! |
@juliangsibecas I think it might work with some tweaking, can you post your ‘ system_profiler SPUSBDataType’? |
`USB 3.1 Bus:
|
@juliangsibecas You need to manually edit the snapshot so your Bluetooth can attach automatically when the virtual machine starts, it should be easy and ask anything if you need help.
After running again the script it should work. |
@Menchen Thank you for your prompt reply! I followed the steps that you described but it's not working.
|
The vm did tried to upload because bt version changed. Please check your EFI file and do a Kext cache rebuild. By the way that was covered by FAQ in second post. Also you need a shutdown and wait like 1 minutes before you boot. |
Hello, thank you for your work. I have downloaded the noautosuspend version and tried to run it in Terminal. However, it stopped responding after checking.
I have waited for 5 mins and nothing happened after that.
Is there anything I can do with this issue? |
Bt firmware was already uploaded... (8.256) also this issue is outdated. As there’s a Kext that can do this job. |
Hi, I know that the topic has closed, but can you please advise about the Kext that can upload the firmware to bluetooth? I only managed to my AR3011 working using the ArchLinux VM image. All my attempts using the script failed so I would like to try the Kext solution if possible. I have found an old BLUETOOTH FIRMWARE UPLOADER kext and guide from 2013 but doesn't work. I have MacOS Catalina installed and my Wifi+Bluetooth card is Atheros AR5B195( AR9285 Wifi + AR3011 Bluetooth). Any help or advise will be much appreciated. Thank you very much. |
Use this for bluetooth |
This is a work in progress issue. Feedbacks are welcome!
After a ton of failure attempt soldering Bluetooth, Today I tried to drive intel Bluetooth by using VM, that I think we can automatize it so It runs at boot and wake, similar to ALCPlugFix, but we can use Bluetooth mac address(all zeros if no firmware) to detect if firmware needs to be uploaded again.
Right now I have done VM start and USB attach and detach part, so I can "fix" it by running only commands, with later we can automatize using it(VMware have
nogui
option so we can run it in the background).The part that I need to work now is creating a daemon to detect when to run above command.
By the way, the "fix" takes less than 10 seconds(I think good enough), but during that 10 seconds, there's no Bluetooth in macOS.
Also, all feature is supported I think
Bluetooth Low Energy Supported: Yes Handoff Supported: Yes Instant Hot Spot Supported: Yes
After all the above, I wanna ask whether I should release a guide right now or wait until the daemon is finished, which may take me a while(I got a lot of school works to do), and also there are any cons from using intel Bluetooth?
The text was updated successfully, but these errors were encountered: