Giter VIP home page Giter VIP logo

pktriggercord's People

Contributors

asalamon74 avatar blemasle avatar colbyyh2 avatar frankbijnen avatar jirislaby avatar jmozmoz avatar karlrees avatar kozinski avatar msmeissn avatar rwilhelm avatar sh0 avatar twang2218 avatar vuokko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pktriggercord's Issues

K50 - Bulb

Hello,

I have a k50 and this is the only software I've found that seems very promising. Let me know what I can do to help you with improving support for the K50. I currently cannot take pictures in bulb mode. I can in manual mode but I cannot change the shutter speed or the bulb exposure mode. The only thing I can change is aperture

Increase output to file speed

Hello,

currently output to file (/get from buffer) in jpeg take between 4 and 7 seconds (with my K-5) and seem too long than write to SDcard when I take picture directly from APN. Any tips for increase write speed ? tested write in tmpfs, ssd, sdcard, connecting to USB2.0, USB3.0 ... the bottleneck seem to be from APN buffer to computer. When triggercord write the file can't do more.

tested with:
pktriggercord-cli --model=K-5 -i 200 -t 1/2 -r 10 --flash_mode=Manual-RedEye --aperture=4.0 --reconnect -o fwritetest -f

pktriggercord-cli --model=K-5 -i 200 -t 1/2 --flash_mode=Manual-RedEye --aperture=4.0 --reconnect -o fwritetest -f

pktriggercord-cli --model=K-5 -i 200 -t 1/120 --flash_mode=Manual-RedEye --aperture=4.0 --reconnect -o fwritetest -f

pktriggercord-cli --model=K-5 -i 200 -t 1/160 --aperture=4.0 --reconnect -o fwritetest -f

pktriggercord-cli --model=K-5 -i 200 -t 1/160 --aperture=4.0 -o fwritetest -f

pktriggercord-cli -v
pktriggercord-cli 0.84.00

APN setup with this tests

root@orangepipc:/media# pktriggercord-cli --status
pktriggercord-cli: K-5 Connected...
current iso                     : 200
current shutter speed           : 5/10
camera max shutter speed        : 1/180
current aperture                : 4.0
lens max aperture               : 29.0
lens min aperture               : 4.0
set shutter speed               : 5/10
set aperture                    : 4.0
fixed iso                       : 200
auto iso                        : 200-1600
jpeg quality                    : 1
jpeg resolution                 : 10M
jpeg image tone                 : Bright
jpeg saturation                 : 4
jpeg contrast                   : 5
jpeg sharpness                  : 5
jpeg hue                        : 4
zoom                            : 28.13 mm
focus                           : -10
color space                     : AdobeRGB
image format                    : JPEG
raw format                      : DNG
light meter flags               : 16
ec                              : 1.00
custom ev steps                 : 1/3
custom sensitivity steps        : 0
exposure mode                   : 6 (NONE)
user mode flag                  : 3
ae metering mode                : Multi
af mode                         : AF.S
af point select                 : Auto-5
selected af point               : 0
focused af point                : 0
drive mode                      : Single
auto bracket mode               : off
auto bracket picture count      : 0
auto bracket ev                 : 0.30
shake reduction                 : on
white balance mode              : Flash
white balance adjust            : 0
flash mode                      : Manual-RedEye
flash exposure compensation     : 0.00
manual mode ev                  : -1.00
lens                            : smc PENTAX-DA L 18-55mm F3.5-5.6
battery                         : 6.25V 5.99V 6.99V 3.89V

Thank for your work and this software ๐Ÿ‘

K-500 doesn't work unlike said in page

Hello,
I tried on Fedora 26 (compiled myself) and my pentax k-500 is not found.

That could surprise me that can work while gphoto2 (librairie) cannot use it.

Any chance to find why ?

Output:

./pktriggercord-cli --model=K-500 --debug
Debug messaging is now enabled.
./pktriggercord-cli 0.84.04 
model K-500
device (null)
[C]	plsr_init()
driveNum:2
	Checking drive:  sg0 ATA     
 WDC WD10EZEX-22R

	Checking drive:  sg1 ATA     
 WDC WD10EADS-11M

	camera not found
diff: 0.000288
sleep 1 sec
[C]	plsr_init()
driveNum:2
	Checking drive:  sg0 ATA     
 WDC WD10EZEX-22R

	Checking drive:  sg1 ATA     
 WDC WD10EADS-11M

	camera not found
diff: 1.000641
sleep 1 sec

Regards :)

Wrong image height on RAW files from K-5 when using pktriggercord

Hi.
I use a astromodified Pentax K-5 for astrophotography with Kstars/EKOS/INDI which uses libpktriggercord for camera control
https://www.indilib.org/ccds/pentax-dslr.html

The problem is that the image size is wrong for RAW files.
Raw image sizes when shot in camera are 4992x3284
Raw image sizes when shot with pktriggercord are 4992x3344
This leaves a black stripe at the bottom of each image, 60 pixels high, when shot with pktriggercord, which in turn causes problems in preprocessing astro images.
I have compared Pentax K-1, K-3 and K-5, and this only happens on the K-5.
I hope this can be fixed.

Some useful links:
EXIF diffs on K-5 images shot in camera and with pktriggercord:
https://drive.google.com/file/d/100cHsc_kZGuYItxAbh2lkY4YAo6nc9c9/view?usp=sharing

Comparision of image sizes for K-1, K-3, K-5, shot in camera and with pktriggercord:
https://docs.google.com/spreadsheets/d/1XYhQfgmxXLO26zC3SFntfZpgl40_LS2MWYk1ggAzDU8/edit?usp=sharing
(Shooting jpg or dng with K-1 and pktriggercord freezes camera and changes USB mode from MSC to PTP, hence missing images)

Images, EXIF data and more shot in cameras and with pktriggercord
https://drive.google.com/drive/folders/1CnpVuBJx8Z0No5HPsfrl8_n-y9Ceua4U?usp=sharing

Best regards,
Lage

K-3 Bulb mode duration not set

Setting camera (K-3) to bulb mode (single press) with a shutter speed of any multiple of seconds results in an exposure of 1/17 of a second.
I get the error:
pslr.c:948:get_status(p->fd) failed: 129
during a wait for the exposure to complete
I first tried this in ekos which uses libpktriggercord (via gphoto2) where setting bulb mode to press-pres meant the exposure would never complete

tested on firmware 1.41 and 1.43 under Opensuse leap 15.3

K-3II not working in bulb mode

Is there any chance of fixing this. I'm looking at it but not much a developer but I have a K-3II for testing. There's a number of people in the astrophotography community who really need this feature. (K-3II has built-in astrotracer that can have control in bulb mode which may be confusing things.) thanks.

Running PkTriggercord in a VM on Mac ( Parallels )

Hi,

I am desperate to be able to tether my K-5 ii to my Macbook Pro. I have read great things about your software by some people on the Pentax forums, and at DP Review. I have downloaded the Windows version, as well as the latest GTK. I am trying to use pktriggercord in a VM on my Mac. I have Windows 7 installed, and am using it through Parallels. I can't for the life of me figure out how to get this software to work. Do I need to go into the command line to get to the GUI.

If you could please help me I'd greatly appreciate it.

Thanks,

George

k10d only gets 288 bytes status?

I bought a K10D and it reports only 288 byte status, instead of 392 bytes.

