Skip to content

Instantly share code, notes, and snippets.

@themactep
Created October 19, 2026 18:32
Show Gist options
  • Select an option

  • Save themactep/8297555bcd16ee9b7e6de44483499780 to your computer and use it in GitHub Desktop.

Select an option

Save themactep/8297555bcd16ee9b7e6de44483499780 to your computer and use it in GitHub Desktop.
T31 + SC2336 AE oscillation: raw AE state series and freeze A/B phases (Lu-Fi/openimp issue #2)

T31 + SC2336 AE oscillation - raw data

Companion data for Lu-Fi/openimp issue #2.

Environment

SoC / kernel Ingenic T31, Linux 7.2.11
libimp Lu-Fi/openimp next @ 6ba7df7f34e064d11ec3cb3ba412ae3749a962f7
ISP driver open-tx-isp (Lu-Fi/open-tx-isp next based), T31 mainline port
Sensor SC2336 @ i2c-0/0x30, in-tree drivers/media/i2c/sc2336.c through the vendor-ABI bridge
Streamer timps v1.10.1
Board cinnado_d1_t31l_sc2336_atbm6031

Line time 27.86 us (25 fps over 1436 lines), so IT 360 lines = 10.03 ms and IT 720 lines = 20.06 ms: 50 Hz anti-flicker steps.

Files

file what it is
ae_series_anti_flicker_on.csv AE state sampled at 5 Hz for 29 s with image.anti_flicker=1 (the shipping default). 120 samples. Shows the 5-frame limit cycle and the periodic IT 360 -> 720 jump with gain 30/31 -> 0.
phase1_baseline.csv 24 samples, same condition, with the mean luma of a JPEG snapshot taken at each sample. Baseline oscillation: luma spread 34.6/255.
phase2_gain_frozen.csv same, with ae_freeze_gain=1. IT stays at 360, luma spread 0.4.
phase3_it_frozen.csv same, with ae_freeze_integration=1. Gain keeps moving, luma spread 1.8.
ae_series_anti_flicker_off.csv 60 samples at 4 Hz with image.anti_flicker=0: 59 of 60 identical, IT 609 lines, gain 0.

it_lines is /proc/jz/isp/isp-m0 "SENSOR Integration Time", again/dgain are the sensor analog and digital gain indices, isp_dgain is the ISP digital gain, snapshot_mean_luma is the grayscale mean (0-255) of one 640x360 JPEG snapshot grabbed at that sample.

Sampling

awk -F' *: *' '/^SENSOR Integration Time/{it=$2}
               /^SENSOR analog gain/{ag=$2}
               /^SENSOR digital gain/{dg=$2}
               /^ISP digital gain/{ig=$2}
               END{printf "%s,%s,%s,%s\n", it, ag, dg, ig}' /proc/jz/isp/isp-m0

Snapshots: GET https://<cam>:8880/snapshot.jpg?token=<token>, luma via PIL ImageStat.Stat(im.convert("L")).mean[0].

sample uptime_s it_lines again dgain
1 4129 611 0 0
2 4130 609 0 0
3 4130 609 0 0
4 4130 609 0 0
5 4130 609 0 0
6 4131 609 0 0
7 4131 609 0 0
8 4131 609 0 0
9 4132 609 0 0
10 4132 609 0 0
11 4132 609 0 0
12 4133 609 0 0
13 4133 609 0 0
14 4133 609 0 0
15 4133 609 0 0
16 4134 609 0 0
17 4134 609 0 0
18 4134 609 0 0
19 4135 609 0 0
20 4135 609 0 0
21 4135 609 0 0
22 4135 609 0 0
23 4136 609 0 0
24 4136 609 0 0
25 4136 609 0 0
26 4137 609 0 0
27 4137 609 0 0
28 4137 609 0 0
29 4137 609 0 0
30 4138 609 0 0
31 4138 609 0 0
32 4138 609 0 0
33 4139 609 0 0
34 4139 609 0 0
35 4139 609 0 0
36 4140 609 0 0
37 4140 609 0 0
38 4140 609 0 0
39 4140 609 0 0
40 4141 609 0 0
41 4141 609 0 0
42 4141 609 0 0
43 4142 609 0 0
44 4142 609 0 0
45 4142 609 0 0
46 4142 609 0 0
47 4143 609 0 0
48 4143 609 0 0
49 4143 609 0 0
50 4144 609 0 0
51 4144 609 0 0
52 4144 609 0 0
53 4145 609 0 0
54 4145 609 0 0
55 4145 609 0 0
56 4145 609 0 0
57 4146 609 0 0
58 4146 609 0 0
59 4146 609 0 0
60 4147 609 0 0
sample uptime_s it_lines again dgain sensor_fps isp_top_value
1 3728 360 30 0 25 / 1 0xb5742209
2 3728 360 30 0 25 / 1 0xb5742209
3 3729 360 31 0 25 / 1 0xb5742209
4 3729 360 31 0 25 / 1 0xb5742209
5 3729 720 0 0 25 / 1 0xb5742209
6 3729 360 31 0 25 / 1 0xb5742209
7 3729 360 30 0 25 / 1 0xb5742209
8 3730 360 30 0 25 / 1 0xb5742209
9 3730 360 31 0 25 / 1 0xb5742209
10 3730 360 31 0 25 / 1 0xb5742209
11 3730 720 0 0 25 / 1 0xb5742209
12 3731 360 31 0 25 / 1 0xb5742209
13 3731 360 30 0 25 / 1 0xb5742209
14 3731 360 30 0 25 / 1 0xb5742209
15 3731 360 31 0 25 / 1 0xb5742209
16 3732 360 31 0 25 / 1 0xb5742209
17 3732 720 0 0 25 / 1 0xb5742209
18 3732 360 31 0 25 / 1 0xb5742209
19 3732 360 30 0 25 / 1 0xb5742209
20 3733 360 30 0 25 / 1 0xb5742209
21 3733 360 30 0 25 / 1 0xb5742209
22 3733 360 31 0 25 / 1 0xb5742209
23 3733 360 31 0 25 / 1 0xb5742209
24 3734 720 0 0 25 / 1 0xb5742209
25 3734 360 30 0 25 / 1 0xb5742209
26 3734 360 30 0 25 / 1 0xb5742209
27 3734 360 31 0 25 / 1 0xb5742209
28 3735 360 31 0 25 / 1 0xb5742209
29 3735 360 31 0 25 / 1 0xb5742209
30 3735 360 31 0 25 / 1 0xb5742209
31 3735 360 29 0 25 / 1 0xb5742209
32 3736 360 29 0 25 / 1 0xb5742209
33 3736 360 30 0 25 / 1 0xb5742209
34 3736 360 30 0 25 / 1 0xb5742209
35 3736 360 31 0 25 / 1 0xb5742209
36 3737 360 31 0 25 / 1 0xb5742209
37 3737 720 0 0 25 / 1 0xb5742209
38 3737 360 31 0 25 / 1 0xb5742209
39 3737 360 30 0 25 / 1 0xb5742209
40 3738 360 30 0 25 / 1 0xb5742209
41 3738 360 31 0 25 / 1 0xb5742209
42 3738 360 31 0 25 / 1 0xb5742209
43 3738 720 0 0 25 / 1 0xb5742209
44 3739 360 30 0 25 / 1 0xb5742209
45 3739 360 30 0 25 / 1 0xb5742209
46 3739 360 30 0 25 / 1 0xb5742209
47 3739 360 31 0 25 / 1 0xb5742209
48 3740 360 31 0 25 / 1 0xb5742209
49 3740 720 0 0 25 / 1 0xb5742209
50 3740 360 31 0 25 / 1 0xb5742209
51 3740 360 30 0 25 / 1 0xb5742209
52 3741 360 30 0 25 / 1 0xb5742209
53 3741 360 31 0 25 / 1 0xb5742209
54 3741 360 31 0 25 / 1 0xb5742209
55 3741 720 0 0 25 / 1 0xb5742209
56 3741 360 30 0 25 / 1 0xb5742209
57 3742 360 30 0 25 / 1 0xb5742209
58 3742 360 30 0 25 / 1 0xb5742209
59 3742 360 30 0 25 / 1 0xb5742209
60 3742 360 31 0 25 / 1 0xb5742209
61 3743 360 31 0 25 / 1 0xb5742209
62 3743 720 0 0 25 / 1 0xb5742209
63 3743 360 31 0 25 / 1 0xb5742209
64 3743 360 30 0 25 / 1 0xb5742209
65 3744 360 31 0 25 / 1 0xb5742209
66 3744 360 31 0 25 / 1 0xb5742209
67 3744 360 31 0 25 / 1 0xb5742209
68 3744 720 0 0 25 / 1 0xb5742209
69 3745 360 31 0 25 / 1 0xb5742209
70 3745 360 30 0 25 / 1 0xb5742209
71 3745 360 31 0 25 / 1 0xb5742209
72 3745 360 31 0 25 / 1 0xb5742209
73 3746 360 31 0 25 / 1 0xb5742209
74 3746 360 31 0 25 / 1 0xb5742209
75 3746 360 30 0 25 / 1 0xb5742209
76 3746 360 30 0 25 / 1 0xb5742209
77 3747 360 31 0 25 / 1 0xb5742209
78 3747 360 31 0 25 / 1 0xb5742209
79 3747 360 31 0 25 / 1 0xb5742209
80 3747 360 31 0 25 / 1 0xb5742209
81 3748 360 30 0 25 / 1 0xb5742209
82 3748 360 30 0 25 / 1 0xb5742209
83 3748 360 30 0 25 / 1 0xb5742209
84 3748 360 31 0 25 / 1 0xb5742209
85 3749 360 31 0 25 / 1 0xb5742209
86 3749 360 31 0 25 / 1 0xb5742209
87 3749 360 31 0 25 / 1 0xb5742209
88 3749 360 30 0 25 / 1 0xb5742209
89 3749 360 30 0 25 / 1 0xb5742209
90 3750 360 31 0 25 / 1 0xb5742209
91 3750 360 31 0 25 / 1 0xb5742209
92 3750 360 31 0 25 / 1 0xb5742209
93 3750 360 31 0 25 / 1 0xb5742209
94 3751 360 30 0 25 / 1 0xb5742209
95 3751 360 30 0 25 / 1 0xb5742209
96 3751 360 30 0 25 / 1 0xb5742209
97 3751 360 31 0 25 / 1 0xb5742209
98 3752 360 31 0 25 / 1 0xb5742209
99 3752 360 31 0 25 / 1 0xb5742209
100 3752 360 30 0 25 / 1 0xb5742209
101 3753 360 30 0 25 / 1 0xb5742209
102 3753 360 31 0 25 / 1 0xb5742209
103 3753 360 31 0 25 / 1 0xb5742209
104 3753 720 0 0 25 / 1 0xb5742209
105 3754 360 31 0 25 / 1 0xb5742209
106 3754 360 30 0 25 / 1 0xb5742209
107 3754 360 31 0 25 / 1 0xb5742209
108 3754 360 31 0 25 / 1 0xb5742209
109 3755 360 31 0 25 / 1 0xb5742209
110 3755 360 31 0 25 / 1 0xb5742209
111 3755 360 30 0 25 / 1 0xb5742209
112 3755 360 30 0 25 / 1 0xb5742209
113 3756 360 30 0 25 / 1 0xb5742209
114 3756 360 31 0 25 / 1 0xb5742209
115 3756 360 31 0 25 / 1 0xb5742209
116 3756 360 31 0 25 / 1 0xb5742209
117 3757 360 31 0 25 / 1 0xb5742209
118 3757 360 30 0 25 / 1 0xb5742209
119 3757 360 30 0 25 / 1 0xb5742209
120 3757 360 31 0 25 / 1 0xb5742209
sample uptime_s it_lines again dgain isp_dgain snapshot_mean_luma
1 3923 360 31 0 0 105.22
2 3924 360 31 0 0 113.51
3 3925 360 31 0 0 116.72
4 3926 360 31 0 0 113.26
5 3926 360 31 0 0 114.06
6 3927 360 31 0 0 114.06
7 3928 360 30 0 0 113.4
8 3929 720 0 0 0 116.2
9 3930 360 30 0 0 113.9
10 3931 360 31 0 0 125.43
11 3931 360 31 0 0 114.06
12 3932 360 31 0 0 90.84
13 3933 360 30 0 0 113.19
14 3933 360 31 0 0 113.76
15 3935 360 31 0 0 113.9
16 3935 360 30 0 0 113.51
17 3936 720 0 0 0 113.98
18 3937 360 30 0 0 113.16
19 3938 360 31 0 0 114.14
20 3938 720 0 0 0 91.12
21 3939 360 30 0 0 113.39
22 3940 360 31 0 0 114.03
23 3941 360 30 0 0 113.55
24 3942 720 0 0 0 125.26
sample uptime_s it_lines again dgain isp_dgain snapshot_mean_luma
1 3945 360 25 0 5 113.44
2 3945 360 25 0 5 113.39
3 3946 360 25 0 5 113.23
4 3947 360 25 0 5 113.23
5 3948 360 25 0 5 113.25
6 3949 360 25 0 5 113.34
7 3950 360 25 0 5 113.61
8 3950 360 25 0 5 113.46
9 3951 360 25 0 5 113.38
10 3952 360 25 0 5 113.59
11 3952 360 25 0 5 113.6
12 3953 360 25 0 5 113.39
13 3954 360 25 0 5 113.67
14 3955 360 25 0 5 113.46
15 3956 360 25 0 5 113.46
16 3957 360 25 0 5 113.43
17 3957 360 25 0 5 113.42
18 3958 360 25 0 5 113.31
19 3958 360 25 0 5 113.28
20 3959 360 25 0 5 113.45
21 3960 360 25 0 5 113.27
22 3961 360 25 0 5 113.27
23 3961 360 25 0 5 113.23
24 3962 360 25 0 5 113.26
sample uptime_s it_lines again dgain isp_dgain snapshot_mean_luma
1 3966 720 6 0 0 119.56
2 3967 720 5 0 0 118.89
3 3968 720 5 0 0 118.88
4 3969 720 4 0 1 118.23
5 3970 720 4 0 0 117.96
6 3970 720 4 0 0 118.01
7 3971 720 4 0 0 118.02
8 3971 720 4 0 0 118.06
9 3972 720 4 0 0 118.05
10 3973 720 4 0 0 118.1
11 3974 720 4 0 0 118.07
12 3975 720 4 0 0 117.95
13 3976 720 4 0 0 118.05
14 3977 720 4 0 0 117.93
15 3977 720 4 0 0 117.92
16 3978 720 4 0 0 117.97
17 3978 720 4 0 0 117.95
18 3979 720 4 0 0 117.94
19 3980 720 4 0 0 117.87
20 3981 720 4 0 0 117.85
21 3982 720 4 0 0 117.89
22 3983 720 4 0 0 117.9
23 3983 720 4 0 0 117.76
24 3984 720 4 0 0 118.02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment