Commit graph

34 commits

Author SHA1 Message Date
Alec Delaney
848b625bd3 Update version string 2022-08-16 18:09:14 -04:00
foamyguy
171db330aa code format + pylint 2022-03-21 11:21:27 -05:00
lady ada
c46f5cdc2a basically, add reset_awb to reset the camera completely after taking a jpeg. is there a better way? maybe! 2022-03-06 13:11:12 -05:00
lady ada
e62dbbcdb3 speed it up 2022-02-25 20:02:22 -05:00
lady ada
d41cf5613f change from pin to digitalio 2022-02-24 15:08:14 -05:00
Alec Delaney
0be6dc45a7 Reformatted per pre-commit 2022-01-06 11:21:58 -05:00
Alec Delaney
8694699e10 Add size parameter to docstring 2022-01-06 11:20:36 -05:00
Alec Delaney
21bce3ded1 Add type hints 2022-01-06 11:20:19 -05:00
ee855e1487 Merge remote-tracking branch 'origin/main' into fix-effects-modes 2021-10-12 14:22:37 -05:00
ae49d44bd4 Fix 'normal' special effect 2021-10-12 12:53:49 -05:00
db55e955df brightness: Fix exception when setting brightness 2021-10-12 12:53:49 -05:00
435ecbdcad contrast: Fix "+2" setting 2021-10-12 12:53:49 -05:00
af674d5a44 _set_size_and_colorspace: Boost pixel clock
Limor noticed that the pixel clock was very low, leading to a frame rate
of just 7.6Hz from the camera.  Because the structure of the parallel
capture driver means dropping at least half of all frames, this led to
a really low LCD refresh rate of just 3.8Hz.

Bump the PLL multiplier for non-JPEG modes from 8 to 32.  This gives
a capture framerate of about 30FPS and an LCD refresh rate of about 15Hz.

Going significantly higher (multiplier 48) gives a jumbled display, but even
going slightly higher doesn't have a big effect on frame rate because the total
LCD data transmission time of about 30ms starts to overlap with the next frame.
Increasing the multiplier to 40 increases the capture frame rate to 40Hz but
the LCD refresh rate decreaseds to just 13Hz, because only 1/3 of captured
frames are displayed instead of 1/2.  This is highly dependent on the LCD
resolution & speed.
2021-10-12 12:12:29 -05:00
4a8e2b6e37 Allow quality=2 again
This works, but only at some resolutions.  Needs more exploration.
2021-10-08 21:25:46 -05:00
4581f25d76 Use 20MHz, not 24MHz, master clock
The clock module requires a very low jitter clock.  The esp32-s2 can do
this with a 20MHz clock but not a 24MHz one, because it is dividing an
internal clock of 80MHz to generate it.
2021-10-08 11:53:22 -05:00
caf36a83db add the rest of the image controls 2021-10-07 14:46:02 -05:00
d547c73de7 remove debug prints 2021-10-07 14:06:47 -05:00
bb1d2ddd1c fix docs 2021-10-07 14:06:20 -05:00
82a9afe449 work on docs 2021-10-07 14:04:36 -05:00
2c4eda6583 black & pylint 2021-10-07 13:41:02 -05:00
dd9d86abdf add quality property 2021-10-07 13:10:26 -05:00
aa080f7685 start addressing pylint diagnostics 2021-10-07 13:09:52 -05:00
91e03ab590 Fix large resolutions, add jpeg examples 2021-10-06 15:23:47 -05:00
ed168b0d62 Add special effects, saturation control, LCD demo 2021-10-06 10:36:21 -05:00
1433d9c8fe Implement test pattern. update incorrect docstrings. remove debug print. 2021-10-06 10:20:49 -05:00
787b4f2fe9 pixels come outgit gui 2021-10-05 16:06:09 -05:00
82ecfa8879 fix small bugs, still no work-y 2021-10-05 11:18:30 -05:00
2d476409b3 Further flesh out the mode setting
it is "complete" but doesn't work yet, the next step is to compare a full
initialization dump from the espressif demo to what this code does
2021-10-04 11:53:37 -05:00
43bdb80fb8 shush 2021-10-01 10:43:00 -05:00
d595cb21f2 write initial registers 2021-10-01 10:38:03 -05:00
b89490c0dc it can read ID now 2021-10-01 10:30:12 -05:00
308124b9eb start implementation of SCCB-with-16-bit-addresses 2021-09-29 13:22:05 -05:00
8d5200e24c transcribe register definitions
.. from espressif/esp32-camera.git@fa5020f5c7
2021-09-29 13:09:45 -05:00
c6787c9e2d initial skeleton with cookiecutter 2021-09-29 13:01:28 -05:00