I adjusted the table, but the ipslr_status_parse_k10d function seems to parse more than 288 bytes?

Support for K-70?

I tried to use the command line utility (using Windows) to connect to my K-70:

c:\opt\pktriggercord>pktriggercord-cli.exe --status --debug
Debug messaging is now enabled.
pktriggercord-cli.exe 0.81.00
model (null)
device (null)
Checking drive:  C
Checking drive:  D
Checking drive:  E Checking drive:  F RICOHIMG DSC_K-70
...
camera not found

Is there any change to add support for it? Where to start?

Problem setting ISO, shutter speed and aperture on K1

I'm having an issue setting the ISO. The fixed iso value updates and reflects the ISO parameter on the command line but the current iso does not change. It remains set to whatever the camera was last set to using the physical interface.

Setting the aperture and shutter speed works more consistently. I've only had a couple of issues where one or the other did not show up as the current values.

Version:

pktriggercord-cli 0.85.01

Status:

pktriggercord-cli: K-1 Connected...

current iso                     : 6400
current shutter speed           : 5/1
camera max shutter speed        : 1/8000
current aperture                : 3.5
lens max aperture               : 22.0
lens min aperture               : 3.5
set shutter speed               : 5/1
set aperture                    : 3.5
fixed iso                       : 200
auto iso                        : 200-12800
jpeg quality                    : 3
jpeg resolution                 : 36M
jpeg image tone                 : Bright
jpeg saturation                 : 4
jpeg contrast                   : 5
jpeg sharpness                  : 5
jpeg hue                        : 4
zoom                            : 28.00 mm
focus                           : 0
color space                     : sRGB
image format                    : RAW+
raw format                      : PEF
light meter flags               : 0
ec                              : 0.00
custom ev steps                 : 1/3 EV steps
custom sensitivity steps        : 1 EV steps
exposure mode                   : 6
scene mode                      : NONE
user mode flag                  : 2
ae metering mode                : Multi
af mode                         : AF.S
af point select                 : Select
selected af point               : 16384
focused af point                : 0
drive mode                      : Single
auto bracket mode               : off
auto bracket picture count      : 0
auto bracket picture counter    : 1
auto bracket ev                 : 0.70
shake reduction                 : off
white balance mode              : Auto
white balance adjust            : 0
flash mode                      : Manual
flash exposure compensation     : 0.00
manual mode ev                  : 0.00
lens                            : HD PENTAX-D FA 28-105mm F3.5-5.6 ED DC WR
battery                         : 7.55V 7.29V 0.00V 0.00V
buffer mask                     : 0000000000000000

Command:

pktriggercord-cli -t 2 -i 400 -a 5.6

Updated status:

pktriggercord-cli: K-1 Connected...

current iso                     : 6400
current shutter speed           : 2/1
camera max shutter speed        : 1/8000
current aperture                : 5.6
lens max aperture               : 22.0
lens min aperture               : 3.5
set shutter speed               : 2/1
set aperture                    : 5.6
fixed iso                       : 400
auto iso                        : 200-12800
jpeg quality                    : 3
jpeg resolution                 : 36M
jpeg image tone                 : Bright
jpeg saturation                 : 4
jpeg contrast                   : 5
jpeg sharpness                  : 5
jpeg hue                        : 4
zoom                            : 28.00 mm
focus                           : 0
color space                     : sRGB
image format                    : RAW+
raw format                      : PEF
light meter flags               : 0
ec                              : 0.00
custom ev steps                 : 1/3 EV steps
custom sensitivity steps        : 1 EV steps
exposure mode                   : 6
scene mode                      : NONE
user mode flag                  : 2
ae metering mode                : Multi
af mode                         : AF.S
af point select                 : Select
selected af point               : 16384
focused af point                : 0
drive mode                      : Single
auto bracket mode               : off
auto bracket picture count      : 0
auto bracket picture counter    : 1
auto bracket ev                 : 0.70
shake reduction                 : off
white balance mode              : Auto
white balance adjust            : 0
flash mode                      : Manual
flash exposure compensation     : 0.00
manual mode ev                  : 0.00
lens                            : HD PENTAX-D FA 28-105mm F3.5-5.6 ED DC WR
battery                         : 7.53V 7.28V 0.00V 0.00V
buffer mask                     : 0000000000000000

I really want this to work so that I can streamline someof my processes when I'm shooting at night. Any help would be appreciated. I'd love to help debug this if it's a true issue. Will post a debug output in another message.

Plans to support KP in the future?

Hi, All.
I can't find KP in the supported cameras listed in README.md. Will you support it in the future?
I'm having trouble because there is no tethering software that works on Ubuntu.

Support for K-1?

Hi Folks,

are there any plans to support the new Pentax K-1 already?
Do you neet some testing support?

Regards,

Karsten

K3II can't read output file with AF lens

This is a followup issue to Issue with K3II - Writing to standard output.

This problem is that I thought the output file written problem was fixed back in February.
Turns out it wasn't that simple. At that time, I tested the program with a manual lens attached, and I got the output file.
However, at the time when I opened that issue, I was having an AF lens attached.
Recently I figured out that as long as I have an AF lens attached, I still wouldn't get any output file.

Here are some debug logs when I have AF lens and manual lens attached.
debug with M lens.log
debug with AF lens.log

Issue with K3II - Writing to standard output

The preview won't show up after the camera was connected. And the program froze up after clicking the take picture button. I think the problem is caused by the updated firmware. The firmware version is v1.10.

There is the debug log:

C:\Users\Nats_\Desktop\pktriggercord-0.84.02-win>pktriggercord-cli --debug
Debug messaging is now enabled.
pktriggercord-cli 0.84.02
model (null)
device (null)
[C]     plsr_init()
driveNum:24
        Checking drive:  C
        Checking drive:  D RICOHIMG DSC_K-3_II
        Found camera RICOHIMG DSC_K-3_II
before connect
[C]     pslr_connect()
[C]             ipslr_status()
[C]                     command(fd=c8, 0, 1, 0)
[C]                     get_result(0xc8)
[R]                              => [1C 00 00 00]
[C]                     read_result(0xc8, size=28)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  00 00 00 00
                                     00 00 00 00  03 00 00 00  00 00 00 00]
[C]             ipslr_set_mode(0x1)
[C]                     _ipslr_write_args(cmd_2 = 0x0, {0x1})
[C]                     command(fd=c8, 0, 0, 4)
[C]                     get_status(0xc8)
[R]                              => ERROR: 0x01
[C]             ipslr_status()
[C]                     command(fd=c8, 0, 1, 0)
[C]                     get_result(0xc8)
[R]                              => [1C 00 00 00]
[C]                     read_result(0xc8, size=28)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 01  00 00 00 80
                                     00 00 00 00  00 00 00 00  00 00 00 00]
[C]             ipslr_identify()
[C]                     command(fd=c8, 0, 4, 0)
[C]                     get_result(0xc8)
[R]                              => [08 00 00 00]
[C]                     read_result(0xc8, size=8)
[R]                              => [9C 30 01 00  3A 02 00 00]
        id of the camera: 1309c
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 01  00 00 00 80
                                     00 00 00 00  00 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
