Panasonic GH5 - stuck at end of capture-image-and-download
Describe the bug
I recently got a Panasonic Lumix GH5 (DC-GH5) and saw that it was listed as compatible with gphoto2. I carefully followed FormerLurker's guides for installation and DSLR setup (to get it working in Octolapse), but I've run into a problem in Step 4 - Test your camera.
--capture-image seems to work, but when I test -capture-image-and-download it hangs at the end in a seemingly endless loop.


It does successfully take the picture, download it from the camera to the Pi, and then delete the file from the camera, but after that it gets stuck. The camera is completely functional, but the Pi doesn't go back to the command prompt. I can't cancel out of it with CTRL-C, so I end up powering off the camera. I have run it with --debug and created a log file below (I removed most of the JPG hex dump from the file to make it smaller, and noted the spot where I turned the camera off).
Any help would be appreciated--I'm trying to get this working for octolapse.
Thank you!
Name the camera Panasonic DC-GH5 usb:002,007 Connected via PC(Tether) on the camera. If I choose PTP, it comes up as the incorrect camera and capture-image says it isn't supported.
libgphoto2 and gphoto2 version This version of gphoto2 is using the following software versions and options: gphoto2 2.5.26.1 gcc, popt(m), exif, no cdk, no aa, jpeg, no readline libgphoto2 2.5.26.1 standard camlibs (SKIPPING docupen lumix), gcc, ltdl, EXIF libgphoto2_port 0.12.0 iolibs: disk ptpip serial usb usbdiskdirect usbscsi, gcc, ltdl, EXIF, USB, serial without locking
To Reproduce This happens every time I try gphoto2 --capture-image-and-download, with or without --autodetect included.
Log File gh5log - Copy without JPG hex.log
I see you built libgphoto2 with the very old libusb0.
I strongly recommend to build libgphoto2 with libusb1 development headers/libraries , not libusb0. This likely might solve this issue. (libusb1-dev or similar named)
I also added logic in gphoto2 to abort the wait at some point to avoid endless loops
Thanks. I tried rebuilding it with the latest dev version of libusb and the rest of the libraries, but it's still giving me issues. I even tried a fresh image just to be sure. Now it hangs after capture-image. However, it is working on my old Rebel T3i, so I could use that one. But I'm still trying to figure out the GH5 since it's my newer camera.
can you check with gphoto2 --version that you use libusb1 and not libusb0 ?

