UI properties (PTM functions) - page 4 - General Discussion and Assistance - CHDK Forum

UI properties (PTM functions)

  • 49 Replies
  • 12833 Views
Re: UI properties (PTM functions)
« Reply #30 on: 06 / July / 2015, 00:17:32 »
Advertisements
As second option, we could have some user-friendly interface for investigation.
Do you have a suggestion?

For example, my command-line java utility. Some GUI could be added. Or, I can implement it for chdkptp.

Edit: IMHO, it shouldn't be so hard to implement some interface on the camera side: just remember options on startup, then display difference after some button will be pressed.
« Last Edit: 06 / July / 2015, 00:19:14 by alex73 »

Re: UI properties (PTM functions)
« Reply #31 on: 06 / July / 2015, 11:15:29 »
alex73, here's what I tried to get the java utility working...

I already have libusb-win32-1.2.6.0 installed on this Win7 machine.

I therefore assumed that no action was necessary when http://usb4java.org/faq.html says  "How to use libusb on Windows" (with link to https://github.com/libusb/libusb/wiki/Windows#How_to_use_libusb_on_Windows)

Do you know if that is correct?
 
Java 7 update 60 (build 1.7.0_b60-19) is installed on this machine. When I double click "chdkptpJ-0.1.jar" nothing happens (operator error ?)

File structure attached.

*

Offline srsa_4c

  • ******
  • 4000
Re: UI properties (PTM functions)
« Reply #32 on: 06 / July / 2015, 12:14:22 »
For example, my command-line java utility.
Did not try it yet.
Quote
it shouldn't be so hard to implement some interface on the camera side: just remember options on startup, then display difference after some button will be pressed.
Such interface already exists. It needs 'paper and pencil' though and stops being user friendly when the number of changes exceeds the amount that fits on one screen. Hint: Miscellaneous stuff -> Debug parameters -> ALT +/- debug action -> CmpUIP.

@andrew.stephens.754365

alex73 mentioned that the utility is a command line one (it has no GUI), you need to start it from a command line window.