0x0000 | 02 00 00 00 00 00 00 00  10 02 00 01 00 00 00 80
0x0010 | 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0x0020 | 0b 00 00 00 01 00 00 00  00 00 00 00 00 00 00 00
0x0030 | 00 01 00 00 01 00 00 00  7d 00 00 00 28 00 00 00
0x0040 | 0a 00 00 00 00 00 00 00  0a 00 00 00 00 00 00 00
0x0050 | 05 00 00 00 0a 00 00 00  00 00 00 00 00 00 00 00
0x0060 | 00 00 00 00 00 00 00 00  00 00 00 00 64 00 00 00
0x0070 | 80 0c 00 00 00 00 00 00  07 00 00 00 07 00 00 00
0x0080 | 00 00 00 00 00 00 00 00  00 00 00 00 01 00 00 00
0x0090 | 01 00 00 00 04 00 00 00  05 00 00 00 05 00 00 00
0x00a0 | 00 00 00 00 00 00 00 00  00 00 00 00 01 00 00 00
0x00b0 | 00 00 00 00 03 00 00 00  00 00 00 00 00 00 00 00
0x00c0 | 03 00 00 00 06 00 00 00  00 40 00 00 00 00 00 00
0x00d0 | 05 00 00 00 00 00 00 00  06 00 00 00 01 00 00 00
0x00e0 | 01 00 00 00 00 00 00 00  00 00 00 00 01 00 00 00
0x00f0 | 01 00 00 00 00 00 00 00  88 13 00 00 04 00 00 00
0x0100 | 00 00 00 00 00 00 00 00  00 00 00 00 02 00 00 00
0x0110 | 01 00 00 00 28 00 00 00  0a 00 00 00 00 00 00 00
0x0120 | 0a 00 00 00 00 00 00 00  0a 00 00 00 01 00 00 00
0x0130 | 40 1f 00 00 80 0c 00 00  03 00 00 00 10 00 00 00
0x0140 | 07 00 00 00 1c 00 00 00  0a 00 00 00 dc 00 00 00
0x0150 | 0a 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0x0160 | 0a 00 00 00 00 00 00 00  00 00 00 00 51 02 00 00
0x0170 | 9d 02 00 00 8a 02 00 00  00 00 00 00 00 00 00 00
0x0180 | 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
0x0190 | a8 00 00 00 00 00 00 00  00 00 00 00 f2 00 00 00
0x01a0 | 40 06 00 00 64 00 00 00  f6 ff ff ff dd ff ff ff
0x01b0 | 00 00 00 00 02 00 00 00  0f 00 00 00 3f 00 00 00
0x01c0 | 00 00 00 00 00 00 00 00
        init bufmask=0x0
[C]             ipslr_cmd_00_09(0x2)
[C]                     _ipslr_write_args(cmd_2 = 0x0, {0x2})
[C]                     command(fd=c8, 0, 9, 4)
[C]                     get_status(0xc8)
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  00 00 00 80
                                     00 00 00 00  03 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
                buf[008] last 10h  16 new 00h   0
                buf[00B] last 01h   1 new 02h   2
                buf[014] last 00h   0 new 03h   3
---------------------------
[C]             ipslr_cmd_10_0a(0x1)
[C]                     _ipslr_write_args(cmd_2 = 0x0, {0x1})
[C]                     command(fd=c8, 10, a, 4)
[C]                     get_status(0xc8)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  00 00 00 80
                                     00 00 00 00  03 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
[C]     pslr_camera_name()
pktriggercord-cli: K-3II Connected...
[C]     pslr_get_status()
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  00 00 00 80
                                     00 00 00 00  03 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
[C]     pslr_get_status()
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  01 00 00 80
                                     00 00 00 00  03 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
                buf[00C] last 00h   0 new 01h   1
---------------------------
[C]     pslr_get_status()
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  01 00 00 80
                                     00 00 00 00  03 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
cont: 0
not bulb
[C]     pslr_shutter()
[C]             ipslr_press_shutter(fullpress = true)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  00 02 00 02  01 00 00 80
                                     00 00 00 00  03 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
                before: mask=0x0
[C]                     _ipslr_write_args(cmd_2 = 0x0, {0x2})
[C]                     command(fd=c8, 10, 5, 4)
[C]                     get_status(0xc8)
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
[R]                              => ERROR: 0x01
                shutter result code: 0x0
[C]     pslr_get_status()
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
                buf[008] last 00h   0 new 10h  16
                buf[014] last 03h   3 new 02h   2
                buf[170] last 9Dh 157 new A9h 169
                buf[174] last 8Ah 138 new 91h 145
