From b5d519e6d17215eb1e459116db7e8c66d8f616c5 Mon Sep 17 00:00:00 2001 From: Kamil Trzcinski Date: Mon, 11 Apr 2022 15:04:18 +0200 Subject: [PATCH] Add note about Arducam 16MP --- .vscode/settings.json | 64 +++++++++++++++++++++++++++++++++++++++++++ README.md | 36 ++++++++++++++++++++---- 2 files changed, 95 insertions(+), 5 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index e319359..a4e4497 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -2,5 +2,69 @@ "files.exclude": { "**/*.d": true, "**/*.o": true + }, + "files.associations": { + "*.vue": "javascript", + "array": "cpp", + "*.tcc": "cpp", + "istream": "cpp", + "ranges": "cpp", + "tuple": "cpp", + "utility": "cpp", + "cstdlib": "cpp", + "atomic": "cpp", + "bit": "cpp", + "cctype": "cpp", + "chrono": "cpp", + "clocale": "cpp", + "cmath": "cpp", + "codecvt": "cpp", + "compare": "cpp", + "concepts": "cpp", + "condition_variable": "cpp", + "cstdarg": "cpp", + "cstddef": "cpp", + "cstdint": "cpp", + "cstdio": "cpp", + "cstring": "cpp", + "ctime": "cpp", + "cwchar": "cpp", + "cwctype": "cpp", + "deque": "cpp", + "list": "cpp", + "map": "cpp", + "set": "cpp", + "unordered_map": "cpp", + "unordered_set": "cpp", + "vector": "cpp", + "exception": "cpp", + "algorithm": "cpp", + "functional": "cpp", + "iterator": "cpp", + "memory": "cpp", + "memory_resource": "cpp", + "numeric": "cpp", + "optional": "cpp", + "random": "cpp", + "ratio": "cpp", + "string": "cpp", + "string_view": "cpp", + "system_error": "cpp", + "type_traits": "cpp", + "initializer_list": "cpp", + "iomanip": "cpp", + "iosfwd": "cpp", + "limits": "cpp", + "mutex": "cpp", + "new": "cpp", + "ostream": "cpp", + "sstream": "cpp", + "stdexcept": "cpp", + "stop_token": "cpp", + "streambuf": "cpp", + "thread": "cpp", + "cinttypes": "cpp", + "typeinfo": "cpp", + "fourcc.h": "c" } } diff --git a/README.md b/README.md index 06d5eb8..c8e858d 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,14 @@ uname -a v4l2-ctl --list-devices ``` +The `5.15 kernel` is easy to get since this is LTS kernel for Raspberry PI OS: + +```bash +apt-get update +apt-get dist-upgrade +reboot +``` + ## Compile ```bash @@ -138,11 +146,6 @@ Depending on control they have to be used for camera, ISP, or JPEG or H264 codec -camera-jpeg.options=compression_quality=60 ``` - - - - - ## List all available formats and use proper one You might list all available capture formats for your camera: @@ -160,6 +163,29 @@ Some of them might be specified to streamer: ./*_camera.sh -camera-format=H264 # This is unstable due to h264 key frames support ``` +## Camera support + +### Arducam 16MP + +The 16MP sensor is supported by default in Raspberry PI OS after adding to `/boot/config.txt`. +However it will not support auto-focus nor manual focus due to lack of `ak7535` compiled +and enabled in `imx519`. Focus can be manually controlled via `i2c-tools`: + +```shell +# /boot/config.txt +dtoverlay=imx519,media-controller=0 + +# /etc/modules-load.d/modules.conf +i2c-dev + +# after starting camera execute to control the focus with `0xXX`, any value between `0x00` to `0xff` +# RPI02W (and possible 2+, 3+): +i2ctransfer -y 22 w4@0x0c 0x0 0x85 0x00 0x00 + +# RPI4: +i2ctransfer -y 11 w4@0x0c 0x0 0xXX 0x00 0x00 +``` + ## License GNU General Public License v3.0