All notable changes to this project will be documented in this file.
- Set delay to wait before trying to download latest image from SEC camera (see setSEC100SnapshotDelay)
- Set status if images of SEC camera should be processed internally. Deactivate to save processing time (see setSEC100InternalImageProcessing)
- Provide image binary string via event (see OnNewRawImageCameraNUM)
- Better handling of SEC images (CSK_Module_MultiHTTPClient version 2.3.0 needed)
- Provide SEC features on devices without image processing
- Improved connection check to SEC camera
- Support SEC100 camera
- Better instance handling regarding FlowConfig
- Increased timer to wait for camera bootUp to 20 seconds (was 12 before)
- SW trigger binding did not work for multiple instances
- Did not check properly for existing APIs
- Legacy bindings of ValueDisplay elements within UI did not work if deployed with VS Code AppSpace SDK
- UI differs if deployed via Appstudio or VS Code AppSpace SDK
- Fullscreen icon of iFrame was visible
- Issue to create new instances (introduced with v6.1.0)
- Function to set image pool size
- Check if persistent data to load provides all relevant parameters. Otherwise add default values.
- React on "OnStopFlowConfigProviders" event of FlowConfig module to stop cameras if in "Continuous Mode"
- Prevent to change camera type via UI if camera is already connected
- Supports FlowConfig feature to provide acquired images
- Set external event to trigger camera (see 'setSWTriggerEvent')
- Support for custom GigE Vision camera (see 'setCameraModel')
- Provide version of module via 'OnNewStatusModuleVersion'
- Function 'getParameters' to provide PersistentData parameters
- New function 'setSelectedInstance' to replace 'setSelectedCam'
- Check if features of module can be used on device and provide this via 'OnNewStatusModuleIsActive' event / 'getStatusModuleActive' function
- Function to 'resetModule' to default setup
- Try to ping IP of camera before trying to connect (prevents internal error)
- New UI design available (e.g. selectable via CSK_Module_PersistentData v4.1.0 or higher), see 'OnNewStatusCSKStyle'
- check if instance exists if selected
- 'loadParameters' returns its success
- 'sendParameters' can control if sent data should be saved directly by CSK_Module_PersistentData
- Changed log level of some messages from 'info' to 'fine'
- Added UI icon and browser tab information
- Renamed abbreviations (Ui-UI, Fov-FOV, GigEvision-GigEVision, DigTrigger-DigitalTrigger, Fps-FPS, Ip-IP, Sw-SW, Hw-HW)
- Using recursive helper functions to convert Container <-> Lua table
- Update to EmmyLua annotations
- Usage of lua diagnostics
- Documentation updates
- Do not set "GevStreamReceiveSocketSize" for SIM4000
- Some Enum references were missed
- Minor docu / code edits
- error handling if wrong GigE camera is chosen
- deactivated auto white balance for Basler a2A1929-51gcBAS
- Using internal moduleName variable to be usable in merged apps instead of _APPNAME, as this did not work with PersistentData module in merged apps.
- Making use of dynamic viewerIDs -> only one single viewer for all instances
- Naming of UI elements and adding some mouse over info texts
- Limiting width in GigE Vision UI (with very long GigE Vision parameter values UI became too wide)
- Reconfigure all camera instances by adding new camera instance in "switch mode", to update all cameras with ne camera amount
- Appname added to log messages
- Added ENUM
- Minor edits, docu, added log messages
- Multiple Link to GigE Vision UI - removed
- UI events notified after pageLoad after 300ms instead of 100ms to not miss
- Loading only required APIs ('LuaLoadAllEngineAPI = false') -> less time for GC needed
- Use API load to check what feature is supported
- Update of helper funcs to support 4-dim tables for PersistentData
- Added module name prefix to processing file
- Check if I2D / GigEVision is supported on device
- Only try to load parameters from PersistentData module if Image.RemoteCamera API is supported on device
- Renamed event "OnNewParametersName" to "OnNewParameterName" (consistent to other modules)
- Optional info in UI regarding hidden features if UserManagement active
- Minor code edits / docu updates
- Navigation in UI had wrong links
- Internal UI link to GigE Vision UI
- Event "OnNewImageSizeToShare" informs if image size changed, so that other modules can react on this
- Use timer to wait for camera boot up instead of blocking app via Script.sleep
- Show callout in UI if waiting for camera boot up
- Changed status type of user levels from string to bool
- Renamed page folder accordingly to module name
- Updated documentation
- Local UserManagement AdminLevel status was missing
- Compatible with PersistentData ver 3.0.0 to save camera instances within Parameter binary file
- Possible to add new cameras during runtime (see "addInstance() / restartAllCameras() )
- CameraModels Midicam2 and Basler cam now chooseable on UI
- Renaming of "objects" to "instances" (e.g. multiRemoteCamerasObjects -> multiRemoteCameras_Instances)
- Events/Functions for instances are created now dynamically (sample entries available in docu)
- Switchmode/GigE Vision is not needed to configure via create function anymore
- Remove bandwith limitiation of the camera for other SIMs than SIM1012/SIM1004
- Added support for userlevels
- Fixed setSwitchMode function
- Show all available GigE Vision Parameters in DynamicTable in UI
- Edit GigE Vision parameters via UI and show list of custom configs
- Updated GigE Vision parameter config procedure, (see updateConfig, addGigEVisionConfig, removeGigEVisionConfig, selectGigEVisionConfig)
- Possible to save sub tables via PersistentData module (needed for GigE Vision custom config parameters)
- Updated documentation
- Updating of GigE Vision parameters did not work (removed functions "sendGigEvisionCommand", "setGigEVisionParameterType" )
- Update handling of persistent data according to CSK_PersistentData module ver. 2.0.0
- Saving all images (+ setting filename prefix) incl. format selection (BMP, JPG, PNG) + compression
- Documentation added (incl. API html-file)
- Interal image resizing (inside of the image processing script) is done now before it will be saved / forwarded to other apps
- Added "RAW8"-color mode
- All image processing parameters will be saved now (if PersistendData module is used)
- Reduced events (e.g. OnNewImageQueueCamera1-8 and OnNewFpsCamera1-8). Is solved by forwarding them via (MultiRemoteCamera_OnNewValueToForward1-8)
- Saving of (latest) image(s) now realized in camera threads (before all savings happend in same thread) and single save trigger now via "Script.notifyEvent('MultiRemoteCamera_OnNewImageProcessingParameter', selectedCam, 'saveLastImage')"
- Update all image processing parameters by "loadParameters"
- Minor renaming / code movements
- "setTempImageActive" always sent "true" to camera threads
- Second Page: Connected camera Overview
- Dynamical CameraList DropDown by cameraAmount
- ProcessingMode on UI
- updating imageProcessing parameters with "loadParameters" (not just on initial load)
- viewerID changed to multiRemoteCameraViewer1-8
- internal logging works now again in parallel to Log module (switched config entries)
- New function to load/save parameters with SubContainer
- Viewer can be (de-)activated in UI
- Camera is not started multiple times during connection (reason for Halcon error in the past)
- Only present image of currently selected camera in UI
- Calculate and show FPS on UI (Update every second)
- If config is available via PersistentData module wait 10 seconds for camera bootUp before connecting
- Module internal logging showing on module UI
- Framerate can be set upt to 50
- OnNewImageQueue event returns type STRING (was INT)
- Default camera IP range starts at 192.168.0.100 (was 192.168.0.101)
- Reduced logging to prevent queue overload just because of logging
- GigEVision support
- Optionally load parameters at app restart
- Saving images on SD card or in public-folder
- Using PersistentData module if available to store parameters
- Color mode selectable on UI (not for GigEVision)
- Showing image queue size of current selected camera on UI
- Auto connecting of camera if parameters were saved
- Using new camera config if new parameters are used
- Using unique local event names
- Initial commit