Comments (15)
The (maybe interesting) Error message is:
Could not open virtual device...
Could not initialize haptics.
from dimple.
Hi, first, which version are you testing? Did you build from master, are you trying the pre-built nightlies? (I would like to completely test it before "release" so your feedback is greatly appreciated.)
Now, it seems you have 2 problems, accessing the haptic device, and communication with PureData. For now I will assume you are using the binaries on http://radarsat1.github.io/dimple . These are what I have been working on the hardest lately so they are worth trying if you have not yet. Note that they are still experimental.
-
In principle if the chai3d examples work with your haptic device then so should Dimple. You are using a Phantom Omni which I haven't tested the latest build on and unfortunately don't have access to. Please try the latest Chai3d release and test its examples. If they work but Dimple does not, there may be some DLLs in the chai3d bin directory that need to be copied to the same directory as dimple.exe.
-
It's hard to tell directly what the issue is but some things to check are that both Dimple and Pure Data are not blocked by the firewall, and that Pure Data is correctly listening for messages. Liblo comes with a couple of tools that can help with this (oscsend and oscdump) but they are not required. You can also test that you can successfully send messages between Pure Data running on two different machines.
from dimple.
Ah, I forgot that the releases are currently in 'draft' mode meaning they are only visible to project members. I will add you so that you get access.
from dimple.
Hm, I apologize I cannot see how to give you access to the draft releases without giving push access to the repository. What I'll do then is mark a pre-release and make it public.
from dimple.
Hello, thanks for your help.
We are using the latest version from here: http://idmil.org/software/dimple .
I will try what you suggested for the first problem and then I will give feedback.
For the second problem I can try the newer (pre-release) version, but do in need any prerequisites installed? I only installed PD-Extended and downloaded DIMPLE.
I got it working that way on my laptop, though that has no firewire port, so I can't connect the Omni.
from dimple.
Okay so the bad news is you were using an old version that is known not to work, but the good news is that I have been actively working on rectifying that before HAID 2019, which came along very well a couple of months ago, and I think you should have better luck with the new version.. as I said, still didn't mark it as "released" because it doesn't include everything I want it to, but in that case you get to be a beta tester ;)
I have now marked a pre-release 0.1.0rc, please find it in the releases.
Please file any problems you have getting it installed and running.
If it doesn't work with the device right away, try to make sure at least examples from chai3d version 3.2 are working. Check if there is any DLL that is needed to be present alongside dimple.exe. I see for example that there is a file in chai3d's "bin" folder called hdPhantom64.dll
that may not be included with Dimple, so you may need to drag it over and place it in the dimple directory in Program Files.
It would be great if you could verify this so I can fix things with respect to the Phantom Omni before doing a release.
from dimple.
Okay, so a small update:
- With the RC we got it working on Windows (the PureData -> Dimple Connection).
- The Phantom doesn't work with the chai3D software, so i need to investigate further this week.
- The Example in test/test.pd doesn't work anymore. I get a lot of couldn't create errors when i open up the script. Not sure if it is buggy or i need to install something else, but the old version from 0.0.9 does work fine. So i will use that one for now.
from dimple.
Thanks for testing!
- Great!
- Okay not sure, it should work with Open Haptics 3, I believe. You may need to make sure it loads that
hdPhantom64.dll
as well. Sorry, wish I could test on my end. - The old version may not work as some of the messages have changed. What errors do you get, and with what version of Pure Data? The main thing apart from the actual messages that have been updated is that the patch now use's PureData's built-in OSC objects, so you would need a recent version of Pure Data. You can try the Max/MSP patches if you have that.
from dimple.
-
Okay, I think I see the main problem here:
We don't have OpenHaptics 3, we googled it earlier and as we see it it is not free. I now have asked for a demo and when I hear back from them with positive feedback it should work. I guess. -
When I am back at the lab I will post the specific error messages here.
from dimple.
Okay, so here is the error:
pdp: can't load library
oscformat /world/clear
... couldn't create
** ignoring width or font settings from future Pd version **
oscformat /world/leftside/texture/image
... couldn't create
oscformat /world/rightside/texture/image
... couldn't create
oscformat /world/backside/texture/image
... couldn't create
oscformat /world/frontside/texture/image
... couldn't create
oscformat /world/bottom/texture/image
... couldn't create
oscformat /world/fixed/create
... couldn't create
oscformat /world/bottom/size
... couldn't create
oscformat /world/leftside/size
... couldn't create
oscformat /world/rightside/size
... couldn't create
oscformat /world/backside/size
... couldn't create
oscformat /world/frontside/size
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/sphere/create
... couldn't create
oscformat
... couldn't create
oscformat
... couldn't create
oscformat /world/collide
... couldn't create
oscformat
... couldn't create
Bad arguments for message 'netreceive' to object 'objectmaker'
netreceive -u -b
... couldn't create
oscparse
... couldn't create
Bad arguments for message 'netsend' to object 'objectmaker'
netsend -u -b
... couldn't create
oscformat /haptics/enable
... couldn't create
oscformat /graphics/enable
... couldn't create
oscformat /world/s1/collide/get
... couldn't create
oscformat /world/s2/collide/get
... couldn't create
oscformat /world/s3/collide/get
... couldn't create
oscformat /world/sphere/create
... couldn't create
oscformat /world/s1/force
... couldn't create
oscformat /world/s2/force
... couldn't create
oscformat /world/s3/force
... couldn't create
oscformat /world/3s/destroy
... couldn't create
oscformat /world/3s/velocity/magnitude/get
... couldn't create
oscformat /world/3s/acceleration/magnitude/get
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/stick/size
... couldn't create
oscformat /world/stick/mass
... couldn't create
oscformat /world/hinge/create
... couldn't create
oscformat /world/c1/response/spring
... couldn't create
oscformat /world/stick/force/magnitude/get
... couldn't create
oscformat /world/c1/torque/get
... couldn't create
oscformat /world/sphere_proxy/position
... couldn't create
oscformat /world/sphere/create
... couldn't create
oscformat /world/sphere_proxy/radius
... couldn't create
oscformat /world/sphere_proxy/grab
... couldn't create
oscformat /world/sphere_proxy/mass
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/box_proxy/size
... couldn't create
oscformat /world/box_proxy/mass
... couldn't create
oscformat /world/box_proxy/color
... couldn't create
oscformat /world/box_proxy/destroy
... couldn't create
oscformat /world/box_proxy/grab
... couldn't create
oscformat /world/drop
... couldn't create
oscformat /world/grab/feedback
... couldn't create
oscformat /world/grab/stiffness
... couldn't create
oscformat /world/grab/stiffness
... couldn't create
oscformat /world/hinge/create
... couldn't create
oscformat
... couldn't create
oscformat /world/test/grab
... couldn't create
oscformat /world/test/velocity
... couldn't create
oscformat /world/mesh/create
... couldn't create
oscformat /world/test/size
... couldn't create
oscformat /world/test/position
... couldn't create
oscformat /world/test/mass
... couldn't create
oscformat /world/t1/texture/image
... couldn't create
oscformat /world/fixed/create
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/fixed/create
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/fixed/create
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/t2/texture/image
... couldn't create
oscformat /world/t3/texture/image
... couldn't create
oscformat /world/t2/size
... couldn't create
oscformat /world/t1/size
... couldn't create
oscformat /world/t3/size
... couldn't create
oscformat /world/t1/texture/level
... couldn't create
oscformat /world/t2/texture/level
... couldn't create
oscformat /world/t3/texture/level
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/fixed/create
... couldn't create
oscformat /world/bottom/size
... couldn't create
oscformat /world/leftside/size
... couldn't create
oscformat /world/rightside/size
... couldn't create
oscformat /world/backside/size
... couldn't create
oscformat /world/frontside/size
... couldn't create
oscformat /world/top/size
... couldn't create
oscformat /world/bottom/color
... couldn't create
oscformat /world/leftside/color
... couldn't create
oscformat /world/rightside/color
... couldn't create
oscformat /world/backside/color
... couldn't create
oscformat /world/frontside/color
... couldn't create
oscformat /world/top/color
... couldn't create
oscformat /world/prism/create
... couldn't create
oscformat /world/gravity
... couldn't create
oscformat /world/stiffness
... couldn't create
We use the current version of PD-Extended. (0.43.4)
from dimple.
It looks like oscformat
was introduced in 0.46: https://puredata.info/downloads/pure-data/releases/0.46.0
and that PD-extended is no longer being updated: https://puredata.info/downloads/pd-extended
from dimple.
Okay, so the current status is, that we are waiting on the Demo for the OpenHaptics software, so that we can test DIMPLE with the Phantom.
But I have two more questions, which came up while playing around in puredata. Not sure where I should ask them, because it seems that the original mailing list is down.
I now load a mesh, which is shown properly, but the marbles are falling through it.
- How do I prevent them from falling through? (They are not falling through the (create-)box, but there is nothing in the createbox patch that indicates a collision detection).
- How can I detect a collision and then play a sound? (The beepcollide patch is doing precisely that, though I can't really find a documentation about how to use it properly)
Thanks
from dimple.
we are waiting on the Demo for the OpenHaptics software
ok!
Not sure where I should ask them, because it seems that the original mailing list is down.
Shame, but I don't have access to my old McGill email any more so the link should be changed, sorry about. Here on issues is a fine place to ask.
-
This sounds like a bug. The collision detection may be incorrect.
-
Collision events are requested by
/world/<object name>/collide 1
(or 0 to turn it off), or alternatively request all collisions by/world/collide 1
-- this is done increatemarble
subpatch. Then,beepcollide
subpatch listens for messages/world/<object name>/collide
which has a string and a float as argument. The string is the name of the object that was collided with, and the float is the magnitude of their difference in velocity.
from dimple.
Okay, yes I also think it's a bug. When I make the pool table 0.03 "thick" (same as the demo box) collision works, but if I make it any thinner it stops working.
from dimple.
Ah, interesting, could be a limitation in ODE physics then. I might have to experiment. Keep in mind that I don't think mesh dynamics works, that is mesh objects must be fixed as far as I remember. By the way I'll close this for now, feel free to open new issues for each topic.
cheers
from dimple.
Related Issues (20)
- Mass <= 0 bombs HOT 1
- Re-establish cursor after world clear HOT 1
- World/clear and gravity HOT 2
- Grab to object -- too soft? HOT 3
- Update of liblo version needed HOT 4
- Dimple bombs if opened after PD wall HOT 1
- Destroy of constrained object bombs HOT 3
- Additional cursor data HOT 3
- Color transparency HOT 1
- ./bootstrap.sh throws error HOT 3
- This is a test issue. HOT 1
- Create Mesh doesn't work properly HOT 3
- How to get the current camera position? HOT 2
- How to color objects? HOT 2
- Weird behaviour of the green haptic input ball/cursor HOT 2
- External paths not working (w/OSX in particular?) HOT 2
- Some force or force/magnitude queries not working HOT 1
- velocity/magnitude returning 0 HOT 3
- Missing cup.obj + conflict re .3ds and .obj HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dimple.