Open jamesWith opened 1 year ago
How do you get the Micromod Artemis Processor board camera to work? I follow the instructions but face some pins mapping issues with Micromod and Artemis dev kit.
@nseidle Is there anyone available to update supported platforms for this library?
@jamesWith @StargazerX0 the details for platform support are outlined here: https://github.com/sparkfun/SparkFun_HM01B0_Camera_ArduinoLibrary/tree/master/src/platforms
Here's a general sense of how it works:
The hm01b0_platform.h is included as part of the library.
Depending on the environment provided by the Arduino IDE (including AM_PART_APOLLO3
and ARDUINO_SFE_EDGE
for example) this header will conditionally include other platform definitions.
Right now the only platform definition is "platforms/apollo3/include/hm01b0_platform_apollo3.h" and it is only included when ARDUINO_SFE_EDGE
is defined.
Other Apollo3 boards will likely have different defined values.
In order to support a new board look in the Apollo3 Arduino Core to find out the defined name of the board you are looking for.
This shows where ARDUINO_SFE_EDGE
is defined in the Apollo3 Arduino Core:
https://github.com/sparkfun/Arduino_Apollo3/blob/a0d99c5fc9b1112d46a9d11c1339898d01e586c9/boards.txt#L175
As you can see, all the supported boards are included in the boards.txt file. Additional settings for different boards can be found in the variants directory.
Using the sparkfun HM01B0 library with the Micromod Artemis Processor board on a Machine Learning Micromod carrier board. When the Example1_StopMotion example is used, it fails to compile stating: " #error "Unsupported platform: Submit an issue / pull request to https://github.com/sparkfun/SparkFun_HM01B0_Camera_ArduinoLibrary to add support for your target""
I found that using this repo : https://github.com/paulvha/apollo3/tree/master/hb01b0 and the instructions in the readme allowed me to get the camera working. I think there are only a few changes, it would be great if they could be included to save others the struggle.
I then also found that the exposure seem very off, this was helped by adding these values:
// W 24 2101 03 2 1 ; AE target mean {0x2101, 0x3C,}, // W 24 2102 03 2 1 ; AE min mean {0x2102, 0x0A,}, // W 24 2103 03 2 1 ; converge in th {0x2103, 0x0F,},
// W 24 2107 78 2 1 ; min INTG {0x2107, 0x02,},
// W 24 210A 03 2 1 ; Minimum Again {0x210A, 0x00,},
// W 24 210C 03 2 1 ; Minimum Dgain {0x210C, 0x40,}, // W 24 210D 03 2 1 ; Damping factor {0x210D, 0x00,}, // W 24 210E 03 2 1 ; Flicker Step contro {0x210E, 0x00,},
to the file: hm01b0_raw8_qvga_8bits_lsb_5fps.h @ line 144