---------------------------
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
get buffer 0 type 2 res 0
[C]     pslr_buffer_open(#0, type=2, res=0)
[C]             ipslr_status_full()
[C]                     command(fd=c8, 0, 8, 0)
[C]                     get_result(0xc8)
[R]                              => [C4 01 00 00]
        read 452 bytes
        expected_bufsize: 452
[C]                     read_result(0xc8, size=452)
[R]                              => [02 00 00 00  00 00 00 00  10 02 00 02  01 00 00 80
                                     00 00 00 00  02 00 00 00  00 00 00 00  00 00 00 00 ... (420 bytes more)]
        p->status.bufmask = 0
        No buffer data (0)
^C

Pentax K3-II Bulb mode issue

Hi !

First : Thanks a lot for your work!

I use Pktriggercord-cli with a raspbian distrib installes on a raspberry pi 3

I observed a bug regarding the bulb mode.
When i launch the following command :

sudo pktriggercord-cli -t 60 -F 3 -d 20 -o /home/pi/Desktop

Pktriggercord-cli displays :

Taking picture 1/3
pslr.c:877:get_status(p->fd) failed: 129
pslr.c:877:get_status(p->fd) failed: 129

I need to press the shutter button to release the shutter.

When the debug mode is activated , i have the following messages :

sudo pktriggercord-cli --debug -t 60 -F 3 -d 20 -o /home/pi/Desktop
Debug messaging is now enabled.
pktriggercord-cli 0.84.04
model (null)
device (null)
[C] plsr_init()
driveNum:2
Checking drive: sg0 RICOHIMG
DSC_K-3_II

    Found camera RICOHIMG

DSC_K-3_II

before connect
[C] pslr_connect()
[C] ipslr_status()
[C] command(fd=3, 0, 1, 0)
[S] >>> [F0 24 00 01 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [1C 00 00 00 00 00 01 00]
[R] => [1C 00 00 00]
[C] read_result(0x3, size=28)
[S] >>> [F0 49 00 00 1C 00 00 00]
[S] <<< [02 00 00 00 00 00 00 00 10 02 00 02 01 00 00 80
00 00 00 00 02 00 00 00 00 00 00 00]
[R] => [02 00 00 00 00 00 00 00 10 02 00 02 01 00 00 80
00 00 00 00 02 00 00 00 00 00 00 00]
[C] ipslr_set_mode(0x1)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x1})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [00 00 00 01]
[C] command(fd=3, 0, 0, 4)
[S] >>> [F0 24 00 00 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
[C] ipslr_status()
[C] command(fd=3, 0, 1, 0)
[S] >>> [F0 24 00 01 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [1C 00 00 00 00 00 01 00]
[R] => [1C 00 00 00]
[C] read_result(0x3, size=28)
[S] >>> [F0 49 00 00 1C 00 00 00]
[S] <<< [02 00 00 00 00 00 00 00 10 02 00 01 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00]
[R] => [02 00 00 00 00 00 00 00 10 02 00 01 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00]
[C] ipslr_identify()
[C] command(fd=3, 0, 4, 0)
[S] >>> [F0 24 00 04 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [08 00 00 00 00 00 01 00]
[R] => [08 00 00 00]
[C] read_result(0x3, size=8)
[S] >>> [F0 49 00 00 08 00 00 00]
[S] <<< [9C 30 01 00 3A 02 00 00]
[R] => [9C 30 01 00 3A 02 00 00]
id of the camera: 1309c
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 10 02 00 01 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 10 02 00 01 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
0x0000 | 02 00 00 00 00 00 00 00 10 02 00 01 01 00 00 80
0x0010 | 00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00
0x0020 | 0b 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 | 00 01 00 00 1e 00 00 00 01 00 00 00 28 00 00 00
0x0040 | 0a 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00
0x0050 | 03 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00
0x0060 | 00 00 00 00 00 00 00 00 20 03 00 00 90 01 00 00
0x0070 | 20 03 00 00 0a 00 00 00 07 00 00 00 07 00 00 00
0x0080 | 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00
0x0090 | 00 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00
0x00a0 | 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00
0x00b0 | 00 00 00 00 09 00 00 00 00 00 00 00 00 00 00 00
0x00c0 | 02 00 00 00 01 00 00 00 00 40 00 00 00 00 00 00
0x00d0 | 00 00 00 00 00 00 00 00 03 00 00 00 01 00 00 00
0x00e0 | 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00
0x00f0 | 01 00 00 00 00 00 00 00 88 13 00 00 04 00 00 00
0x0100 | 00 00 00 00 01 00 00 00 00 00 00 00 1e 00 00 00
0x0110 | 01 00 00 00 28 00 00 00 0a 00 00 00 00 00 00 00
0x0120 | 0a 00 00 00 00 00 00 00 0a 00 00 00 01 00 00 00
0x0130 | 40 1f 00 00 20 03 00 00 00 00 00 00 00 00 00 00
0x0140 | 00 00 00 00 28 00 00 00 0a 00 00 00 22 01 00 00
0x0150 | 0a 00 00 00 00 00 00 00 00 00 00 00 ce ff ff ff
0x0160 | 0a 00 00 00 00 00 00 00 00 00 00 00 51 02 00 00
0x0170 | ab 02 00 00 a5 02 00 00 54 01 00 00 01 00 00 00
0x0180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0190 | a8 00 00 00 00 00 00 00 00 00 00 00 d7 00 00 00
0x01a0 | 60 09 00 00 64 00 00 00 f6 ff ff ff e7 ff ff ff
0x01b0 | 00 00 00 00 00 00 00 00 0f 00 00 00 3f 00 00 00
0x01c0 | 00 00 00 00 00 00 00 00
init bufmask=0x7
[C] ipslr_cmd_00_09(0x2)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x2})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [02 00 00 00]
[C] command(fd=3, 0, 9, 4)
[S] >>> [F0 24 00 09 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 10 02 00 02 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 10 02 00 02 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
buf[00B] last 01h 1 new 02h 2

[C] ipslr_cmd_10_0a(0x1)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x1})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [01 00 00 00]
[C] command(fd=3, 10, a, 4)
[S] >>> [F0 24 10 0A 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
buf[008] last 10h 16 new 00h 0
buf[014] last 00h 0 new 03h 3

[C] pslr_camera_name()
pktriggercord-cli: K-3II Connected...
[C] pslr_get_status()
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
[C] pslr_get_status()
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
shutter_speed.nom=60
shutter_speed.denom=1
[C] pslr_set_shutter(3c 1)
[C] ipslr_handle_command_x18(0x16, 2)
[C] ipslr_cmd_00_09(0x1)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x1})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [01 00 00 00]
[C] command(fd=3, 0, 9, 4)
[S] >>> [F0 24 00 09 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
[C] _ipslr_write_args(cmd_2 = 0x0, {0x3C, 0x1})
[S] >>> [F0 4F 00 00 08 00 00 00]
[S] >>> [3C 00 00 00 01 00 00 00]
[C] command(fd=3, 18, 16, 8)
[S] >>> [F0 24 18 16 08 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
[C] ipslr_cmd_00_09(0x2)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x2})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [02 00 00 00]
[C] command(fd=3, 0, 9, 4)
[S] >>> [F0 24 00 09 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
[C] ipslr_read_dspinfo()
[C] command(fd=3, 1, 1, 0)
[S] >>> [F0 24 01 01 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [04 00 00 00 00 00 01 00]
[R] => [04 00 00 00]
[C] ipslr_read_dspinfo() bytes: 4
[C] read_result(0x3, size=4)
[S] >>> [F0 49 00 00 04 00 00 00]
[S] <<< [06 16 0A 01]
[R] => [06 16 0A 01]
Firmware version: 1.10.22.06
[C] pslr_get_status()
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 10 02 00 02 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 10 02 00 02 01 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
buf[008] last 00h 0 new 10h 16
buf[014] last 03h 3 new 00h 0

cont: 0
Taking picture 1/3
bulb
[C] pslr_bulb(1)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x1})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [01 00 00 00]
[C] command(fd=3, 10, d, 4)
[S] >>> [F0 24 10 0D 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 81]
[R] => ERROR: 0x81
ERROR: 0x81
pslr.c:877:get_status(p->fd) failed: 129
[C] pslr_shutter()
[C] ipslr_press_shutter(fullpress = true)
[C] ipslr_status_full()
[C] command(fd=3, 0, 8, 0)
[S] >>> [F0 24 00 08 00 00 00 00]
[C] get_result(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [C4 01 00 00 00 00 01 00]
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0x3, size=452)
[S] >>> [F0 49 00 00 C4 01 00 00]
[S] <<< [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00]
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 00 80
00 00 00 00 03 00 00 00 00 00 00 00 07 00 00 00 ... (420 bytes more)]
buf[008] last 10h 16 new 00h 0
buf[014] last 00h 0 new 03h 3

            before: mask=0x7

[C] _ipslr_write_args(cmd_2 = 0x0, {0x2})
[S] >>> [F0 4F 00 00 04 00 00 00]
[S] >>> [02 00 00 00]
[C] command(fd=3, 10, 5, 4)
[S] >>> [F0 24 10 05 04 00 00 00]
[C] get_status(0x3)
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 01]
[R] => ERROR: 0x01
[S] >>> [F0 26 00 00 00 00 00 00]
[S] <<< [00 00 00 00 00 00 00 00]
[R] => ERROR: 0x00
shutter result code: 0x0

Thanks for your help!

Changing settings manually while camera is connected?

Hey, apologies if this isn't the right place for this question. I'm currently running Pktriggercord on a Raspberry Pi, which is connected to my K-1 and saves each buffer to disk whenever I fire the shutter. I've managed to write a script that uses camera_connect to save each buffer to disk whenever I take a photo, and this works fairly well (as long as I reinitialize the connection after each shot), however, I now need to change my settings manually while my camera is connected. IE; I should be able to change ISO, F-stop, Shutter speed, etc. using the control dial on my camera while my camera is plugged in and connected. Does anybody have an idea if this is currently possible? If so, could you provide some guidance on how to do this? I'm more than happy to dive further into pslr.c if there is a function, or set of functions, that can do this.

RICOH Camera USB SDK for C++

I like to know your opinion as programmers regarding the usefulness of these SDKs released by Pentax and their possibility of being implemented in programs like pktriggercord.
https://api.ricoh/docs/camera-usb-sdk-cpp/
I ask why it seemed useful to me, but it doesn't seem to me that it has been used by anyone (pktriggercor, libgphoto2) and then I was curious to understand what escapes me and why it has not been used. Is it because the SDK is not open source? Are not the other information useful anyway?