hmm libghphoto2 version is back 2.5.22 :( but built with usb1 here, but its probably the system one :/
I'm a bit of a noob when it comes to installing/compiling, so I'm not sure how I got an older version. I used 'git clone https://github.com/gphoto/libgphoto2.git' before installing. I'll try again and see if I get the latest version
Okay.. so I reinstalled everything. Now running gphoto2 and libgphoto 2.5.27.1 with libusb1.
It's still hanging when I do capture-image. It says could not capture image, but the camera is taking the shot immediately. I've attached the debug log here.
mostly looking good. But looking at the events i do not see the object added events. ... there are others emitted, but these seem not objectadded ones.
(panasonic capture is all really underdocumented and reverse engineered... i rented a gc9 some weeks ago and that worked well after fixes. i rented a gh5 last year and that was working... not sure what changed :( )
same issue here ,any news?
Just wanted to note that I am seeing the same behavior as @proven28 with capture-image on a GH5 with firmware v.2.8
My gphoto2 setup running on a Jetson Nano looks like:
gphoto2 2.5.28 gcc, popt(m), exif, no cdk, no aa, no jpeg, no readline
libgphoto2 2.5.30 standard camlibs (SKIPPING docupen lumix), gcc, no ltdl, EXIF
libgphoto2_port 0.12.1 iolibs: disk ptpip serial usb1 usbdiskdirect usbscsi, gcc, no ltdl, EXIF, USB, serial without locking
Any ideas on how to get the GH5 working? Thanks!
Quick update. Same behavior when using latest sources (built via https://github.com/gonzalo/gphoto2-updater):
gphoto2 2.5.28.1 gcc, popt(m), exif, no cdk, no aa, no jpeg, no readline
libgphoto2 2.5.30.1 standard camlibs (SKIPPING docupen lumix), gcc, no ltdl, EXIF
libgphoto2_port 0.12.1 iolibs: disk ptpip serial usb1 usbdiskdirect usbscsi, gcc, no ltdl, EXIF, USB, serial without locking
Another quick update - I was able to get the capture working by switching to a USB2 port on the Jetson Nano. I'll do a little more testing later.
Update - Strange. And now switching back to USB3 seems to be working...
considering solved, even if a bit unstable
I'm also having this problem and so far haven't been able to download any images.
Body Firmware: 2.8
gphoto2 --version
gphoto2 2.5.28
Copyright (c) 2000-2021 Marcus Meissner and others
gphoto2 comes with NO WARRANTY, to the extent permitted by law. You may
redistribute copies of gphoto2 under the terms of the GNU General Public
License. For more information about these matters, see the files named COPYING.
This version of gphoto2 is using the following software versions and options:
gphoto2 2.5.28 gcc, popt(m), exif, no cdk, no aa, jpeg, readline
libgphoto2 2.5.30 standard camlibs, gcc, no ltdl, EXIF
libgphoto2_port 0.12.1 iolibs: disk ptpip serial usb1 usbdiskdirect usbscsi, gcc, no ltdl, EXIF, USB, serial without locking
I'm running in Archlinux on windows WSL with USB forwarded (usbipd). --capture-preview and Entangle liveview work. Both with --capture-image and --capture-image-and-download it gets stuck waiting:
gphoto2 --debug --capture-image
0.000088 main (2): ALWAYS INCLUDE THE FOLLOWING LINES WHEN SENDING DEBUG MESSAGES TO THE MAILING LIST:
0.000150 main (2): gphoto2 2.5.28
0.000159 main (2): gphoto2 has been compiled with the following options:
0.000163 main (2): + gcc (C compiler used)
0.000166 main (2): + popt (mandatory, for handling command-line parameters)
0.000170 main (2): + exif (for displaying EXIF information)
0.000173 main (2): + no cdk (for accessing configuration options)
0.000176 main (2): + no aa (for displaying live previews)
0.000179 main (2): + jpeg (for displaying live previews in JPEG format)
0.000182 main (2): + readline (for easy navigation in the shell)
0.000186 main (2): libgphoto2 2.5.30
0.000189 main (2): libgphoto2 has been compiled with the following options:
0.000193 main (2): + standard camlib set (ax203 canon digigr8 dimagev directory docupen jl2005a jl2005c kodak_dc240 lumix mars pentax ptp2 ricoh_g3 sierra sonix sq905 st2205 topfield tp6801)
0.000199 main (2): + gcc (C compiler used)
0.000202 main (2): + no ltdl (for portable loading of camlibs)
0.000205 main (2): + EXIF (for special handling of EXIF files)
0.000214 main (2): libgphoto2_port 0.12.1
0.000262 main (2): libgphoto2_port has been compiled with the following options:
0.000268 main (2): + iolibs: disk ptpip serial usb1 usbdiskdirect usbscsi
0.000272 main (2): + gcc (C compiler used)
0.000280 main (2): + no ltdl (for portable loading of iolibs)
0.000283 main (2): + EXIF (for vusb)
0.000286 main (2): + USB (libusb1, for USB cameras)
0.000289 main (2): + serial (for serial cameras)
0.000292 main (2): + no resmgr (serial port access and locking)
0.000295 main (2): + no ttylock (serial port locking)
0.000300 main (2): + no lockdev (serial port locking)
0.000303 main (2): CAMLIBS env var not set, using compile-time default instead
0.000344 main (2): IOLIBS env var not set, using compile-time default instead
0.000352 main (2): invoked with following arguments:
0.000356 main (2): --debug
0.000361 main (2): --capture-image
0.000380 load_settings (2): Creating gphoto config directory ('/home/s-ol/.gphoto')
0.000499 load_settings (2): Loading settings from file '/home/s-ol/.gphoto/settings'.
0.000536 main (2): The user has not specified both a model and a port. Try to figure them out.
0.000582 gp_port_init_localedir (2): localedir has been set to /usr/share/locale (compile-time default)
0.000592 gp_port_info_list_load (2): Using ltdl to load io-drivers from '/usr/lib/libgphoto2_port/0.12.1'...
0.000682 foreach_func (2): Called for filename '/usr/lib/libgphoto2_port/0.12.1/disk'.
0.001048 gp_port_library_list (2): found mtab fsname none
0.001113 gp_port_library_list (2): found mtab fsname none
0.002158 gp_port_library_list (2): found mtab fsname none
0.002242 gp_port_library_list (2): found mtab fsname /dev/sdc
0.002317 gp_port_library_list (2): found mtab fsname none
0.002414 gp_port_library_list (2): found mtab fsname /dev/sdc
0.002534 gp_port_library_list (2): found mtab fsname rootfs
0.002760 gp_port_library_list (2): found mtab fsname none
0.002848 gp_port_library_list (2): found mtab fsname sysfs
0.002912 gp_port_library_list (2): found mtab fsname proc
0.003032 gp_port_library_list (2): found mtab fsname devpts
0.003094 gp_port_library_list (2): found mtab fsname none
0.003118 gp_port_library_list (2): found mtab fsname none
0.003253 gp_port_library_list (2): found mtab fsname none
0.003392 gp_port_library_list (2): found mtab fsname none
0.003503 gp_port_library_list (2): found mtab fsname none
0.003628 gp_port_library_list (2): found mtab fsname binfmt_misc
0.003719 gp_port_library_list (2): found mtab fsname tmpfs
0.003900 gp_port_library_list (2): found mtab fsname cgroup2
0.003964 gp_port_library_list (2): found mtab fsname cgroup
0.003976 gp_port_library_list (2): found mtab fsname cgroup
0.003985 gp_port_library_list (2): found mtab fsname cgroup
0.004042 gp_port_library_list (2): found mtab fsname cgroup
0.004141 gp_port_library_list (2): found mtab fsname cgroup
0.004197 gp_port_library_list (2): found mtab fsname cgroup
0.004210 gp_port_library_list (2): found mtab fsname cgroup
0.004218 gp_port_library_list (2): found mtab fsname cgroup
0.004376 gp_port_library_list (2): found mtab fsname cgroup
0.004425 gp_port_library_list (2): found mtab fsname cgroup
0.004432 gp_port_library_list (2): found mtab fsname cgroup
0.004436 gp_port_library_list (2): found mtab fsname cgroup
0.004440 gp_port_library_list (2): found mtab fsname cgroup
0.004443 gp_port_library_list (2): found mtab fsname cgroup
0.004493 gp_port_library_list (2): found mtab fsname none
0.004519 gp_port_library_list (2): found mtab fsname none
0.004601 gp_port_library_list (2): found mtab fsname none
0.004687 gp_port_library_list (2): found mtab fsname drvfs
0.006834 gp_port_library_list (2): found mtab fsname cgroup
0.006900 gp_port_library_list (2): found mtab fsname hugetlbfs
0.006947 gp_port_library_list (2): found mtab fsname mqueue
0.006952 gp_port_library_list (2): found mtab fsname debugfs
0.006969 gp_port_library_list (2): found mtab fsname tracefs
0.007036 gp_port_library_list (2): found mtab fsname tmpfs
0.007150 gp_port_library_list (2): found mtab fsname fusectl
0.007196 gp_port_library_list (2): found mtab fsname none
0.007216 gp_port_library_list (2): found mtab fsname none
0.007229 gp_port_library_list (2): found mtab fsname none
0.007303 foreach_func (2): Loaded '' ('^disk:') from '/usr/lib/libgphoto2_port/0.12.1/disk'.
0.007352 foreach_func (2): Called for filename '/usr/lib/libgphoto2_port/0.12.1/ptpip'.
0.007603 foreach_func (2): Loaded 'PTP/IP Connection' ('ptpip:') from '/usr/lib/libgphoto2_port/0.12.1/ptpip'.
0.007652 foreach_func (2): Loaded '' ('^ptpip:') from '/usr/lib/libgphoto2_port/0.12.1/ptpip'.
0.007658 foreach_func (2): Loaded 'IP Connection' ('ip:') from '/usr/lib/libgphoto2_port/0.12.1/ptpip'.
0.007662 foreach_func (2): Loaded '' ('^ip:') from '/usr/lib/libgphoto2_port/0.12.1/ptpip'.
0.007665 foreach_func (2): Called for filename '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008165 foreach_func (2): Loaded 'Serial Port 0' ('serial:/dev/ttyS0') from '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008218 foreach_func (2): Loaded 'Serial Port 1' ('serial:/dev/ttyS1') from '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008225 foreach_func (2): Loaded 'Serial Port 2' ('serial:/dev/ttyS2') from '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008231 foreach_func (2): Loaded 'Serial Port 3' ('serial:/dev/ttyS3') from '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008237 foreach_func (2): Loaded 'Serial Port Device' ('serial:') from '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008242 foreach_func (2): Loaded '' ('^serial:') from '/usr/lib/libgphoto2_port/0.12.1/serial'.
0.008246 foreach_func (2): Called for filename '/usr/lib/libgphoto2_port/0.12.1/usb1'.
0.015890 foreach_func (2): Loaded '' ('^usb:') from '/usr/lib/libgphoto2_port/0.12.1/usb1'.
0.015955 foreach_func (2): Loaded 'Universal Serial Bus' ('usb:002,006') from '/usr/lib/libgphoto2_port/0.12.1/usb1'.
0.015969 foreach_func (2): Called for filename '/usr/lib/libgphoto2_port/0.12.1/usbdiskdirect'.
0.016333 foreach_func (2): Called for filename '/usr/lib/libgphoto2_port/0.12.1/usbscsi'.
0.016712 gp_port_info_list_count (2): Counting entries (13 available)...
0.016762 gp_port_info_list_count (2): 8 regular entries available.
0.016806 gp_port_init_localedir (2): ignoring late call (localedir value NULL)
0.016813 gp_init_localedir (2): localedir has been set to /usr/share/locale (compile-time default)
0.016871 gp_abilities_list_load_dir (2): Using ltdl to load camera libraries from '/usr/lib/libgphoto2/2.5.30'...
0.016942 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/ax203'.
0.016987 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/canon'.
0.016993 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/digigr8'.
0.016996 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/dimagev'.
0.016999 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/directory'.
0.017003 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/docupen'.
0.017006 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/jl2005a'.
0.017009 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/jl2005c'.
0.017012 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/kodak_dc240'.
0.017015 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/lumix'.
0.017059 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/mars'.
0.017068 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/pentax'.
0.017075 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/ptp2'.
0.017082 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/ricoh_g3'.
0.017090 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/sierra'.
0.017146 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/sonix'.
0.017162 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/sq905'.
0.017170 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/st2205'.
0.017182 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/topfield'.
0.017190 foreach_func (2): Found '/usr/lib/libgphoto2/2.5.30/tp6801'.
0.017200 gp_abilities_list_load_dir (2): Found 20 camera drivers.
0.090251 gp_port_info_list_count (2): Counting entries (13 available)...
0.090297 gp_port_info_list_count (2): 8 regular entries available.
0.090301 gp_port_new (2): Creating new device...
0.090305 gp_port_info_list_get_info (2): Getting info of entry 0 (13 available)...
0.090440 gp_port_set_settings (2): Setting settings...
0.090473 gp_port_info_list_get_info (2): Getting info of entry 1 (13 available)...
0.090601 gp_port_set_settings (2): Setting settings...
0.090640 gp_port_info_list_get_info (2): Getting info of entry 2 (13 available)...
0.090782 gp_port_set_timeout (2): Setting port timeout to 500 milliseconds.
0.090819 gp_port_set_settings (2): Setting settings...
0.090827 gp_port_info_list_get_info (2): Getting info of entry 3 (13 available)...
0.090931 gp_port_set_timeout (2): Setting port timeout to 500 milliseconds.
0.090963 gp_port_set_settings (2): Setting settings...
0.090967 gp_port_info_list_get_info (2): Getting info of entry 4 (13 available)...
0.091079 gp_port_set_timeout (2): Setting port timeout to 500 milliseconds.
0.091111 gp_port_set_settings (2): Setting settings...
0.091115 gp_port_info_list_get_info (2): Getting info of entry 5 (13 available)...
0.091204 gp_port_set_timeout (2): Setting port timeout to 500 milliseconds.
0.091247 gp_port_set_settings (2): Setting settings...
0.091253 gp_port_info_list_get_info (2): Getting info of entry 6 (13 available)...
0.091341 gp_port_set_timeout (2): Setting port timeout to 500 milliseconds.
0.091370 gp_port_set_settings (2): Setting settings...
0.091375 gp_port_info_list_get_info (2): Getting info of entry 7 (13 available)...
0.094421 gp_port_set_timeout (2): Setting port timeout to 5000 milliseconds.
0.094517 gp_port_set_settings (2): Setting settings...
0.094524 gp_libusb1_update (2): (old int=0, conf=-1, alt=-1) port usb:002,006, (new int=0, conf=-1, alt=-1) port usb:002,006
0.094528 gp_libusb1_update (2): lowlevel libusb1 port not yet opened, no need for libusb changes
0.094534 gp_abilities_list_detect_usb(2): Auto-detecting USB cameras...
0.095568 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x29a, subclass, 0xffffffff, protocol 0xffffffff)...
0.095832 gp_libusb1_find_device_lib (2): Looking for USB device (vendor 0x4da, product 0x2382)... found.
0.095959 gp_libusb1_find_device_lib (2): Detected defaults: config 1, interface 0, altsetting 0, inep 82, outep 01, intep 83, class 06, subclass 01
0.096026 gp_abilities_list_detect_usb(2): Found 'Panasonic DC-GH5' (0x4da,0x2382)
0.096072 gp_port_free (2): Freeing port...
0.096108 gp_port_close (2): Closing port...
0.096602 gp_camera_set_abilities (2): Setting abilities ('Panasonic DC-GH5')...
0.096644 gp_setting_set (2): Setting key 'model' to value 'Panasonic DC-GH5' (gphoto2)
0.096651 save_settings (2): Saving 3 setting(s) to file "/home/s-ol/.gphoto/settings"
0.096786 gp_port_info_list_lookup_path(2): Looking for path 'usb:002,006' (13 entries available)...
0.096820 gp_port_info_list_get_info (2): Getting info of entry 7 (13 available)...
0.096825 gp_camera_set_port_info (2): Setting port info for port 'Universal Serial Bus' at 'usb:002,006'...
0.099976 gp_port_set_timeout (2): Setting port timeout to 5000 milliseconds.
0.100018 gp_port_set_settings (2): Setting settings...
0.100024 gp_libusb1_update (2): (old int=0, conf=-1, alt=-1) port usb:002,006, (new int=0, conf=-1, alt=-1) port usb:002,006
0.100028 gp_libusb1_update (2): lowlevel libusb1 port not yet opened, no need for libusb changes
0.100032 gp_setting_set (2): Setting key 'port' to value 'usb:002,006' (gphoto2)
0.100047 save_settings (2): Saving 3 setting(s) to file "/home/s-ol/.gphoto/settings"
0.100239 gp_camera_init (2): Initializing camera...
0.100312 gp_libusb1_find_device_lib (2): Looking for USB device (vendor 0x4da, product 0x2382)... found.
0.100359 gp_libusb1_find_device_lib (2): Detected defaults: config 1, interface 0, altsetting 0, inep 82, outep 01, intep 83, class 06, subclass 01
0.100455 gp_camera_init (2): Loading '/usr/lib/libgphoto2/2.5.30/ptp2'...
0.102301 gp_port_open (2): Opening USB port...
0.102349 gp_libusb1_open (2): ()
0.102375 gp_libusb1_open (2): claiming interface 0
0.103412 camera_init (2): maxpacketsize 1024
0.103456 gp_port_set_timeout (2): Setting port timeout to 8000 milliseconds.
0.103461 ptp (2): PTP: Opening session
0.103504 ptp_usb_sendreq (2): Sending PTP_OC 0x1002 (Open session) (0x1) request...
0.103542 gp_port_write (3): Writing 16 = 0x10 bytes to port...
0.104274 gp_port_write (3): Wrote 16 = 0x10 bytes to port: (hexdump of 16 bytes)
0000 10 00 00 00 01 00 02 10-00 00 00 00 01 00 00 00 ................
0.104319 ptp_usb_getresp (2): Reading PTP_OC 0x1002 (Open session) response...
0.104329 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.104990 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 1e 20-00 00 00 00 ....... ....
0.105032 ptp_usb_getresp [usb.c:516] (0): PTP_OC 0x1002 receiving resp failed: PTP Session Already Opened (0x201e)
0.105037 camera_init library.c:9723: 'ptp_opensession (params, sessionid)' failed: PTP Session Already Opened (0x201e)
0.105040 gp_port_set_timeout (2): Setting port timeout to 20000 milliseconds.
0.105046 ptp_usb_sendreq (2): Sending PTP_OC 0x1001 (Get device info) request...
0.105049 gp_port_write (3): Writing 12 = 0xc bytes to port...
0.105692 gp_port_write (3): Wrote 12 = 0xc bytes to port: (hexdump of 12 bytes)
0000 0c 00 00 00 01 00 01 10-01 00 00 00 ............
0.105736 ptp_usb_getdata (2): Reading PTP_OC 0x1001 (Get device info) data...
0.105739 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.106369 gp_port_read (3): Read 235 = 0xeb out of 1024 bytes from port: (hexdump of 235 bytes)
0000 eb 00 00 00 02 00 01 10-01 00 00 00 64 00 1c 00 ............d...
0010 00 00 64 00 00 00 00 13-00 00 00 01 10 02 10 03 ..d.............
0020 10 04 10 05 10 06 10 07-10 08 10 09 10 0a 10 0b ................
0030 10 0f 10 14 10 15 10 16-10 1b 10 02 91 03 91 04 ................
0040 91 10 00 00 00 04 40 05-40 06 40 08 40 0c 40 08 ......@.@.@.@.@.
0050 c1 09 c1 01 c1 02 c1 03-c1 04 c1 06 c1 07 c1 01 ................
0060 c2 02 c2 12 c2 01 00 00-00 01 50 00 00 00 00 05 ..........P.....
0070 00 00 00 01 30 06 30 0d-30 00 38 01 38 0a 50 00 ....0.0.0.8.8.P.
0080 61 00 6e 00 61 00 73 00-6f 00 6e 00 69 00 63 00 a.n.a.s.o.n.i.c.
0090 00 00 07 44 00 43 00 2d-00 47 00 48 00 35 00 00 ...D.C.-.G.H.5..
00a0 00 04 32 00 2e 00 38 00-00 00 20 30 00 30 00 30 ..2...8... 0.0.0
00b0 00 30 00 30 00 30 00 30-00 30 00 30 00 30 00 30 .0.0.0.0.0.0.0.0
00c0 00 30 00 30 00 30 00 30-00 30 00 30 00 30 00 58 .0.0.0.0.0.0.0.X
00d0 00 48 00 52 00 31 00 37-00 30 00 38 00 30 00 35 .H.R.1.7.0.8.0.5
00e0 00 30 00 30 00 39 00 34-00 00 00 .0.0.9.4...
0.106431 ptp_usb_getresp (2): Reading PTP_OC 0x1001 (Get device info) response...
0.106434 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.107070 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 01 20-01 00 00 00 ....... ....
0.107124 print_debug_deviceinfo (2): Device info:
0.107164 print_debug_deviceinfo (2): Manufacturer: Panasonic
0.107169 print_debug_deviceinfo (2): Model: DC-GH5
0.107172 print_debug_deviceinfo (2): device version: 2.8
0.107174 print_debug_deviceinfo (2): serial number: '000000000000000000XHR1708050094'
0.107178 print_debug_deviceinfo (2): Vendor extension ID: 0x0000001c
0.107180 print_debug_deviceinfo (2): Vendor extension version: 100
0.107185 print_debug_deviceinfo (2): Vendor extension description:
0.107188 print_debug_deviceinfo (2): Functional Mode: 0x0000
0.107190 print_debug_deviceinfo (2): PTP Standard Version: 100
0.107192 print_debug_deviceinfo (2): Supported operations:
0.107199 print_debug_deviceinfo (2): 0x1001 (Get device info)
0.107202 print_debug_deviceinfo (2): 0x1002 (Open session)
0.107205 print_debug_deviceinfo (2): 0x1003 (Close session)
0.107210 print_debug_deviceinfo (2): 0x1004 (Get storage IDs)
0.107213 print_debug_deviceinfo (2): 0x1005 (Get storage info)
0.107216 print_debug_deviceinfo (2): 0x1006 (Get number of objects)
0.107244 print_debug_deviceinfo (2): 0x1007 (Get object handles)
0.107285 print_debug_deviceinfo (2): 0x1008 (Get object info)
0.107323 print_debug_deviceinfo (2): 0x1009 (Get object)
0.107329 print_debug_deviceinfo (2): 0x100a (Get thumbnail)
0.107333 print_debug_deviceinfo (2): 0x100b (Delete object)
0.107338 print_debug_deviceinfo (2): 0x100f (Format storage)
0.107348 print_debug_deviceinfo (2): 0x1014 (Get device property description)
0.107387 print_debug_deviceinfo (2): 0x1015 (Get device property value)
0.107397 print_debug_deviceinfo (2): 0x1016 (Set device property value)
0.107433 print_debug_deviceinfo (2): 0x101b (Get partial object)
0.107463 print_debug_deviceinfo (2): 0x9102 (Get secure time response)
0.107468 print_debug_deviceinfo (2): 0x9103 (Set license response)
0.107470 print_debug_deviceinfo (2): 0x9104 (Get sync list)
0.107473 print_debug_deviceinfo (2): Events Supported:
0.107477 print_debug_deviceinfo (2): 0x4004 (StoreAdded)
0.107484 print_debug_deviceinfo (2): 0x4005 (StoreRemoved)
0.107493 print_debug_deviceinfo (2): 0x4006 (DevicePropChanged)
0.107502 print_debug_deviceinfo (2): 0x4008 (DeviceInfoChanged)
0.107507 print_debug_deviceinfo (2): 0x400c (StorageInfoChanged)
0.107515 print_debug_deviceinfo (2): 0xc108 (Unknown Event)
0.107522 print_debug_deviceinfo (2): 0xc109 (Unknown Event)
0.107553 print_debug_deviceinfo (2): 0xc101 (Unknown Event)
0.107557 print_debug_deviceinfo (2): 0xc102 (Unknown Event)
0.107559 print_debug_deviceinfo (2): 0xc103 (Unknown Event)
0.107562 print_debug_deviceinfo (2): 0xc104 (Unknown Event)
0.107564 print_debug_deviceinfo (2): 0xc106 (Unknown Event)
0.107568 print_debug_deviceinfo (2): 0xc107 (Unknown Event)
0.107570 print_debug_deviceinfo (2): 0xc201 (Unknown Event)
0.107596 print_debug_deviceinfo (2): 0xc202 (Unknown Event)
0.107600 print_debug_deviceinfo (2): 0xc212 (Unknown Event)
0.107602 print_debug_deviceinfo (2): Device Properties Supported:
0.107608 print_debug_deviceinfo (2): 0x5001 (Battery Level)
0.107613 print_debug_deviceinfo (2): Device info:
0.107616 print_debug_deviceinfo (2): Manufacturer: Panasonic
0.107651 print_debug_deviceinfo (2): Model: DC-GH5
0.107686 print_debug_deviceinfo (2): device version: 2.8
0.107695 print_debug_deviceinfo (2): serial number: '000000000000000000XHR1708050094'
0.107703 print_debug_deviceinfo (2): Vendor extension ID: 0x0000001c
0.107735 print_debug_deviceinfo (2): Vendor extension version: 100
0.107741 print_debug_deviceinfo (2): Vendor extension description:
0.107777 print_debug_deviceinfo (2): Functional Mode: 0x0000
0.107812 print_debug_deviceinfo (2): PTP Standard Version: 100
0.107819 print_debug_deviceinfo (2): Supported operations:
0.107826 print_debug_deviceinfo (2): 0x1001 (Get device info)
0.107861 print_debug_deviceinfo (2): 0x1002 (Open session)
0.107899 print_debug_deviceinfo (2): 0x1003 (Close session)
0.107937 print_debug_deviceinfo (2): 0x1004 (Get storage IDs)
0.107974 print_debug_deviceinfo (2): 0x1005 (Get storage info)
0.108009 print_debug_deviceinfo (2): 0x1006 (Get number of objects)
0.108046 print_debug_deviceinfo (2): 0x1007 (Get object handles)
0.108084 print_debug_deviceinfo (2): 0x1008 (Get object info)
0.108092 print_debug_deviceinfo (2): 0x1009 (Get object)
0.108130 print_debug_deviceinfo (2): 0x100a (Get thumbnail)
0.108166 print_debug_deviceinfo (2): 0x100b (Delete object)
0.108204 print_debug_deviceinfo (2): 0x100f (Format storage)
0.108239 print_debug_deviceinfo (2): 0x1014 (Get device property description)
0.108278 print_debug_deviceinfo (2): 0x1015 (Get device property value)
0.108313 print_debug_deviceinfo (2): 0x1016 (Set device property value)
0.108350 print_debug_deviceinfo (2): 0x101b (Get partial object)
0.108357 print_debug_deviceinfo (2): 0x9102 (Get secure time response)
0.108360 print_debug_deviceinfo (2): 0x9103 (Set license response)
0.108364 print_debug_deviceinfo (2): 0x9104 (Get sync list)
0.108367 print_debug_deviceinfo (2): 0x9402 (Unknown PTP_OC)
0.108369 print_debug_deviceinfo (2): 0x9403 (Unknown PTP_OC)
0.108399 print_debug_deviceinfo (2): 0x9108 (Clean data store)
0.108439 print_debug_deviceinfo (2): 0x9404 (Unknown PTP_OC)
0.108478 print_debug_deviceinfo (2): 0x9412 (Unknown PTP_OC)
0.108514 print_debug_deviceinfo (2): 0x9706 (Unknown PTP_OC)
0.108523 print_debug_deviceinfo (2): 0x940c (Unknown PTP_OC)
0.108530 print_debug_deviceinfo (2): 0x9414 (Unknown PTP_OC)
0.108537 print_debug_deviceinfo (2): 0x9415 (Unknown PTP_OC)
0.108569 print_debug_deviceinfo (2): Events Supported:
0.108575 print_debug_deviceinfo (2): 0x4004 (StoreAdded)
0.108583 print_debug_deviceinfo (2): 0x4005 (StoreRemoved)
0.108614 print_debug_deviceinfo (2): 0x4006 (DevicePropChanged)
0.108618 print_debug_deviceinfo (2): 0x4008 (DeviceInfoChanged)
0.108620 print_debug_deviceinfo (2): 0x400c (StorageInfoChanged)
0.108622 print_debug_deviceinfo (2): 0xc108 (Unknown Event)
0.108624 print_debug_deviceinfo (2): 0xc109 (Unknown Event)
0.108628 print_debug_deviceinfo (2): 0xc101 (Unknown Event)
0.108631 print_debug_deviceinfo (2): 0xc102 (Unknown Event)
0.108635 print_debug_deviceinfo (2): 0xc103 (Unknown Event)
0.108642 print_debug_deviceinfo (2): 0xc104 (Unknown Event)
0.108647 print_debug_deviceinfo (2): 0xc106 (Unknown Event)
0.108682 print_debug_deviceinfo (2): 0xc107 (Unknown Event)
0.108719 print_debug_deviceinfo (2): 0xc201 (Unknown Event)
0.108723 print_debug_deviceinfo (2): 0xc202 (Unknown Event)
0.108725 print_debug_deviceinfo (2): 0xc212 (Unknown Event)
0.108727 print_debug_deviceinfo (2): Device Properties Supported:
0.108731 print_debug_deviceinfo (2): 0x5001 (Battery Level)
0.108739 ptp_usb_sendreq (2): Sending PTP_OC 0x1004 (Get storage IDs) request...
0.108747 gp_port_write (3): Writing 12 = 0xc bytes to port...
0.109688 gp_port_write (3): Wrote 12 = 0xc bytes to port: (hexdump of 12 bytes)
0000 0c 00 00 00 01 00 04 10-02 00 00 00 ............
0.109736 ptp_usb_getdata (2): Reading PTP_OC 0x1004 (Get storage IDs) data...
0.109744 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.110425 gp_port_read (3): Read 24 = 0x18 out of 1024 bytes from port: (hexdump of 24 bytes)
0000 18 00 00 00 02 00 04 10-02 00 00 00 02 00 00 00 ................
0010 00 00 01 00 00 00 02 00- ........
0.110488 ptp_usb_getresp (2): Reading PTP_OC 0x1004 (Get storage IDs) response...
0.110528 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.111285 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 01 20-02 00 00 00 ....... ....
0.111347 ptp (2): (storage=0xffffffff, handle=0xffffffff)
0.111351 ptp (2): Listing ...
0.111366 ptp_usb_sendreq (2): Sending PTP_OC 0x1007 (Get object handles) (0xffffffff,0x0,0xffffffff) request...
0.111402 gp_port_write (3): Writing 24 = 0x18 bytes to port...
0.116311 gp_port_write (3): Wrote 24 = 0x18 bytes to port: (hexdump of 24 bytes)
0000 18 00 00 00 01 00 07 10-03 00 00 00 ff ff ff ff ................
0010 00 00 00 00 ff ff ff ff- ........
0.116382 ptp_usb_getdata (2): Reading PTP_OC 0x1007 (Get object handles) data...
0.116386 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.117460 gp_port_read (3): Read 24 = 0x18 out of 1024 bytes from port: (hexdump of 24 bytes)
0000 18 00 00 00 02 00 07 10-03 00 00 00 02 00 00 00 ................
0010 00 00 00 21 00 00 00 11- ...!....
0.117542 ptp_usb_getresp (2): Reading PTP_OC 0x1007 (Get object handles) response...
0.117547 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.118596 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 01 20-03 00 00 00 ....... ....
0.118663 ptp (2): adding new objectid 0x21000000 (nrofobs=0,j=0)
0.118667 ptp (2): adding new objectid 0x11000000 (nrofobs=1,j=1)
0.118684 ptp_usb_sendreq (2): Sending PTP_OC 0x9402 (Unknown PTP_OC) (0x2000030) request...
0.118689 gp_port_write (3): Writing 16 = 0x10 bytes to port...
0.119733 gp_port_write (3): Wrote 16 = 0x10 bytes to port: (hexdump of 16 bytes)
0000 10 00 00 00 01 00 02 94-04 00 00 00 30 00 00 02 ............0...
0.119800 ptp_usb_getdata (2): Reading PTP_OC 0x9402 (Unknown PTP_OC) data...
0.119804 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.120693 gp_port_read (3): Read 40 = 0x28 out of 1024 bytes from port: (hexdump of 40 bytes)
0000 28 00 00 00 02 00 02 94-04 00 00 00 31 00 00 02 (...........1...
0010 04 00 00 00 c4 09 00 00-32 00 00 02 08 00 00 00 ........2.......
0020 e8 03 00 80 00 24 f4 00- .....$..
0.120767 ptp_usb_getresp (2): Reading PTP_OC 0x9402 (Unknown PTP_OC) response...
0.120771 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.121619 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 01 20-04 00 00 00 ....... ....
0.121675 camera_panasonic_capture (2): **** GH5: checking old events...
0.121679 gp_port_get_timeout (2): Current port timeout is 20000 milliseconds.
0.121682 gp_port_set_timeout (2): Setting port timeout to 150 milliseconds.
0.121685 gp_port_check_int (3): Reading 24 = 0x18 bytes from interrupt endpoint...
0.278793 gp_port_check_int (3): Reading 24 = 0x18 bytes from interrupt endpoint...
0.442253 gp_port_set_timeout (2): Setting port timeout to 20000 milliseconds.
0.442426 camera_panasonic_capture (2): **** GH5: draining old events...
0.442444 camera_panasonic_capture (2): **** GH5: trigger capture...
0.442473 ptp_usb_sendreq (2): Sending PTP_OC 0x9404 (Unknown PTP_OC) (0x3000011) request...
0.442485 gp_port_write (3): Writing 16 = 0x10 bytes to port...
0.445518 gp_port_write (3): Wrote 16 = 0x10 bytes to port: (hexdump of 16 bytes)
0000 10 00 00 00 01 00 04 94-05 00 00 00 11 00 00 03 ................
0.445698 ptp_usb_getresp (2): Reading PTP_OC 0x9404 (Unknown PTP_OC) response...
0.445711 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.450846 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 01 20-05 00 00 00 ....... ....
1.486986 camera_panasonic_capture (2): **** GH5: checking for new object...
1.487172 gp_port_get_timeout (2): Current port timeout is 20000 milliseconds.
1.487189 gp_port_set_timeout (2): Setting port timeout to 150 milliseconds.
1.487200 gp_port_check_int (3): Reading 24 = 0x18 bytes from interrupt endpoint...
1.649635 gp_port_check_int (3): Reading 24 = 0x18 bytes from interrupt endpoint...
1.812940 gp_port_set_timeout (2): Setting port timeout to 20000 milliseconds.
1.867629 camera_panasonic_capture (2): **** GH5: checking for new object...
1.867798 gp_port_get_timeout (2): Current port timeout is 20000 milliseconds.
1.867814 gp_port_set_timeout (2): Setting port timeout to 150 milliseconds.
1.867824 gp_port_check_int (3): Reading 24 = 0x18 bytes from interrupt endpoint...
2.031097 gp_port_check_int (3): Reading 24 = 0x18 bytes from interrupt endpoint...
---- (REPEATS) -----
^C
Cancelling...
3.623548 gp_libusb1_check_int libusb1.c:741: 'libusb_handle_events_timeout(port->pl->ctx, &tv)' failed: System call interrupted (perhaps due to signal) (-10)
3.623708 gp_port_set_timeout (2): Setting port timeout to 20000 milliseconds.
3.623731 ptp_usb_event [usb.c:589] (0): Reading PTP event failed: Error reading from the port (-34)
3.623748 camera_panasonic_capture library.c:5372: 'ptp_check_event (params)' failed: 'PTP General Error' (0x2002)
3.623765 gp_context_error (0): PTP General Error
Did the event maybe change? I don't know anything about this protocol, but is this "PTP_OC" perhaps suspicious?
0.445698 ptp_usb_getresp (2): Reading PTP_OC 0x9404 (Unknown PTP_OC) response...
0.445711 gp_port_read (3): Reading 1024 = 0x400 bytes from port...
0.450846 gp_port_read (3): Read 12 = 0xc out of 1024 bytes from port: (hexdump of 12 bytes)
0000 0c 00 00 00 03 00 01 20-05 00 00 00 ....... ....
9404 is "PANASONIC_InitiateCapture". it is just not yet decoded for debug printing.
A longer debug log perhaps?
@msmeissn: At some point it "randomly" started working sometimes, I then changed USB cable and it started working always (or most of the time?), albeit with rather long and variable delays. So I think it was just the faulty cable?
I've since switched to a Canon EOS model for this project since stability was key.