SCNPhysicsBody contactTest not working

I am developing a game where users can use their finger to move objects, and when the user releases their finger the game checks for overlap between objects and move the moved object back to it's original position if there is overlap. I am using SCNScene.PhysicsWorld.contactTest(with: ) to check for overlap between my nodes. However, the method only works correctly when nodes have physicsbodys using .convexHull, when I change it to .concavePolyHedron everything stops working and no contact is reported. I have set the physicbodys to be static so I am at a loss of what to do.

Here is my code configuring the physicsbody for each node

parentNode.physicsBody = SCNPhysicsBody(type: .static, shape: SCNPhysicsShape(node: parentNode, options: [.type: SCNPhysicsShape.ShapeType.concavePolyhedron, .collisionMargin: 0.0, .scale: scaleVector]))

Here is my code calling contact test :

if let test = currentNode?.physicsBody {
     let list = view.scene!.physicsWorld.contactTest(with: test) {
          ...
     }
}
SCNPhysicsBody contactTest not working
 
 
Q