Confused: ist*DL Limited support or not supported?

Hi,

I find very different dokumentation artifacts about pktiggercord and the 'good olde' Pentax ist*DL DSLR ranging from not supported over not tested up to (in the main github page) parti "limited support"....

What can I expect? Or asked differently, I do only own exactly this model - when I try pktriggercord and nothing happens, then "not support" or "I mixed something up" is possible? :-)

Thanks a lot for clearyfying what can I expect from the ist*DL in combination with pktriggercord.

Cheers.

Understanding dependencies between various Open Source projects

Hello.

I am currently trying to use 'Astroberry Server' to control my telescope and camera equipment on my Raspberry Pi.
As far as I can tell, 'Astroberry Server' uses 'Ekos' to access 'IndiLib' to access camera equipment.
Indilib uses a library called Gphoto to access specific cameras.
As far as I can tell, Gphoto claims that for Pentax cameras, to add support for new cameras, that camera must be added to the PkTriggerCord libraries. I am not sure how their library references this one.

In addition, separately, I am also using a Benro Polaris tripod mount. That tripod mount is able to control camera equipment.
I have asked the developers to refer to this project to be able to control Pentax cameras. They didn't respond on that.
However, I also asked the developers to refer to Gphoto, and they have confirmed that they are referring to that.
Given that Gphoto claims to refer to PKTriggerCord, I assume that all roads are leading back here :)

So my questions are:
If the K3iii and K1ii should now function in here, is there any reason that you can think of that they may not be fully supported with LiveView in those two projects?

As far as I can tell, the Astroberry project allows for remote shutter control of the K1ii, but not the K3iii.
The Benro Polaris project (Using GPhoto, using PKtriggercord) has no support for either.

Is it possible that they both just took old copies, and they need updating?
Is it possible that the changes made here, need to be flushed through to GPhoto and IndiLib in some way?

Please forgive my newbie question , as I really don't quite understand all the project dependencies :)

Support for K-1 II?

Hi Folks,

I have just tested with my Pentax K-1 II.
Any time I try to connect it says: "Unknown Pentax camera. 1 Unknown Pentax camera found."

It does work with my K-3 II, though. Hence I assume it is not a general issue with installation or similar.

Are there any plans to add K-1 II to the supported models?

Kind Regards,

Karsten

Not working with K10D on Linux

I have compiled the package manually on ubuntu (make, sudo make install).
When I connect my K10D via USB, I see "PC" on the camera.

When I start pktriggercord from CLI, I get the interface, but it doesn't connect to the camera.
I get the following error message on stderr:
pslr.c:435:ipslr_status_full(p, &p->status) failed: 4

Please let me know if you need anything more to debug this issue.

Where exactly are we with the K-50?

I do have a K-r, and I can use that, but I'm trying to figure out just how much functionality there is for the K-50 there is ... I know it says "bugs". But I don't know to what extent or what kinds of things we're talking about.

I connected with 0.84 to my K-50 using Windows 10 last night.. I put it in "M" Manual mode. I could get it to take some pictures. One thing I noticed it did was set the shutter speed ... sometimes ... to 9999" (that's what the camera UI would show). The shutter wouldn't stay open 9999 seconds, but it was doing long exposures. I'd set the PKTrigger UI shutter speed to something else, but it wouldn't change on the camera.

The only way to get it off of this was to re-start the program and adjust from there. And at some point it did tend to want to go back to that if I dinked with shutter speed.

And another thing it did, twice, was after taking several shots the shutter just started rapid-firing and the only way to stop it was to remove the battery.

Are these things you've seen? Or maybe it's a cable problem. I'm using the one that came with it. I'm mainly trying to get a feel for what I might expect using it with the K-50 and if these issues are "normal" with the state of the code right now, or if there's something I might tweak.

It's been years since I've programmed, and I must admit I was fairly crappy at OOP, but I get the concept.

How do you guys go about reverse-engineering what a camera will accept for commands? I'd help, if I knew how.

K30, Software shuts down when switched to BULB mode.

pk

When I switch my K30 to BULB mode the attached message appears and the SW shuts down, If i try to start up in bulb mode, I get the same issue. Its like it cant determine what mode its in. If I start up in U1 mode I can set it to what ever mode I like except bulb, if I set it to bulb the same issue occurs. Other than that functionality is perfect, but I really want to be able to use bulb mode :) Would really appreciate you taking a look.

Thanks!!
Lenny

Issue with my K-3II

It appears to me that I can't set the ISO on my K-3II.
The camera was set in bulb mode. When I used pktriggercord-cli -i 100 -t 1 -o test-1 --file_format=dng --debug, the output file was on ISO1600.
debug-1.log

And when I used pktriggercord-cli -i 800 -t 1 -o test-2 --file_format=dng --debug, the output file was still on ISO 1600.
debug-2.log

One thing I noticed is that when I set the ISO, the top screen on the camera actually displays the ISO I set at, but the back screen still shows ISO1600.

decimal notation of shutter speeds faster than 1/10" don't work

After I had some weird results a few days ago while shooting the stars in the night, I did some tests using pktriggercord-cli.
I think I have found a problem, unless I'm misunderstanding something (in which please let me know).
It looks to me the the shutter speed do not work properly when using decimal notation if the shutter speed is faster than 0.1 sec

On my Pentax K-r (USER Mode, not using Bulb mode) using pktriggercord 0.85.01
$ pktriggercord-cli -t 0.1 -o /tmp/01 # works just fine
$ pktriggercord-cli -t 0.04 -o /tmp/004 # gives me another frame of 0.5 sec exposure time
$ pktriggercord-cli -t 1/25 -o /tmp/1-25 # works just fine

Actually when using values lower than 0.1 it looks like the pktriggercord don't get it and just reuses the current shutter speed from previous shot.

This is quite problematic because I suspects my astrophotgraphy program (ekos) to pass shutter speeds to libpktriggercord using decimals and to rely on it to choose closest shutter speed

Issues with my K-3

pktriggercord seems to be completely incompatible to my K-3 (firmware version is 1.21). pktriggercord recognizes the camera correctly and I can see the status information, but I'm not able to set any parameters (like exposure mode, shutter speed, iso or aperture value) and the camera shows impossible values for shutter speed and aperture mode if set to Manual exposure by the mode wheel. The debug output of pktriggercord (attached) clearly shows something going wrong, but I have no clue what goes wrong or how to fix it. Help is appreciated.

debug.txt

Trouble Installing

whenever I try to use Make - Make clean - make install, I get this error.
~/pktriggercord-0.85.00$ sudo make && make
[sudo] password for *******
cc -O3 -g -Wall -Isrc/external/js0n -fPIC -c src/external/js0n/js0n.c -o src/external/js0n/js0n.o
src/external/js0n/js0n.c:4:10: fatal error: string.h: No such file or directory
4 | #include <string.h> // one strncmp() is used to do key comparison, and a strlen(key) if no len passed in
| ^~~~~~~~~~
compilation terminated.
make: *** [Makefile:70: src/external/js0n/js0n.o] Error 1

Note that I am pretty new to linux, on mint 20 cinnamon.

Pentax API

