Troubleshooting
First, read the server’s log. A response’s status.message says why that
call failed; the log shows what led up to it, including warnings from calls
that succeeded:
pdk-scene log --level warning
From code, use LogService.GetLogHistory. Neither needs a workcell.
- gRPC
UNAVAILABLE/ connection refused The server is not running or not reachable. Check the address (default
localhost:50052), firewalls, and that the server container is up. Usepdk-scene --target HOST:PORT versionas a quick connectivity test: it also checks that the client and server versions work together. Starting the server is covered in Set Up the PDK Server.- gRPC
INTERNALwith no details The client’s generated stubs do not match the server’s
.protofiles. The server cannot parse the request and fails before the handler runs, so it looks like a server bug. If you installed from source, regenerate the stubs (bash python/generate_protos.sh) after every pull. With a wheel, install the version that matches the server;pdk-scene versionchecks it.FAILED_PRECONDITION(code 4) from scene callsNo workcell is active. Call
WorkcellService.CreateandLoadonce before scene calls. See Workcells.PERMISSION_DENIED(code 5)The service is licensed and this machine has no valid license for it. Run
pdk-scene license statusand see Activate Licenses.- A call “succeeds” but nothing happens
The operation failed at application level. Check
response.status.codeandstatus.message; failures are not raised. See Error Handling.- Objects or tool frames appear rotated or collapsed
A quaternion was left unset (all zeros). Set
w=1.0for the identity on every pose,Visual.originandCollision.origin.- Mesh objects do not load
Mesh.filenameis resolved on the server. Use a path the server can read (for a containerized server, the path inside the container; see Set Up the PDK Server), and setscaleto(1, 1, 1).- IK or planning fails immediately
KinematicsService.ComputeIKandPointToPointPathService.Planneed the name of a saved collision configuration. Save one first (Collision Configurations).- Surface-finish results disappeared
Redoing a stage clears the results of later stages. Re-run
RefinePathandCreateRobotMotionafter regenerating the nominal path.- CMake: Protobuf version mismatch
flexiv_pdkrequires the Protobuf major.minor version it was built against. Use your Ubuntu release’s packaged Protobuf (libprotobuf-dev) and the matchingflexiv_pdkplatform build.- CMake:
flexiv_pdknot found Pass
-DCMAKE_PREFIX_PATH=<install prefix>(notCMAKE_INSTALL_PREFIX) or-Dflexiv_pdk_DIR=<prefix>/lib/cmake/flexiv_pdk.- C++:
PDK client channel is closed A service accessor was called after
Client::close().