Using
this approach, I've got the following annotated logs:
T5i startup log-a.logT5i startup Log MPU-a.logLooking for SW1 (half-shutter) entries:
0.260.933 EventMgr:ff2273dc:8d:03: Already SW1OFF
0.281.407 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
0.281.520 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
0.306.714 Fstorage:ff1d0788:9e:03: fssSW1On
0.381.686 PropMgr:ff2a6e98:33:03: PROP_REMOTE_SW1[0]
9.586.010 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 0b 00) ; EVENTID_METERING_TIMER_START_SW1OFF
9.586.215 EventMgr:ff22769c:8d:03: emDeliverMulticastEvent : SW1OFF
9.620.344 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
9.620.442 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
9.693.040 CtrlSrv:ff39e860:83:03: IDLEHandler UNPRESS_SW1_BUTTON
9.698.658 CtrlSrv:ff39e7bc:83:03: IDLEHandler PRESS_SW1_BUTTON
10.091.657 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 0b 00) ; EVENTID_METERING_TIMER_START_SW1OFF
10.091.793 EventMgr:ff22769c:8d:03: emDeliverMulticastEvent : SW1OFF
10.092.026 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
10.092.128 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
10.230.766 CtrlSrv:ff39e860:83:03: IDLEHandler UNPRESS_SW1_BUTTON
10.230.923 CtrlSrv:ff39e7bc:83:03: IDLEHandler PRESS_SW1_BUTTON
10.459.433 Fstorage:ff1d0788:9e:03: fssSW1On
10.459.472 Fstorage:ff1d0788:9e:03: fssSW1On
11.895.314 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 0b 00) ; EVENTID_METERING_TIMER_START_SW1OFF
11.895.457 EventMgr:ff22769c:8d:03: emDeliverMulticastEvent : SW1OFF
12.011.518 CtrlSrv:ff39e860:83:03: IDLEHandler UNPRESS_SW1_BUTTON
18.676.057 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
18.676.142 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
18.678.878 Fstorage:ff1d0788:9e:03: fssSW1On
18.778.213 CtrlSrv:ff39e7bc:83:03: IDLEHandler PRESS_SW1_BUTTON
0.260.933 EventMgr:ff2273dc:8d:03: Already SW1OFF
0.281.407 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
0.281.520 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
0.306.714 Fstorage:ff1d0788:9e:03: fssSW1On
0.381.686 PropMgr:ff2a6e98:33:03: PROP_REMOTE_SW1[0]
9.586.010 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 0b 00) ; EVENTID_METERING_TIMER_START_SW1OFF
9.586.215 EventMgr:ff22769c:8d:03: emDeliverMulticastEvent : SW1OFF
9.620.344 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
9.620.442 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
9.693.040 CtrlSrv:ff39e860:83:03: IDLEHandler UNPRESS_SW1_BUTTON
9.698.658 CtrlSrv:ff39e7bc:83:03: IDLEHandler PRESS_SW1_BUTTON
10.091.657 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 0b 00) ; EVENTID_METERING_TIMER_START_SW1OFF
10.091.793 EventMgr:ff22769c:8d:03: emDeliverMulticastEvent : SW1OFF
10.092.026 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
10.092.128 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
10.230.766 CtrlSrv:ff39e860:83:03: IDLEHandler UNPRESS_SW1_BUTTON
10.230.923 CtrlSrv:ff39e7bc:83:03: IDLEHandler PRESS_SW1_BUTTON
10.459.433 Fstorage:ff1d0788:9e:03: fssSW1On
10.459.472 Fstorage:ff1d0788:9e:03: fssSW1On
11.895.314 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 0b 00) ; EVENTID_METERING_TIMER_START_SW1OFF
11.895.457 EventMgr:ff22769c:8d:03: emDeliverMulticastEvent : SW1OFF
12.011.518 CtrlSrv:ff39e860:83:03: IDLEHandler UNPRESS_SW1_BUTTON
18.676.057 **INT-36h*:ff31af1c:00:00: *** mpu_recv(06 04 05 00 00) ; EVENTID_METERING_START_SW1ON
18.676.142 EventMgr:ff227524:8d:03: emDeliverMulticastEvent : SW1ON
18.678.878 Fstorage:ff1d0788:9e:03: fssSW1On
18.778.213 CtrlSrv:ff39e7bc:83:03: IDLEHandler PRESS_SW1_BUTTON
In a normal startup log, these entries won't appear, unless you press half-shutter manually (but the first attempt appeared ~ 0.3 seconds after power on - unlikely to be you pressing this button). Half-shutter events are also triggered by the star (*) button, AF-ON (where present) and DOF preview (with electronic lenses only).
There is a sequence of half-shutter press/unpress events after about 9.5 seconds; that's when you tried to navigate Canon menu, from what I could tell. There are events about shooting mode changing around that time, so it might be the MPU temporarily resetting the half-shutter state:
0.143.558 PropMgr:ff0f2e90:81:03: dwNewAeModeDial = 0 ; P
9.571.943 PropMgr:ff0f2e90:81:03: dwNewAeModeDial = 22 ; A+
After 18 seconds, you went back to LiveView using the recording button:
18.660.731 CtrlSrv:ff39dd00:83:03: GuiMainEventHandler.c PRESS_LV_MOVIE_START_BUTTON/PRESS_LV_START_BUTTON
and shortly afterwards, the MPU locked half-shutter again.
I could reproduce the defect on 60D with the following procedure:
1) hold the AF-ON button pressed while in LiveView
2) while still holding the AF-ON button, press MENU to make sure it doesn't work (it shouldn't open Canon menu)
3) while still holding the AF-ON button, perform a mode switch that gets the camera out of LiveView
4) while still holding the AF-ON button, press MENU - this time it should open Canon menu
5) while still holding the AF-ON button, go back to LiveView using the recording button
6) while still holding the AF-ON button, press MENU - this time it shouldn't work (it shouldn't open Canon menu)
Also worth noting:
- When using the half-shutter button, mode switches from/to LiveView did not unlock the MENU button
- when using the * button, I could open Canon menu at step 6 (repeatable); from your logs, I wouldn't expect this
- on 5D3, I could not unlock the MENU button at all using the same procedure
Based on this test:
- is there any unusual autofocus activity, e.g. at camera startup, or after leaving Canon menu?
- if you touch the half-shutter button, or the * button, does this unlock the keys, even temporarily?
- if you change the functionality of the * button from CFn (try all available options), does it help?
- can anyone with a 700D perform the above test and document the expected behavior?
- if the faulty button is half-shutter, I can try a workaround, to manually "unpress" it from software, without any guarantees of success. Are you able to compile from source?
In any case, I believe the defect is on the hardware side (half-shutter signal somehow stuck, possibly the * button). These events are not coming from the main CPU, where ML runs, but for the MPU (a small microcontroller handling buttons, shutter mechanism and a few other functions). Updating the firmware or uninstalling ML will probably not change anything.