I was trying to port pk-remote to OSX and now I'm looking at pktethercord and both use scsi level API. Is it possible to get the USB level API? OSX works at the USB level. Thanks

integrating with Gphoto2?

@asalamon74 I have been admiring your work for a long time as I try to set up a remote observatory using my pentax k-50 as the main camera for an Indi/ekos setup. Unfortunately, like many Linux tethering apps, the Indilib drivers use libGphoto2, which in turn uses the outdated Pktether to talk to early pentax cameras and doesn't support the later ones. I approached Gphoto developer @msmeissn but he has his hands full over there with other projects. I've been comparing code between the two and I think reintegrating the much improved pktriggercord to Gphoto would help get the k series tethered in many apps at once. Maybe you guys can get together sometime and being familiar with the code, you might bang something out fairly easily.

https://github.com/gphoto/libgphoto2

I'll be glad to help test with my k-50 as time allows. I currently have both programs compiling from current git on my xubuntu (15.10) box as well as my recently updated notebook running xubuntu 16.10

Meanwhile I think I'll poke at that k-50 bulbing problem a bit, it seems more up my street as a repair tech.

Support for K3iii

Has anyone tested yet with a K3iii yet, and if so, is everything working?

Support for 645Z ?

Hi everyone !

Is there any testing versions that can work with the Pentax 645Z ?

Here is the output that I get when running pktriggercord cli in debug mode :

image

If that's no the case is there any documentation in order to add my own camera model ?

Best regards,
Alvin

ioctl: invalid argument on trying to connect to a K-50

Hi,

First of all, I thought tethering wasn't supported for my model, until I found your tool. Thanks so much for this! Secondly..: sadly it isn't working. I'd be happy to help fix this bug. The full debug log is:

thomas@tosti-ijzer ~ $ sudo pktriggercord-cli --debug
Debug messaging is now enabled.
pktriggercord-cli 0.84.04 
model (null)
device (null)
[C]	plsr_init()
driveNum:4
	Checking drive:  sg2 HL-DT-ST
 DVD+-RW GS30N   

	Checking drive:  sg0 ATA     
 KINGSTON SV300S3

	Checking drive:  sg3 PENTAX  
 DSC_K-50        

	Found camera PENTAX  
 DSC_K-50        

before connect
[C]	pslr_connect()
[C]		ipslr_status()
[C]			command(fd=3, 0, 1, 0)
[S]					 >>> [F0 24 00 01  00 00 00 00]
ioctl: Invalid argument
pslr.c:1558:scsi_write(fd, cmd, sizeof (cmd), 0, 0) failed: 1
pslr.c:1204:command(p->fd, 0, 1, 0) failed: 1
pslr.c:429:ipslr_status(p, statusbuf) failed: 1
1 Cannot connect to Pentax camera. Please start the program as root.

The firmware version is 1.10 and I'm running Debian Unstable.

Issue with K20d

I'm trying to use this with my K20d (firmware 1.04) but it seems stuck somewhere, I'm attaching the output of pktriggercord-cli --debug --status_hex here: k20d.txt.

I've tried to understand a bit what was going on, and... well according to the protocol the answer my camera gives ([00 00 00 00 00 00 00 84]) means it's not ready, and a status code that is not supposed to happen.

And I have no idea what I might be doing wrong.

K-S1

Hello, I have a K-S1 and came across this project and would like to help seeing if we can get it going. I have run the initial commands from the testing page. Here is the status info

C:\Users\Bryce\Downloads\pktriggercord-0.85.00-win\pktriggercord-cli.exe --status_hex --debug
C:\Users\Bryce\Downloads\pktriggercord-0.85.00-win\pktriggercord-cli.exe 0.85.00
model (null)
device (null)
[C] plsr_init()
driveNum:24
Checking drive: C
Checking drive: D RICOHIMG DSC_K-S1
Found camera RICOHIMG DSC_K-S1
before connect
[C] pslr_connect()
[C] ipslr_status()
[C] command(fd=dc, 0, 1, 0)
[C] get_result(0xdc)
[R] => [1C 00 00 00]
[C] read_result(0xdc, size=28)
[R] => [01 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00]
[C] ipslr_set_mode(0x1)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x1})
[C] command(fd=dc, 0, 0, 4)
[C] get_status(0xdc)
[R] => ERROR: 0x01
[R] => ERROR: 0x00
[C] ipslr_status()
[C] command(fd=dc, 0, 1, 0)
[C] get_result(0xdc)
[R] => [1C 00 00 00]
[C] read_result(0xdc, size=28)
[R] => [02 00 00 00 00 00 00 00 10 02 00 01 00 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00]
[C] ipslr_identify()
[C] command(fd=dc, 0, 4, 0)
[C] get_result(0xdc)
[R] => [08 00 00 00]
[C] read_result(0xdc, size=8)
[R] => [1A 30 01 00 2E 02 00 00]
id of the camera: 1301a
[C] ipslr_status_full()
[C] command(fd=dc, 0, 8, 0)
[C] get_result(0xdc)
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0xdc, size=452)
[R] => [02 00 00 00 00 00 00 00 10 02 00 01 00 00 00 80
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... (420 bytes more)]
0x0000 | 02 00 00 00 00 00 00 00 10 02 00 01 00 00 00 80
0x0010 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 | 00 01 00 00 01 00 00 00 64 00 00 00 26 00 00 00
0x0040 | 0a 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00
0x0050 | 03 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00
0x0060 | 00 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00
0x0070 | 80 0c 00 00 00 00 00 00 07 00 00 00 07 00 00 00
0x0080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0090 | 00 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00
0x00a0 | 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00
0x00b0 | 00 00 00 00 01 00 00 00 05 00 00 00 00 00 00 00
0x00c0 | 03 00 00 00 06 00 00 00 00 40 00 00 00 00 00 00
0x00d0 | 00 00 00 00 00 00 00 00 07 00 00 00 01 00 00 00
0x00e0 | 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00
0x00f0 | 01 00 00 00 00 00 00 00 88 13 00 00 04 00 00 00
0x0100 | 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00
0x0110 | 3c 00 00 00 26 00 00 00 0a 00 00 00 00 00 00 00
0x0120 | 0a 00 00 00 00 00 00 00 0a 00 00 00 01 00 00 00
0x0130 | 70 17 00 00 90 01 00 00 05 00 00 00 80 00 00 00
0x0140 | 00 00 00 00 26 00 00 00 0a 00 00 00 dc 00 00 00
0x0150 | 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0160 | 0a 00 00 00 57 50 41 05 57 50 41 05 50 02 00 00
0x0170 | 51 03 00 00 23 03 00 00 00 00 00 00 00 00 00 00
0x0180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0190 | 84 00 00 00 00 00 00 00 00 00 00 00 29 00 00 00
0x01a0 | f0 0a 00 00 64 00 00 00 00 00 00 00 ec ff ff ff
0x01b0 | 00 00 00 00 00 00 00 00 0f 00 00 00 3f 00 00 00
0x01c0 | 00 00 00 00 00 00 00 00
init bufmask=0x0
[C] ipslr_cmd_00_09(0x2)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x2})
[C] command(fd=dc, 0, 9, 4)
[C] get_status(0xdc)
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x00
[C] ipslr_status_full()
[C] command(fd=dc, 0, 8, 0)
[C] get_result(0xdc)
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0xdc, size=452)
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 00 00 80 80
00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 ... (420 bytes more)]
buf[008] last 10h 16 new 00h 0
buf[00B] last 01h 1 new 02h 2
buf[00E] last 00h 0 new 80h 128
buf[014] last 00h 0 new 03h 3