Re: UI properties (PTM functions)
« Reply #33 on: 06 / July / 2015, 13:24:13 »
...you need to start it from a command line window.

 :-[

I just tried this in Win "Run": 

C:\chdk-PTM-utility\chdkptpJ-0.1.jar java -cp * TestUIProperties

No joy yet...stackoverflow next stop.




Re: UI properties (PTM functions)
« Reply #34 on: 21 / August / 2015, 17:09:28 »
Sorry, I missed these messages.

I updated util for GUI show.
You just need to download https://github.com/alex73/chdkptpJ/releases/download/v0.2/ui-properties-check.zip, then unpack all files from it, then run ui-properties-check.jar(double click in Windows)

A495/100f properties list attached (tab-separated file).

Re: UI properties (PTM functions)
« Reply #35 on: 21 / August / 2015, 17:24:39 »
no worries alex73...will try to try again asap. Thanks.


Re: UI properties (PTM functions)
« Reply #36 on: 25 / August / 2015, 00:51:30 »
Is there any way to know min/max UI property index for specific camera ? By call some function or analyze CHDK code ?

*

Offline srsa_4c

  • ******
  • 4000
Re: UI properties (PTM functions)
« Reply #37 on: 25 / August / 2015, 13:32:23 »
Is there any way to know min/max UI property index for specific camera ? By call some function or analyze CHDK code ?
stubs_entry.S, uiprop_count
Note that it's called _count, so the max index will be one less.
This does not include extra properties which some cameras seem to have.


Re: UI properties (PTM functions)
« Reply #38 on: 03 / November / 2015, 14:42:46 »
no worries alex73...will try to try again asap. Thanks.

Apologies for the long delay - I ran this very recently and get a "no cameras connected" message.

It's probably better I understand the process a bit better anyway.

To that end, I reverted to this http://chdk.setepontos.com/index.php?topic=8801.msg104253#msg104253, and using chdkptp determined sx150is properties as follows:

Code: [Select]
CurrentItem 0x800a (ISO)

Current_Item_Value    Parameter_Value             Test_Mode
0                        Auto                    Av
1                        80                    M
2                        100                    M
5                       200                    M
8                        400                    M
11                        800                    M
14                        1600                    M

I'd prefer to control at least the shutter period in a similar manner but wasn't really sure how to proceed. So, for "Current_Item" from 0x8000 to 0x8081 I ran the hastily scribed & very blunt attached script (as an addition to multicam.lua).

Here is the result:

Current_Item|Current_Item_Value
Code: [Select]
0x800a|11
0x800b|0
0x800c|0
0x800d|0
0x800e|0
0x800f|0
0x8010|0
0x8011|12
0x8012|12
0x8013|6
0x8014|9
0x8015|2
0x8016|0
0x8017|0
0x8018|0
0x8019|1
0x801a|0
0x801b|1
0x801c|3
0x801d|1
0x801e|2
0x801f|0
0x8020|1
0x8021|0
0x8022|0
0x8023|65535
0x8024|0
0x8025|65535
0x8026|1
0x8027|4
0x8028|0
0x8029|0
0x802a|0
0x802b|0
0x802c|1
0x802d|0
0x802e|0
0x802f|1
0x8030|1
0x8031|0
0x8032|0
0x8033|1
0x8034|0
0x8035|0
0x8036|0
0x8037|0
0x8038|1
0x8039|1
0x803a|0
0x803b|1
0x803c|1
0x803d|0
0x803e|1
0x803f|0
0x8040|1
0x8041|1
0x8042|0
0x8043|0
0x8044|0
0x8045|0
0x8046|1
0x8047|0
0x8048|1
0x8049|0
0x804a|0
0x804b|1
0x804c|0
0x804d|1
0x804e|1
0x804f|0
0x8050|1
0x8051|65535
0x8052|1
0x8053|65535
0x8054|0
0x8055|0
0x8056|0
0x8057|1
0x8058|1
0x8059|1
0x805a|1
0x805b|0
0x805c|0
0x805d|0
0x805e|1
0x805f|1
0x8060|0
0x8061|2
0x8062|3
0x8063|1
0x8064|1
0x8065|1
0x8066|1
0x8067|0
0x8068|0
0x8069|1
0x806a|1
0x806b|1
0x806c|0
0x806d|0
0x806e|65535
0x806f|0
0x8070|65535
0x8071|65535
0x8072|1
0x8073|1
0x8074|0
0x8075|65535
0x8076|65535
0x8077|1
0x8078|0
0x8079|18
0x807a|2
0x807b|2
0x807c|2
0x807d|2
0x807e|1
0x807f|1
0x8080|1
0x8081|0
(a) Should it be safe to run script:
Code: [Select]
call_event_proc("PTM_SetCurrentItem",Current_Item,Current_Item_Value) against all non zero "Current_Item_Value" values in this list?

Is a reasonable method to attempt identification of the "Current_Item" related to shutter period:
(b) manually change the existing shutter period (from that reported in the table above - assuming it is an item in the list)
(c) sequentially run each non zero "call_event_proc("PTM_SetCurrentItem",Current_Item,Current_Item_Value" until I visually see the shutter period change in the Canon display?
and
(d) is there special significance to the "65536" Current_Item_Value entries?
« Last Edit: 03 / November / 2015, 15:15:46 by andrew.stephens.754365 »

Re: UI properties (PTM functions)
« Reply #39 on: 04 / November / 2015, 12:06:36 »
So,

I ran my script then changed the camera to continuous mode and reran the script.

After comparing the 2 output files (in Excel) it transpires that 0x800c Current_Item_Value changes from 0 to 1 & call_event_proc("PTM_SetCurrentItem",0x800c,0) / call_event_proc("PTM_SetCurrentItem",0x800c,1) work as expected.

Using the same approach for shutter period (changing shutter between one tenth & one thirteenth) and for zoom (chaning zoom by one step) results in no change.

My script was written to include  0x8000 to 0x8081

Can I try to expand that range in order to identify the relevant CurrentItem for shutter period / zoom (or is it likely they just don't exist for this camera)?

 

Related Topics