Fix cmake files and readme

This commit is contained in:
zongor 2023-09-16 01:30:23 -04:00
parent bc14ee2c7a
commit 2e93f6f181
3 changed files with 19 additions and 5 deletions

3
.gitignore vendored
View File

@ -52,4 +52,5 @@ Module.symvers
Mkfile.old Mkfile.old
dkms.conf dkms.conf
.ccls-cache/ .ccls-cache/
build/

View File

@ -1,4 +1,9 @@
cmake_minimum_required(VERSION 3.12) cmake_minimum_required(VERSION 3.12)
include($ENV{PICO_SDK_PATH}/pico_sdk_init.cmake)
project(arducam_firmware_uvc C CXX ASM)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)
pico_sdk_init()
add_executable(arducam_firmware_uvc) add_executable(arducam_firmware_uvc)

View File

@ -2,12 +2,20 @@
A very simple firmware for the arducam hm01b0 & raspberry pi pico that uses usb uvc protocol. A very simple firmware for the arducam hm01b0 & raspberry pi pico that uses usb uvc protocol.
It honestly barely works, but the tinyusb implementation of uvc is still a work in progress so theoretically this will get better as tinyusb's uvc develops. It honestly barely works, but the [tinyusb](https://github.com/hathach/tinyusb/tree/master) implementation of uvc is still a work in progress so theoretically this will get better as tinyusb's uvc develops.
One consistant way to get this to work is using OBS Studio's virtual camera, a lot of other webcam programs do not play nice with it. One consistant way to get this to work is using [OBS Studio's](https://obsproject.com/) virtual camera, a lot of other webcam programs do not play nice with it.
Another issue is that beacuse the image exported is 150x150px, some Voip programs will not be able to detect your output so you will need to scale the output to at least 1024x1024px
This has only been tested on linux, although it should work anywhere that the tinyusb uvc library works. This has only been tested on linux, although it should work anywhere that the tinyusb uvc library works.
Also, during testing I had this weird issue where pipewire would randomly eat up all of my ram, so I decided to keep the shell script in this repo for reference in case you run into the same issue. Also, during testing I had this weird issue where pipewire would randomly eat up all of my ram, so I decided to keep the [shell script](./pipewire_reset.sh) in this repo for reference in case you run into the same issue.
Might have to mess with the CMakeLists a bit to get it to work in a standalone way but pulling the [pico-examples](https://github.com/raspberrypi/pico-examples) repo and sticking it in `pico-examples/usb/device/` will for sure make it work. ### building
```sh
mkdir build && cd build && cmake .. && make
```
The output file is called `arducam_firmware_uvc.uf2`