[C] ipslr_cmd_10_0a(0x1)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x1})
[C] command(fd=dc, 10, a, 4)
[C] get_status(0xdc)
[R] => ERROR: 0x00
[C] ipslr_status_full()
[C] command(fd=dc, 0, 8, 0)
[C] get_result(0xdc)
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0xdc, size=452)
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 80 80
00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 ... (420 bytes more)]
buf[00C] last 00h 0 new 01h 1

[C] pslr_camera_name()
C:\Users\Bryce\Downloads\pktriggercord-0.85.00-win\pktriggercord-cli.exe: K-S1 Connected...
[C] pslr_get_status()
[C] ipslr_status_full()
[C] command(fd=dc, 0, 8, 0)
[C] get_result(0xdc)
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0xdc, size=452)
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 80 80
00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 ... (420 bytes more)]
[C] pslr_get_status()
[C] ipslr_status_full()
[C] command(fd=dc, 0, 8, 0)
[C] get_result(0xdc)
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0xdc, size=452)
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 80 80
00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 ... (420 bytes more)]
[C] ipslr_read_dspinfo()
[C] command(fd=dc, 1, 1, 0)
[C] get_result(0xdc)
[R] => [04 00 00 00]
[C] ipslr_read_dspinfo() bytes: 4
[C] read_result(0xdc, size=4)
[R] => [05 14 0A 01]
Firmware version: 1.10.20.05
json text:
{
"0x13222": {
"fields": [
{ "name" : "bulb_mode_press_press", "type": "boolean", "address": "0x178" },
{ "name" : "one_push_bracketing", "type": "boolean", "address": "0x17e"},
{ "name" : "bulb_timer", "type": "boolean", "address": "0x133"},
{ "name" : "bulb_timer_sec", "type": "uint16", "address": "0x134"},
{ "name" : "using_aperture_ring", "type": "boolean", "address": "0x18c"},
{ "name" : "shake_reduction", "type": "boolean!", "address": "0x07d"},
{ "name" : "astrotracer", "type": "boolean", "address": "0x087"},
{ "name" : "horizon_correction", "type": "boolean!", "address": "0x080"}
]
},

"0x12dfe": {
    "fields": [
            { "name" : "bulb_mode_press_press", "type": "boolean", "value": "false" },
            { "name" : "one_push_bracketing", "type": "boolean", "value": "false"},
            { "name" : "bulb_timer", "type": "boolean", "value": "false"},
            { "name" : "bulb_timer_sec", "type": "uint16", "value": 0 },
            { "name" : "using_aperture_ring", "type": "boolean", "address": "0x142"},
            { "name" : "shake_reduction", "type": "boolean!", "address": "0x065"},
            { "name" : "astrotracer", "type": "boolean", "value": "false"},
            { "name" : "astrotracer_timer_sec", "type": "uint16", "value": "0"},
            { "name" : "horizon_correction", "type": "boolean", "value": "false"}
        ]
},

"0x12fb6": {
    "fields": [
            { "name" : "bulb_mode_press_press", "type": "boolean", "address": "0x0f2" }
        ]
},

"0x12ef8": {
    "fields": [
            { "name" : "bulb_mode_press_press", "type": "boolean", "address": "0x0f2" }
        ]
},

"0x13092": {
        "fields": [
            { "name" : "bulb_timer", "type": "boolean", "address": "0x131"},
            { "name" : "bulb_timer_sec", "type": "uint16", "address": "0x132"}
        ]
},

"0x1309c": {
        "fields": [
            { "name" : "astrotracer", "type": "boolean", "address": "0x1ac"},
            { "name" : "astrotracer_timer_sec", "type": "uint16", "address": "0x1ad"}
        ]
},

"0x13240": {
        "fields": [
            { "name" : "bulb_timer", "type": "boolean", "address": "0x131"},
            { "name" : "bulb_timer_sec", "type": "uint16", "address": "0x132"}
        ]
}

}

JSON: Cannot find camera model
[C] pslr_get_status()
[C] ipslr_status_full()
[C] command(fd=dc, 0, 8, 0)
[C] get_result(0xdc)
[R] => [C4 01 00 00]
read 452 bytes
expected_bufsize: 452
[C] read_result(0xdc, size=452)
[R] => [02 00 00 00 00 00 00 00 00 02 00 02 01 00 80 80
00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 ... (420 bytes more)]
[C] pslr_get_status_buffer()
0x0000 | 02 00 00 00 00 00 00 00 00 02 00 02 01 00 80 80
0x0010 | 00 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00
0x0020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0030 | 00 01 00 00 01 00 00 00 64 00 00 00 26 00 00 00
0x0040 | 0a 00 00 00 00 00 00 00 0a 00 00 00 00 00 00 00
0x0050 | 03 00 00 00 0a 00 00 00 00 00 00 00 00 00 00 00
0x0060 | 00 00 00 00 00 00 00 00 00 00 00 00 64 00 00 00
0x0070 | 80 0c 00 00 00 00 00 00 07 00 00 00 07 00 00 00
0x0080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0090 | 00 00 00 00 04 00 00 00 04 00 00 00 04 00 00 00
0x00a0 | 00 00 00 00 01 00 00 00 00 00 00 00 01 00 00 00
0x00b0 | 00 00 00 00 01 00 00 00 05 00 00 00 00 00 00 00
0x00c0 | 03 00 00 00 06 00 00 00 00 40 00 00 00 00 00 00
0x00d0 | 00 00 00 00 00 00 00 00 07 00 00 00 01 00 00 00
0x00e0 | 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00
0x00f0 | 01 00 00 00 00 00 00 00 88 13 00 00 04 00 00 00
0x0100 | 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00
0x0110 | 3c 00 00 00 26 00 00 00 0a 00 00 00 00 00 00 00
0x0120 | 0a 00 00 00 00 00 00 00 0a 00 00 00 01 00 00 00
0x0130 | 70 17 00 00 90 01 00 00 05 00 00 00 80 00 00 00
0x0140 | 00 00 00 00 26 00 00 00 0a 00 00 00 dc 00 00 00
0x0150 | 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0160 | 0a 00 00 00 57 50 41 05 57 50 41 05 50 02 00 00
0x0170 | 51 03 00 00 23 03 00 00 00 00 00 00 00 00 00 00
0x0180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0190 | 84 00 00 00 00 00 00 00 00 00 00 00 29 00 00 00
0x01a0 | f0 0a 00 00 64 00 00 00 00 00 00 00 ec ff ff ff
0x01b0 | 00 00 00 00 00 00 00 00 0f 00 00 00 3f 00 00 00
0x01c0 | 00 00 00 00

