Commit Graph

2936 Commits

Author SHA1 Message Date
iabdalkader
f245016a94 sensors: Add PAG7936 sensor driver. 2024-10-03 19:14:01 +02:00
iabdalkader
ae4e3a1fb5 modules/py_tof: Update ToF module. 2024-10-01 18:01:01 +02:00
iabdalkader
81a185e0d7 misc: Add a flag to ioctls to abort streaming.
* Not all ioctls require aborting the streaming.
2024-10-01 17:49:31 +02:00
iabdalkader
01590ea0cb boards/all: Update manifests. 2024-09-30 14:03:52 +02:00
Ibrahim Abdelkader
be45d673a9
Merge pull request #2428 from openmv/ioctl_rgb_stats
modules: Add RGB stats ioctl.
2024-09-28 23:31:16 +03:00
iabdalkader
0a5b1e9774 modules: Add RGB stats ioctl. 2024-09-28 22:24:44 +02:00
Ibrahim Abdelkader
e3885bfbda
Merge pull request #2194 from kwagyeman/kwabena/fix_set_pixel_aa
imlib/draw: Optimize set_pixel_aa.
2024-09-28 23:22:37 +03:00
Kwabena W. Agyeman
a3d32f26ee imlib: Add new evt dark/light LUTs. 2024-09-26 14:02:36 -07:00
Kwabena W. Agyeman
8d3eb90a06 sensors: Add genx320 driver. 2024-09-26 14:02:31 -07:00
Kwabena W. Agyeman
2586c60af2 sensors: Update chip_id to 4 bytes. 2024-09-26 13:59:56 -07:00
Kwabena W. Agyeman
7736b0a4cf common: Restore original 2bpp behavior for any framebuffer. 2024-09-22 16:57:40 -07:00
Kwabena W. Agyeman
72a3439745 imlib/draw: Optimize set_pixel_aa. 2024-09-13 19:56:22 -07:00
iabdalkader
0937bc8a05 misc/common: Support overriding the resolution table.
Fixes #2385
2024-09-04 21:14:29 +02:00
iabdalkader
ccda403500 misc: Bump firmware version. 2024-09-04 15:24:16 +02:00
iabdalkader
05d40bf497 boards/ARDUINO_NICLA_VISION: Compile user modules with -Os. 2024-09-04 10:08:56 +02:00
iabdalkader
85db1a229c modules: Use the default optimization level for all user C modules.
By appending the optimization level to modules CFLAGS. Note this
works because according to the man page: If you use multiple -O
options, with or without level numbers, the last such option is
the one that is effective.
2024-09-04 10:08:41 +02:00
Ibrahim Abdelkader
73a30f19db
Merge pull request #2401 from kwagyeman/kwabena/parameterize_apriltags
imlib/apriltag: Disable unused TAG families by default.
2024-09-01 11:41:04 +03:00
Kwabena W. Agyeman
c0d4759f85 imlib/apriltag: Switch apriltag object to attributes. 2024-08-31 21:19:37 -04:00
Kwabena W. Agyeman
effe12f2cc imlib/apriltag: Disable unused TAG families by default. 2024-08-31 04:04:50 -07:00
iabdalkader
6513276c1d scripts/libraries: Remove ble_advertising.
aioble should be used instead. There's an example for the temperature
using aioble.
2024-08-30 20:38:06 +02:00
iabdalkader
7259a33411 imlib/apriltag: Switch to libm's sin/cos. 2024-08-30 20:14:56 +02:00
iabdalkader
0f8b852356 ports/stm32: Fix CM4 boot memory. 2024-08-30 13:40:11 +02:00
iabdalkader
bf4e7e4513 modules/py_image: Fix implicit float conversion. 2024-08-28 13:20:41 +02:00
Kwabena W. Agyeman
13b68a3ee8 sensors/ov7725.c: Fix sensor bayer pattern. 2024-08-23 18:30:31 -07:00
Kwabena W. Agyeman
f9e79d1d7b imlib: Optimize debayering with Helium. 2024-08-23 18:00:24 -07:00
iabdalkader
13e6573c46 ports/all: Refactor sensor flags. 2024-08-23 15:36:31 +03:00
iabdalkader
436f226c6e misc: Add support for building specific imlib files with clang. 2024-08-21 11:39:30 +03:00
iabdalkader
ca48b8c262 misc/common: Fix profiling macro.
Now it can be called multiple times in the same function and
can be nested.
2024-08-17 22:02:37 +03:00
iabdalkader
7b36e4ef67 imlib: Fix automatic vbuffer count.
Before this patch, a 1.5MB framebuffer used a single vbuffer for VGA
and smaller resolutions, causing the sensor driver to restart with
every snapshot. With this patch, a 1.5MB frame buffer uses 2 vbuffers
for VGA/RGB and 3 vbuffers for VGA/grayscale **by default**.
In the case of 2 vbuffers, it should leave the rest for `fb_alloc`, so
`fb_alloc` still gets some extra space, but only if there's any left.

