esrf-bliss / lima-camera-basler Goto Github PK
View Code? Open in Web Editor NEWLima basler plugin
Home Page: lima.blissgarden.org
License: GNU General Public License v3.0
Lima basler plugin
Home Page: lima.blissgarden.org
License: GNU General Public License v3.0
Hi,
launching a LimaCCDs DS, I noticed a warning message :
$ LimaCCDs ccdsst1-tl
basler camera_id: ccdsst1-tl.thomx.fr
ctcontrol.accumulation() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd324ad7d68>
ctcontrol.acquisition() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd31515c2b0>
ctcontrol.buffer() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd31516db38>
ctcontrol.config() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd315177710>
ctcontrol.event() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd3151811d0>
ctcontrol.image() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd315181e10>
ctcontrol.saving() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd3151928d0>
ctcontrol.shutter() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd31512a710>
ctcontrol.video() = <Lima.Server.EnvHelper.to_tango_object.<locals>.klass object at 0x7fd315181550>
In tl/bpm/sst.01-ccd.01 ::init_device()
Warning: setFrameRate() not supported
[2019/09/09 14:21:42.444591] 7fd33d440580 *Application*Lima.Server.LimaCCDs::LimaCCDs::apply_config-Always: Applied config : lima_config.cfg : default
Searching into the doc, I noticed a setFrameRate() not supported
warning message, but setFrameRate
is only mentionned for PointGrey camera (https://lima1.readthedocs.io/en/latest/camera/pointgrey/doc/index.html?highlight=setframerate#specific-control-parameters).
I never noticed this warning message but trying another camera, I confirm it appears with some others Basler camera (we currently only have this model).
Do you have any idea why it appears and how to make it disappear?
Regards.
Using conda package:
lima-camera-basler 1.9.3 py37h6bb024c_0 esrf-bcu
lima-core 1.9.7 py37h2bc3f7f_0 esrf-bcu
python 3.7.10 hffdb5ce_100_cpython conda-forge
Exception: Hardware: setRoi
raises on Camera object construction
In [1]: from Lima import Core, Basler
In [2]: cam = Basler.Camera("ccd130")
[2021/03/12 18:42:00.544014] 7f140f792580 *Camera*Basler::Camera::setRoi (/opt/conda/conda-bld/lima-camera-basler_1582408894043/work/src/BaslerCamera.cpp:1386)-Error: Exception(Error): Value = 1296 must be equal or smaller than Max = 1288. [thrown]
---------------------------------------------------------------------------
Exception Traceback (most recent call last)
<ipython-input-2-6df17cafa0e1> in <module>
----> 1 cam = Basler.Camera("ccd130")
Exception: Hardware: setRoi(/opt/conda/conda-bld/lima-camera-basler_1582408894043/work/src/BaslerCamera.cpp, 1386): Error: Value = 1296 must be equal or smaller than Max = 1288.
The camera is a Basler scA1300-32gm
Hello,
I open this ticket here since it is more appropriate.
@laurent-claustre wrote in a Lima ticket that usb is not supported but some code exists to add usb support for basler.
Our users have bought a USB Basler Ace camera (acA4024-29um) since they wanted high dynamic and high frequency (I am still looking if another model would not be better choice), so it could interest me if USB support is available.
Regards.
Hello,
I wonder how to configure basler LImA plugin to get image in 12-bit packed pixel format, to store 2 pixels in 3 bytes instead of 4 bytes. It should result in a best bandwidth usage.
This functionality is described in https://docs.baslerweb.com/pixel-format#unpacked-and-packed-pixel-formats
Regards
Hi,
I encountered a strange issue on a server.
A LimaCCDs seems launched or not depending on the TANGO tool I use:
ps aux | grep LimaCCDs
shows me the LimaCCDs instance called ccdsst1-li
runs$ ps aux | grep LimaCCDs
tango 1414 423 0.1 1942656 172396 ? Sl 2019 134082:24 /home/lima/miniconda3/bin/python3.7 /home/lima/miniconda3/bin/LimaCCDs simulator
tango 6009 1.1 0.1 1359264 122984 ? Sl 2019 287:06 /home/lima/miniconda3/bin/python3.7 /home/lima/miniconda3/bin/LimaCCDs ccdsst3-tl
tango 6088 1.3 0.1 1351068 123428 ? Sl 2019 360:27 /home/lima/miniconda3/bin/python3.7 /home/lima/miniconda3/bin/LimaCCDs ccdsst2-tl
tango 6200 1.4 0.1 3380880 152704 ? Sl 2019 381:04 /home/lima/miniconda3/bin/python3.7 /home/lima/miniconda3/bin/LimaCCDs ccdsst1-li
tango 22127 160 0.2 1792416 210436 ? Sl 2019 42375:37 /home/lima/miniconda3/bin/python3.7 /home/lima/miniconda3/bin/LimaCCDs ccd2-laser
XXX 27471 0.0 0.0 12780 964 pts/0 S+ 16:12 0:00 grep LimaCCDs
Do you have any idea why this occurs and how avoid this?
Thank you and happy new year :)
Hello,
I was wondering if it is possible to use soft binning in case of inappropriate hard binning.
Basler hardware 4x4 binning seems to take images with 12 bits pixels and merge 4 12 bits pixels (16 bits of information) into one 12 bits pixel (12 bits of information) so we loose 4 bits of information.
This 4 bits reduction of information is not a problem in case of low-signal detection but if we want to count a lot of signals, it become a problem.
Is there a solution to use soft binning on a basler, which allows hardware binning? I did not see anything about this in the doc.
Thank you.
edit : I use a camera aca4024-29um at 10Hz.
The goal is to compute a 16 bits images 4 times smaller than the original 12 bits image coded on 16 bits.
Dear all,
related to issue #37.
I have installed Lima on a Windows 10 PC with mamba
(lima-camera-basler 1.10.9 lima-camera-basler-tango 1.10.10 0 lima-core 1.9.15 lima-tango-server 1.9.20).
The DB device server is runing on a Ubuntu 22.04 VM, see #37.
When I try to start a device server for acA640-100gm on windows pc, I get the error message:
(basler) C:\Users\AlexK>LimaCCDs 1
basler camera_id: ip://192.168.50.220
[2024/01/15 12:31:46.707438] 1e8ace3c270 *Camera*lima::Basler::Camera::Camera (\BaslerCamera.cpp:310)-Always: No Camera found!
[2024/01/15 12:31:46.708412] 1e8ace3c270 *Camera*lima::Basler::Camera::Camera (\BaslerCamera.cpp:324)-Error: Exception(Error): [thrown]
********* No device is available or no device contains the provided device info properties.
-------> Received a DevFailed exception: DevFailed[
DevError[
desc = limacore.Exception: Hardware: lima::Basler::Camera::Camera(C:\Mambaforge\conda-bld\lima-camera-basler_1698770569337\work\src\BaslerCamera.cpp, 324): Error: No device is available or no device contains the provided device info properties.
I can start LimaCCD for the cam on the VM and a LimaViewer on Windows.
P.S.
In general, everything from TANGO (show and refresh in jive, LimaCCDs in Terminal) reacts very slowly on Windows, as if some timeout must occur first. In the VM they react immediately.
We are trying to set up lima-camera-pilatus-tango at our MX beamlines for communication between mxcube and pilatus detector. We got problem when we declearing a new device for pilatus detector with "server wizard". When we start the Databaseds, it shows "ready to accept request" with "device tango/admin/nada not defined in the database". When we start "Starter dec2236", it shows "ready to accept request" with "/proc/******/cmdline No such file or directory". When we created and start " LimaCCDs 1", it shows "ImportError: liblibconfig++.so: cannot open shared object file : No such file or derectory". I serched with google and can't find the liblibconfig++.so Liberery. Should it be libconfig++.so? What should I do to figure it out?
We are setting up the lima-camera-pilatus-tango on the DCU (detector server). And we are aware of that this may could cause problem of camserver, which we don't have spare and can't setup ouself. Could we setup the Lima-camera-pilatus-tango on another server with centos7 system and only incharge of the communication between mxcube and pilatus detector? What should we do? Thanks a lot.
We have just encountered a problem when using a Basler camera in the "live" mode (using CtVideo->startLive())
The acquisition is started continuously with a certain "exposure time" (for example, 5 s) and during the acquisition, we need to change the "exposure time" (for example 200 ms) , we observe that the first image will only be available after an elapsed time equal to the previous "exposure time" ie 5s !!
This problem has existed for a long time, but we had never noticed before.
Hi all,
We at LULI currently using an old version of Lima (1.4.? from 2015) and we have issues with the last image recorded…which is not always the more recent one. It causes delay in display from zero to few images with random behaviour.
We then try to install the last version of Lima and the lima-camera-basler-tango plugin (thanks to samuel) and test this install with a Basler camera on External Trigger (EXTERNAL_GATE) at a 10-second rate looking at a PC Windows clock. At the same time, we're using a LabView binding to read a part of the buffer.
And this is the result of a 20+ minutes testing which represents 151 images:
(Sorry, the two tabs rows don't match each other but it's not important.)
As you can barely see (!) the first one on the left reads "16:03:21" as the 9th from the left reads "16:04:41" (aka the near real time). You can guess the getImage(-1) in Lima reads the left one: the last_image_acquired here is No. 151. And we do not have any clue to guess the No. of the real last image acquired (here the No.143 but it fluctuates from 1 to the buffer's size, randomly). You can imagine the users' state of mind when they're trying to align a laserbeam with 10Hz to 0.016Hz rate. It's very confusing even with the minimum size of buffer (1%, 16 to 7 images' pile depending architecture).
(We tried on INTERNAL_TRIGGER mode and for the minimum size of buffer (1%) but the behaviour, as not predictable and less easy to capture, will results in the same way: randomly lost--or rather misplaced--of last image.)
Is this behaviour is already known?
Thanks for any help!
Stéphane
When I run the startAcq command from jive of lima-camera-pilatus, it shows the following error: "Invalid command: SetROI". For Pilatus detector, it says "ROI readout is not supported for this detector!".
I found the PilatusCamera.cpp file and it says like this:
void Camera::_resync()
{
if(m_has_cmd_setenergy)
send("setenergy");
else
send("setthreshold");
if(m_has_cmd_roi)
send("setroi 0");
send("exptime");
send("expperiod");
send("nimages 1");
std::stringstream cmd;
cmd<<"imgpath "<<m_imgpath;
send(cmd.str());
send("delay");
send("nexpframe");
send("setackint 0");
send("dbglvl 1");
send("version");
}
What should I do to avoid the SetROI command? Thanks a lot!
-Error: Exception(Error): Could not set roi to:roi_pattern=0, m_error_message=*** Invalid command: SetROI [thrown]
[2022/04/11 17:29:46.199327] 2b1e3fd99700 CameraComPilatus::Camera::setRoi (/opt/conda/conda-bld/lima-camera-pilatus_1626157356241/work/src/PilatusCamera.cpp:1200)-Error: Exception(Error): Could not set roi to:roi_pattern=0, m_error_message=*** Invalid command: SetROI [thrown]
[2022/04/11 17:29:50.828199] 2b1e3fd99700 ControlControl::Control::startAcq (/opt/conda/conda-bld/lima-core_1648541428893/work/control/src/CtControl.cpp:604)-Error: Exception(Error): Run prepare Acq before starting acquisition [thrown]
Dear all,
I have installed Tango 9.5 and Lima in an Ubuntu 20.04. VM with Mamba
(lima-camera-basler 1.10.9 lima-camera-basler-tango 1.10.10 0 lima-core 1.9.15 lima-tango-server 1.9.20)
When I try to start a device server for Scout sc640, I get the error message:
(tango) alex@ubuntu2004:~$ LimaCCDs 1
basler camera_id: ip://192.168.50.223
[2024/01/12 14:31:57.133736] 7fd3888a4180 *Camera*Basler::BaslerInterface::Interface (/opt/conda/conda-bld/lima-camera-basler_1694769296685/work/src/BaslerInterface.cpp:41)-Always: force_video_mode=0
[2024/01/12 14:31:57.194067] 7fd3888a4180 *Camera*Basler::Camera::getLatTimeRange (/opt/conda/conda-bld/lima-camera-basler_1694769296685/work/src/BaslerCamera.cpp:1037)-Error: Exception(Error): Node is not available. [thrown]
-------> Received a DevFailed exception: DevFailed[
DevError[
desc = limacore.Exception: Hardware: getLatTimeRange(/opt/conda/conda-bld/lima-camera-basler_1694769296685/work/src/BaslerCamera.cpp, 1037): Error: Node is not available.
The Basler Device Server works fine with a Basler acA640-100gm in the same IP subnet.
Does anyone else have problems with Scout cameras? Pylon SDK seems to be V.6.3.
Addendum:
The installation on a PC with Ubuntu 22.04. shows exactly the same behavior.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.