Last active
March 25, 2025 02:23
-
-
Save RC128tech/028929727e3e7627169e7ee5d8a4e879 to your computer and use it in GitHub Desktop.
UPDD macOS Touch Driver Enhancer
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Hello all UPDD users, | |
I found a better solution to reinitialize the UPDD daemon without non-macOS tools. | |
It is tested with the UPDD version 6.00.771 on Mavericks and Mojave. | |
Before installing the driver, I set the date to 01-01-2038, the UNIX End-Of-The-World-Date. | |
I'm not sure if this made any difference, but I did it. | |
This is the shell script to use: | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env sh | |
echo PASSWORD | sudo -S kill `ps -U root | grep [u]pdd | awk '{print $1}'` |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
It took rather long to get this line together, but effectively it is a sudo kill which gets the process ID | |
using ps. The option -U root only uses the root process updd, there are also user processes starting with updd. | |
The -S option allows sudo to get the password from the echo command. Change PASSWORD to your system password. | |
After this worked sucessfully from Terminal and as script, I created a LaunchAgent: | |
This LaunchAgent starts the script every 180 seconds, so all 3 minutes the updd process is restarted. | |
You can change the value of StartInterval to your preferred restarting time in seconds. | |
If you are planning to use your touch device for a presentation, you may reduce the value. | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
<plist version="1.0"> | |
<dict> | |
<key>Label</key> | |
<string>com.touch-base.updd.reinit.plist</string> | |
<key>Program</key> | |
<string>/Library/LaunchAgents/com.touch-base.updd.reinit.sh</string> | |
<key>ProgramArguments</key> | |
<array> | |
</array> | |
<key>StartInterval</key> | |
<integer>180</integer> | |
<key>RunAtLoad</key> | |
<true/> | |
</dict> | |
</plist> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Below are the exact values to change in /Library/Preferences/updd/db/updd.db | |
ID amf_user | |
1 admin 2074-07-18 | |
2 local 2074-07-18 | |
3 default 2074-07-18 | |
ID updd_backup | |
468 skip_os_version_check 1 | |
482 notify.oschange.msg 0 | |
483 notify.oschange.link.win 0 | |
484 notify.oschange.link.mac 0 | |
560 registration.installable_until 2074-07-18 | |
561 registration.support_until 2074-07-18 | |
570 license.eval_click_limit 200 | |
ID updd_setting | |
468 skip_os_version_check 1 | |
482 notify.oschange.msg 0 | |
483 notify.oschange.link.win 0 | |
484 notify.oschange.link.mac 0 | |
560 registration.XXX.installable_until 2074-07-18 | |
561 registration.XXX.support_until 2074-07-18 | |
570 license.XXX.eval_click_limit 200 | |
582 claim_until 2074-07-18 | |
XXX is the three-digit number of your installation. | |
For editing I used the Application 'SQLiteBrowser'. The uupd process has not to be killed during editing. | |
I used the date 2074-07-18 instead of 2099 because this value appeared several times in the file before | |
modification. With these settings the '5 days remaining' message disappears in the UPDD Console window. | |
I also tried various values instead of the 200, every change results in '100 clicks remaining'. | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
After editing the database file, delete the contents of the db/bkup folder and restart the computer. | |
There should be no exclamataion marks in the menu bar icons. | |
When you start the UPDD console, there should be no '5 days remaining' message. | |
For testing the LaunchAgent you can open Utilities/Activity Monitor. Make sure all processes are displayed. | |
Enter updd in the search field and search for the uupd process of user root. Remember the PID. After about | |
3 Minutes the PID should change. Then everything is working. | |
Now to the manual installation. Copy the shell script and the LaunchAgent to your Desktop. | |
Change in com.touch-base.updd.reinit.sh the expression PASSWORD to your system password. | |
Then open Utilities/Terminal and set it to root with | |
sudo -s | |
and enter your password. | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Now enter this command line to move the database file to your desktop | |
and delete the contents of the database backup folder. | |
mv /Library/Preferences/updd/db/updd.db ~/Desktop | rm -Rf /Library/Preferences/updd/db/bkup/* | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Now edit the database file updd.db. Then copy the file back and restore the permissions: | |
cp -f ~/Desktop/updd.db /Library/Preferences/updd/db/updd.db | chown root:wheel /Library/Preferences/updd/db/updd.db | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Now copy the LaunchAgent and the shell script to /Library/LaunchAgents | |
cp ~/Desktop/com.touch-base.updd.reinit.plist /Library/LaunchAgents/com.touch-base.updd.reinit.plist | |
cp ~/Desktop/com.touch-base.updd.reinit.sh /Library/LaunchAgents/com.touch-base.updd.reinit.sh | |
Because the shell script contains your password readable, you may set the files to invisible: | |
chflags hidden /Library/LaunchAgents/com.touch-base.updd.reinit.plist | |
chflags hidden /Library/LaunchAgents/com.touch-base.updd.reinit.sh | |
Then restore the permissions: | |
chown root:wheel /Library/LaunchAgents/com.touch-base.updd.reinit.plist | |
chown root:wheel /Library/LaunchAgents/com.touch-base.updd.reinit.sh | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Make the shell script executable and start the LaunchAgent: | |
chmod +x /Library/LaunchAgents/com.touch-base.updd.reinit.sh | |
launchctl load -w /Library/LaunchAgents/com.touch-base.updd.reinit.plist | |
You still have the files on the Desktop, perhaps if something doesn't work. | |
Thanks to all others who worked on UPDD. | |
So i got one question so if the first thing is working do i still need to do the manual installation? No right?
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Did everything like said but commander keeps popping up, any way to make it invisible at least ?