-
-
Save DanThiffault/1096642 to your computer and use it in GitHub Desktop.
# authenticate with the repository | |
# use a blank password | |
cvs -d:pserver:[email protected]:/cvsroot/jusb login | |
# pull down the source | |
cvs -z3 -d:pserver:[email protected]:/cvsroot/jusb co -P jusb | |
# change directories | |
cd jusb | |
# download the patch | |
curl https://raw.github.com/gist/1096642/28a4716fb5972d44afa47af0d1b2ffea4cc285da/jusb_osx.patch >jusb_osx.patch | |
# patch the source | |
# use Makefile as the file name | |
patch < jusb_osx.patch | |
# compile the source | |
make | |
# copy the files in to the referenced directory | |
cp -r libjusbMacOSX.jnilib* /Applications/FingerWorks/lib/jusb/ | |
cp jusb.jar /Applications/FingerWorks/lib/jusb/ | |
217c217 | |
< JNI_INC = -I/System/Library/Frameworks/JavaVM.framework/Versions/1.3.1/Headers | |
--- | |
> JNI_INC = -I/System/Library/Frameworks/JavaVM.framework/Versions/Current/Headers | |
488a489 | |
> native/*.o \ |
#!/bin/bash | |
export JAVAROOT=Contents/Resources/Java/ | |
export CLASS_PATH=lib/jusb/jusb.jar:lib/FW_defaults.jar:lib/upgredit.jar:lib/jh.jar:lib/utility_help.jar:lib/jdom/xerces.jar:lib/jdom/jdom.jar:$JAVAROOT/lax.jar | |
cd /Applications/Fingerworks | |
java -Djava.library.path=lib/jusb -Dcom.apple.mrj.application.growbox.intrudes=true -classpath $CLASS_PATH fingerworks.firmup.UtilityLauncher |
Dan, I got it to work. I'm not sure what I was doing wrong, but after a second try, I was able to download your above link from s3 and get the app to run by running the mtu script that was included. Thank you a ton :)
Although I can view all the gestures in the my gesture editor and run the diagnostics successfully, the mtu script is returning this output:
usb.macosx.USBException: control read error -- [0x1ffffd13] [0x1ffffd13]
at usb.macosx.DeviceImpl.readControl(DeviceImpl.java:458)
at usb.core.Device.control(Device.java:217)
at usb.core.ControlMessage.getDescriptor(ControlMessage.java:354)
at usb.core.ControlMessage.getStandardDescriptor(ControlMessage.java:286)
at usb.macosx.DeviceImpl.(DeviceImpl.java:112)
at usb.macosx.USB.(USB.java:82)
at usb.macosx.MacOSX$HostImpl.mkBus(MacOSX.java:239)
at usb.macosx.MacOSX.newDeviceAvailable(MacOSX.java:263)
at usb.macosx.MacOSX.scanForDevices(Native Method)
at usb.macosx.MacOSX$HostImpl.run(MacOSX.java:201)
at java.lang.Thread.run(Thread.java:680)
Which I think is preventing me from uploading new gestures or writing information to the device.
I am trying to see if I can get it working based on your instructions about jusb.
Been trying all day without any luck. Hopefully you can steer my into the right direction.
I think the error you're getting is because you're using a version of jUsb compiled on my system. There are probably some linked libraries that aren't the same. With my version in the application folder, can you try the steps from the blog posting? If that doesn't work, run the steps one at a time from build_source.sh. Send the output of any errors and the make command to my email address: d a n at 1 1 9 l a b s . c o m without the spaces and swap the at for @
Email sent ;)
Here I can also run the diag, but it seems to fail to kick the keyboard into DFU mode...
I'm running Mountain Lion BTW...
Oh also, the jusb repository is now empty somehow, I had to dig around the latest CVS head to build
new idDevice: 0x160, idProduct: 0x90b, idVendor: 0xe97
USB DFU suffix appended to: /Volumes/Users/michel/Documents/MyGestures/custom4f0040stealth34.U.byt
MTS_config Binary /Volumes/Users/michel/Documents/MyGestures/custom4f0040stealth34.U.byt ready for transfer!
Created Progress Panel, starting thread...
existing idDevice: 0x160 idProduct: 0x90b idVendor: 0xe97
Java computed firmware image CRC32 0x37665e04 on 34249 bytes
Exception in thread "Thread-8" java.lang.NoClassDefFoundError: usb/linux/DeviceImpl
at fingerworks.firmup.USBupgrader.a(Unknown Source)
at fingerworks.firmup.USBupgrader.downloadFirmwareFile(Unknown Source)
at fingerworks.firmup.USBupgrader.send2GestureProcessor(Unknown Source)
at fingerworks.firmup.a.run(Unknown Source)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.ClassNotFoundException: usb.linux.DeviceImpl
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 5 more
I've used this info and Platypus to create an application you can just drop in your Applications directory.
sadly the link is broken could you reshare? I know its been almost 10 years now
@MDNich It has been a while since I've used that utility, let me see if I can find a copy somewhere 🤞
Aww thank you soo much (I don’t have PPC computer anymore to put the software on, and Rosetta won’t run JNI libs for PPC. My only thus alternative is either buy an old ppc computer or get the Linux version without Java, which I am most inclined to)
from Wikipedia on Rosetta 1:
https://en.m.wikipedia.org/wiki/Rosetta_(software)
cannot run the following:
…
Bundled Java applications or Java applications with JNI libraries that cannot be translated
I think this is the right file: https://119labs-us.s3.amazonaws.com/blog-files/FingerWorks.zip
Thx, but do you have the Linux no Java version? I have the Mac one:(
I do not 😞
interesting... the app you posed doesnt work on my machine. i'll try your instructions with the original app and let you know how it goes :)