`set_buffers` now replaces `auto_adjust`. Passing `-1` to `set_buffers`
will attempt to use 3 vbuffers, each with a size of `frame_size` if
they fit; otherwise, the maximum possible buffers will be used.
Passing `1` will use the whole framebuffer. In this case, `frame_size`
is ignored. Additionally, `set_buffers` is now more efficient with buffer
sizes. For example, if the source is 1bpp (Bayer) and the destination is
1bpp (grayscale or Bayer), the vbuffer size will be `w*h`, instead of
assuming that everything is 2bpp, which allows for more vbuffers.
2024-08-15 17:26:00 +03:00
iabdalkader
d1a20fb89d misc/common: Implement usb_cdc_reset_buffers for TinyUSB. 2024-08-12 23:19:18 +03:00
iabdalkader
a11635b03b misc/common: Fix usb_cdc_reset_buffers prototype. 2024-08-12 23:18:59 +03:00
iabdalkader
c5e4297bef common/usbdbg: Revert changes to usbdbg/framebuffer.
This reverts commit afcd12cb6a.
2024-08-12 22:19:49 +03:00
iabdalkader
bf2e22614b boards/OPENMV4P: Set HW crop flag.
This should have been enabled in 51e6fd2912.
2024-08-12 17:25:41 +03:00
iabdalkader
da4c686dc3 sensors/ov7725: Set bayer format. 2024-08-06 17:43:41 +03:00
iabdalkader
b93b43f506 imlib: Fix raw framebuffer size. 2024-08-06 17:42:01 +03:00
iabdalkader
6508282562 misc/sensor: Add RAW flag.
For sensors that only support bayer output.
2024-08-06 17:35:52 +03:00
Kwabena W. Agyeman
afcd12cb6a common/usbdbg: Enable RAW binary mode streaming. 2024-08-05 18:43:24 -07:00
Kwabena W. Agyeman
6e705114f1 imlib/framebuffer: Fix RAW streaming call to draw_image. 2024-08-05 18:43:23 -07:00
Kwabena W. Agyeman
50639050fb imlib/draw: Move bilinear offset after GPU call. 2024-08-05 14:20:47 -07:00
iabdalkader
18bc05d132 imlib: Add support for sending raw preview frames.
This allows boards that don't have a hardware JPEG encoder, but
do have fast scaling, to bypass JPEG encoding and send down-scaled
raw frames. The raw preview frames are capped at a configurable max,
but should not exceed ~60KBs.
2024-08-05 17:53:19 +03:00
iabdalkader
dbe6ae9f18 misc/linker: Update linker script variables.
* Add start/end to JPEG buffer. This allows board config files to
define them using linker script syntax (K, M etc..).
* Rename variables more consistently.
2024-08-05 16:23:34 +03:00
iabdalkader
dfd62f4606 imlib/jpeg: Minor clean-up.
Remove STORECODE macro and just use write_bits. This has absolutely
no effect on performance, but makes the code easier read.
2024-08-04 17:17:44 +03:00
iabdalkader
529fc489b4 misc/common: Fix profile macro. 2024-08-04 15:14:39 +03:00
iabdalkader
aad37c9c85 misc/common: Add arg to profile macro.
This way it can be called multiple times in the same function.
2024-08-04 12:55:47 +03:00
iabdalkader
a096b149ea misc/common: Add timing macros.
Those can be used for timing functions. To enable build with PROFILE=1.
2024-08-03 19:35:49 +03:00
iabdalkader
8b7bb8bdb6 boards/all: Remove USB packet size define. 2024-08-03 10:46:28 +03:00
iabdalkader
d34a2eae55 ports/wifidbg: Update WiFi debug code.
Note this feature will be replaced soon.
2024-08-03 10:46:28 +03:00
iabdalkader
f306d07b03 misc/usbdbg: Add CDC read/write callbacks.
These callbacks allow the debug code to read/write directly from
the stack, if possible, to avoid the extra memcpy.
2024-08-03 10:46:26 +03:00
iabdalkader
9a3a8c4eb2 ports/stm32: Move stm32-specific bootloader and uvc to port dir.
Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
2024-08-01 21:58:50 +03:00
Kwabena W. Agyeman
5d7f52bf44 common: Change linker variable to uint32. 2024-07-31 14:35:46 -07:00