FAQ
Short answers to common questions about LumiScan Cam Driver. Each entry links to the page with the details. Problems and error messages are described in Troubleshooting.
Each entry has a fixed anchor (for example #faq-licence-v2). To find an error message, search the Troubleshooting page for it.
|
Requirements and setup
Which cameras can I use, and how many per installation?
- Answer
-
The Cam Driver runs on a ctrlX CORE (ctrlX OS, with the ctrlX Data Layer) or on a PC with Windows 11 or Ubuntu 24.04 (with LumiScan Keryx), and needs an Ethernet-enabled, GenICam-compliant camera, powered via PoE or an external power supply. The node addresses are the same on both platforms. It has been tested with selected cameras from Basler, Baumer, IDS, LUCID Vision Labs, Hikvision and Balluff; GenICam implementations vary, so verify all required functions before deployment. From v2.0.0, one installation can operate several cameras: each camera is a module with its own configuration and Data Layer address (for example
hdvisionsystems/lumiscan-cam-driver/camera1), and each connected camera needs its own licence. - More
-
Requirements, Description, ctrlX Data Layer and LumiScan Keryx
How do I connect a camera to a ctrlX CORE X3?
- Answer
-
(ctrlX OS) The manual describes two topologies. After either one, assign the camera a unique IP address and test packet delay values until image acquisition is stable.
-
Shared Ethernet switch: camera, engineering computer and port XF10 on a switch that supports jumbo frames. XF10 uses
192.168.1.1, so do not assign that address to the camera or the computer. -
Direct connection: camera directly on XF10, engineering computer on XF51. Give XF51 a static IPv4 address in a different subnet from XF10 (for example
192.168.42.203) and note it, because ctrlX WORKS might not discover the X3 automatically.
-
- More
How do I set the IP address of a camera?
- Answer
-
Use the force-IP function under
hdvisionsystems/lumiscan-cam-driver/system/force-ip/. It also works when the camera is not detected normally (for example because its subnet does not match the ctrlX CORE or the PC), as long as it is reachable over the same network connection.-
Read the camera’s MAC address from
system/found-camera-mac-addresses(same position in the list as its serial insystem/found-camera-serials). -
Set
gateway,ip,subnetand the camera’s MAC address. -
Wait until
readyis true, setrequestto true, then back to false. -
When
readyis true again,system/found-camera-ip-addressesshows the new address. If it does not, use the camera supplier’s program to set the IP.
-
- More
Configuration
Where are the configuration files, and how do I add a camera?
- Answer
-
lumiscan-cam-driver.jsonholds the application settings and lists the camera configuration files to load; each further file (for examplecamera_example.json) configures one camera.-
On ctrlX OS: in the ctrlX OS web interface, open Home > Manage app data, select File View from the three-dot menu and open the
lumiscan-cam-driverfolder. To add a camera, copy an existing camera file (three dots > COPY), give it a new name, enter that name in the list of camera configuration files inlumiscan-cam-driver.json, and restart the application. -
On a PC: the files are ordinary files in the folder the Cam Driver reads its settings from; the Cam Driver names it when you write an example with
--generate-settings. On Windows this is%APP_RESOURCE_DIR%\etc\lumiscan-cam-driver, or by defaultC:\ProgramData\HD Vision Systems GmbH\LumiScan Vision Suite\lumiscan-cam-driver\etc\lumiscan-cam-driver. Copy a camera file under a new name, enter it inlumiscan-cam-driver.jsonand restart the Cam Driver. -
On both:
system/settingsshows and changes the files on the Data Layer, andsystem/control/create-moduleandactivate-moduleadd a camera module; then restart withsystem/control/restart/execute.
-
- More
-
Setup Camera Configuration, Creating New Camera Settings Files, Adding and removing modules
Which settings does a camera configuration file contain?
- Answer
-
inputFileTypemust becamera-configuration. The camera settings areid(must be unique across all camera settings; it is the module’s name on the Data Layer and may contain only lower-case letters, digits,-and_),serial(a serial containingsimulationmakes the camera simulated),exposureTimeUS,pixelFormat(RGB8orMono8),timestampSource(CameraorSystem; from v2.0.0 the camera timestamp is the default) and, optional and experimental,stream.tag. Parameters can be overridden on the Data Layer under…/input/. Restart the application after changing the file. - More
How do I change other GenICam features of the camera?
- Answer
-
Connect the camera, then edit the nodes under
hdvisionsystems/lumiscan-cam-driver/<camera name>/features. Their names, values, permissions and descriptions come directly from the camera; refer to the camera vendor’s documentation. Values are written directly to the camera, so take care with network settings. This feature is marked experimental: values are not cached, and setting them repeatedly (for example from a PLC) can cause camera instability and a performance penalty. A value written to a feature node is lost when the camera is connected again; a feature file listed in the module’scameras[].featureFilesis applied each time the camera is connected. - More
-
GenICam features, For the highest frame rate: TriggerOverlap, Release Notes: v2.0.0
How do I save images internally, on USB/SD card or on a Samba share?
- Answer
-
Add a
storageblock to thesystemsection oflumiscan-cam-driver.jsonand restart the application. Without it, Save does nothing.-
type:Null,Internal(internal storage; on ctrlX OS also a USB storage device or SD card) orSamba(Windows shared folder). -
Internal:rootPath. A relative path stores in the application’s internal directory. On ctrlX OS, a path starting with the mounted device path (for example/media/sdb1/myCapturedImages) stores on that device; USB/SD devices must use FAT32 or EXT4 and be mounted under Settings > Storage Devices. -
Samba:ip,remotePath,domain(""if there is none),username,password. The password is stored in clear text, so do not use a regular user account. -
From v2.2.0,
unifiedStorage(defaultfalse: one folder per camera) set totruemakes all cameras use the storage folder directly.
-
- More
Operation
Should I use the execute method or the ready/request handshake?
- Answer
-
Both lead to the same result. From v2.1.0,
capture,save,load,removeandlist-imagescan be started with one write to<camera name>/control/<operation>/execute, which returns when the operation has finished; from v2.3.0,triggeris offered as anexecutemethod only.connect-camera,disconnect-cameraandresethave noexecutenode and must use the handshake. Only one process may writerequestat a time, and in both cases you checkcontrol/status/codeandcontrol/status/textafterwards. Handshake steps:-
Wait until
readyis true. -
Set
requestto true, and wait untilreadychanges to false: the application has seen the request. -
Set
requestto false, wait for the operation to finish and read its outcome oncontrol/status/code. -
A failed
capturethrough the handshake ends at status3(waitingForClient), not at its own error code, andcapture/readystays false until aresetsucceeds.capture/executekeeps the capture’s own code.
-
- More
Where do I find the captured image, and how can I view it?
- Answer
-
The image is published on
hdvisionsystems/lumiscan-cam-driver/<camera name>/output/imagetogether with width, height and pixel type, regardless of how the capture was started. This is raw sensor data that most viewers cannot display. From v2.1.0, switch on<camera id>/input/preview/enableto get a PNG on<camera id>/output/preview/encoded-dataafter each successful capture or load;<camera id>/input/preview/scale(0.0 to 1.0) makes it smaller. Compareoutput/package-identifierto check that the preview belongs to the latest image. To receive every image the camera delivers, use the experimental image stream on<camera name>/control/publish/output/stream/frame(from v2.3.0). - More
-
Description, Streaming Images (Experimental), Release Notes: v2.1.0
How does simulation mode work?
- Answer
-
Give the camera a
serialthat containssimulation(for examplesimulation); the module then does not search for or connect to a real camera. Whether a camera is simulated depends on its serial, not on itsid. Calling Capture loads an image from the configured storage folder and advances to the next image for the next capture. Since v2.0.0, the images are taken fromimages/<camera id>instead ofimages(move existing images before updating), and the folder is scanned on connection, so callinglist-imagesis not needed. From v2.2.0,unifiedStorageset totrueuses the storage folder directly. - More
-
Loading Images, Camera Example File Content Example, Release Notes: v2.0.0
How do I receive every image instead of one per capture?
- Answer
-
From v2.3.0, use the experimental image stream. Connect the camera, set its features (for the highest frame rate,
TriggerOverlapnotOff), subscribe to<camera name>/control/publish/output/stream/frame, setcontrol/publish/input/enabletotrueand callcontrol/publish/execute. The Cam Driver does not trigger the camera by itself: images come on a hardware trigger, oncontrol/trigger/execute, or continuously with the trigger mode off. While the stream runs,captureis not available; after the stream stops, the camera is connected again, which takes about two seconds on the camera we tested. - More
Troubleshooting
Problems and error messages are described step by step in Troubleshooting:
-
Modules answer no request, and the status is -5 "restartRequired"
-
"No valid license found, please purchase one. If you do have one, please try to restart ctrlX"
-
The camera does not connect (status -10000 "failedToConnectToCamera")
-
Image capture fails or is unreliable (status -10004 "couldNotCaptureImage")
-
A write to execute answers "DL_TOO_MANY_OPERATIONS" or "TooManyOperations"
-
A write to execute answers "DL_INVALID_OPERATION_MODE", or capture keeps being refused
-
Images are not saved (status -10006 "saveImageFailed" or -10005 "noImageTaken")
Licensing and support
Which licence do I need, and why does my old licence no longer work?
- Answer
-
From v2.0.0, the Cam Driver needs the licence
SWL-W-XCx-CAMDRIVERxHDVSx-V2NN; version 1 keys do not work. You need one licence per connected camera. On ctrlX OS (ctrlX CORE or IPC), a licence bought in the ctrlX Store is a ctrlX licence and needs no LumiScan Key. For other purchase routes, see the Licensing FAQ. - More
Where can I find more answers or get support?
- Answer
-
See the site-wide LumiScan FAQ, and for questions about the Data Layer itself the Data Layer FAQ. Contact HD Vision Systems customer success at customer.success@hdvisionsystems.com or +49 6221 6721905; for licences, licenses@hdvisionsystems.com.
- More