current iso : 400
current shutter speed : 1/60
camera max shutter speed : 1/6000
current aperture : 3.8
lens max aperture : 22.0
lens min aperture : 3.8
set shutter speed : 1/100
set aperture : 3.8
fixed iso : 0
auto iso : 100-3200
jpeg quality : 3
jpeg resolution : 20M
jpeg image tone : Natural
jpeg saturation : 4
jpeg contrast : 4
jpeg sharpness : 4
jpeg hue : 4
zoom : 28.00 mm
focus : 0
color space : sRGB
image format : JPEG
raw format : PEF
light meter flags : 128
ec : 0.00
custom ev steps : 1/3 EV steps
custom sensitivity steps : 1 EV steps
exposure mode : 0
scene mode : PORTRAIT
user mode flag : 0
ae metering mode : Multi
af mode : AF.A
af point select : Unknown value: 6
selected af point : invalid
focused af point : invalid
drive mode : Single
auto bracket mode : off
auto bracket picture count : 0
auto bracket picture counter : 0
auto bracket ev : 0.30
shake reduction : on
white balance mode : Auto
white balance adjust : 0
flash mode : Manual
flash exposure compensation : 0.00
manual mode ev : 0.00
lens : Tamron AF 28-200mm Super Zoom F3.8-5.6 Aspherical XR [IF] Macro (A03)
battery : 8.49V 8.03V 0.00V 0.00V
buffer mask : 0000000000000001
[C] pslr_disconnect()
[C] ipslr_cmd_10_0a(0x0)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x0})
[C] command(fd=dc, 10, a, 4)
[C] get_status(0xdc)
[R] => ERROR: 0x01
[R] => ERROR: 0x00
[C] ipslr_set_mode(0x0)
[C] _ipslr_write_args(cmd_2 = 0x0, {0x0})
[C] command(fd=dc, 0, 0, 4)
[C] get_status(0xdc)
[R] => ERROR: 0x01
[R] => ERROR: 0x01
[R] => ERROR: 0x00
[C] ipslr_status()
[C] command(fd=dc, 0, 1, 0)
[C] get_result(0xdc)
[R] => [1C 00 00 00]
[C] read_result(0xdc, size=28)
[R] => [01 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00]
[C] pslr_shutdown()

Use camera like webcam

Is it possible with pktriggercord to redirect a live view to v4l to use the camera as a webcam?

Doesn't work with K-30

I have a K30 camera with firmware updated to 1.06.
pktriggercord doesn't work wiht this camera. The program cannot set properly a shutter speed and ISO.
A value of the shutter speed is 9999" in the camera and 0 in status info regardless of a value in settings window.
K30_status.txt

Adding Pentax K-3 Support

I'm creating this issue, so we can centralize the related discussions here.

While K-3 inherits a lot from K-5 series, the internal has some differences. K-3 has a new image processor, PRIME III, which might be the reason why there is a byte order changes in the communication between computer and camera.

I forked the master branch and created a 'k3' branch, targeting on K-3 porting, at here: https://github.com/twang2218/pktriggercord/tree/k3

Porting are not finished yet. Here are some findings.

Byte Order

This is the example of communication different between K-5 and K-3:

 [C]            read_result(0x3, size=28)
 [S]                     >>> [F0 49 00 00  1C 00 00 00]
-[S]                     <<< [00 00 00 01  00 00 00 00  01 00 01 00  03 E0 00 00 
+[S]                     <<< [01 00 00 00  00 00 00 00  00 01 00 01  00 00 00 00 
                          00 00 00 00  00 00 00 00  00 00 00 00]

[C] is function call, [R] is what returned from the call, and [S] are the SCSI command communications.

As you can see, the cmd of scsi_read() and scsi_write() is still Little-Endian, however, the payload, buf, are in Big-Endian on K-3.

That is the reason why using ipslr_identify() read the camera id, it will get the reverse order of the ID of K-3.

 [C]            read_result(0x3, size=8)
 [S]                     >>> [F0 49 00 00  08 00 00 00]
-[S]                     <<< [00 01 2E 76  00 00 01 F9]
-[R]                 => [00 01 2E 76  00 00 01 F9]
-   id of the camera: 12e76
+[S]                     <<< [C0 2F 01 00  F6 01 00 00]
+[R]                 => [C0 2F 01 00  F6 01 00 00]
+   id of the camera: 12fc0

However, this is only true for read_status() and _ipslr_write_args(), not for get_result(), which still be the same byte-order of cmd, Little-Endian.

 [C]            get_result(0x3)
 [S]                     >>> [F0 26 00 00  00 00 00 00]
-[S]                     <<< [BC 01 00 00  00 00 01 00]
-[R]                 => [BC 01 00 00]
-   read 444 bytes
-   expected_bufsize: 444
+[S]                     <<< [C4 01 00 00  00 00 01 00]
+[R]                 => [C4 01 00 00]
+   read 452 bytes
+   expected_bufsize: 452

Lomo Effect

For some reason, when I use pktriggercord-cli, I have to turn off and on of the camera between shoots, otherwise, I will retrieve the same photo, but with more lomo effect on it.

http://imgur.com/19rRiQl

I tried the GUI interface pktriggercord, it looks fine. Thomas Lehmann said he didn't have this issue. I don't know, maybe it's just my camera, or there are some differences between CLI and GUI interface internally.

Some of X10 Subcommands are not working

Thanks to Thomas Lehmann, he found X10_BULB, X10_GREEN and X10_CONTINOUSare not working anymore. I looked into the problem, and found that, for those 3 X10 subcommands, camera will return 0x81 error code, which might be 'Invalid Command', and the rest X10 subcommands seems ok. As the error code has been returned, the program will keep trying until it returns 0, or it loops forever.

cont: 0
bulb
[C] pslr_bulb(1)
[C]         _ipslr_write_args(cmd_2 = 0x0, {0x1})
[S]                  >>> [F0 4F 00 00  04 00 00 00]
[S]                  >>> [01 00 00 00]
[C]         command(fd=3, 10, d, 4)
[S]                  >>> [F0 24 10 0D  04 00 00 00]
[C]         get_status(0x3)
[S]                  >>> [F0 26 00 00  00 00 00 00]
[S]                  <<< [00 00 00 00  00 00 00 81]
[R]              => ERROR: 0x81
[S]                  >>> [F0 26 00 00  00 00 00 00]
[S]                  <<< [00 00 00 00  00 00 00 81]
[R]              => ERROR: 0x81
[S]                  >>> [F0 26 00 00  00 00 00 00]
[S]                  <<< [00 00 00 00  00 00 00 81]
[R]              => ERROR: 0x81
...

I don't know what should I do next. Could you tell me how to dig further? How to find the right subcommand for Bulb, Green and Continuous shooting? Thanks.

Regards,
Tao

K3 Shutter Speed Issue - Firmware 1.40

I'm trying PKtriggercord for the first time with my K3 and running into an issue where the shutter speed can't be set.
Have tried setting different modes on the camera top dial, as well as the GUI and Command Line interface, on Windows 8.1
Camera firmware is the latest, 1.40 - Note this is not a K3-II camera.

GUI always reports the following:
current shutter speed : 0/0
camera max shutter speed : 0/0

GUI also reports the following with my camera that may be an issue too?
af point select : Unknown value: 6
drive mode : Unknown value: 8

Any help appreciated, thanks.

pentax k-3ii issue not connect win 10

hi sir i have pentax k-3ii camera i try to connect to my windows 10 laptop but it Doesn't connect
tell if i want install any other drivers ?
thank you for your replay

Support for Samsung GX-1L

I am looking at a GX-1L and attempting to get it up and running.

What can I do to help out and get support for this unit?

I have tried a few things and found the first issue begins when attempting to get_drive_info from pslr_scsi_linux.c. It appears lines 138-144 are when the check fails on the GX-1L.

If we are able to pass those lines successfully it does appears the camera with change from 'PC' on the LED to the normal readout.

Let me know what I can do to help contribute.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.