Experimenting with an Infiray Tiny1C core - Page 1
Forum section: electronics / general

author: globoy
author_rank: Frequent Contributor
timestamp: October 15, 2022, 07:43:35 pm
content: I've been experimenting with an Infiray Tiny1C core and I thought I'd share at least some of what I've learned in a thread in case anyone is interested. I say "experimenting" but it's still mostly "learning".My background is EE/CS and for the last years I've been designing embedded systems for myself and for others. I have a lot of experience with the Flir Lepton and have designed several products using it. I'm not a professional thermographer by any means but like a lot of you in this forum am captivated by the idea of being able to see something that we're not normally able too. I also like the idea of making interesting/useful technology available to people and with the Lepton (and perhaps the Tiny1C) I've developed a set of reasonably low-cost open-source cameras aimed at makers and other technical types to let them experiment at the low end as well.I reached out to Infiray (IRay Technology Co, Ltd) earlier this year and was able to buy a Tiny1C. I chose the Tiny1C because it supports either SPI or 8-bit DVP interfaces for the video stream which are compatible with the Espressif ESP32 and ESP32-S3 micro-controllers I want to use. Like the Lepton it uses I2C for the command interface. It's a bit more expensive than the Lepton 3.5 (~$250USD qty 1 vs $150) but touts some significantly improved performance including higher resolution (256 x 192 pixels vs. 160 x 120 pixels) and higher framerate (max 25 fps vs. 8.7 fps). Its claimed thermal sensitivity (< 50 mK), pixel pitch (12µm), range (8-14µm) and raw sensor output (14 bits) are the same. It also has a built-in shutter for calibration but seems to come with more choices for lens (2-4.3 mm). It also seems that various models (perhaps various calibration setups and lenses) allow different accuracy over different temperature ranges (for example a unit with higher accuracy over "biologic" temperature ranges 10-50°C or lower accuracy over "industrial" temperature ranges (-10 - 75°C with some inconclusive hints that a low-gain mode can extend that range).In addition to the camera module I received a USB Interface dev board and zip files with a Windows demo application, some documentation about using the demo application, communicating with the device via the SPI/DVP and I2C interfaces, a spreadsheet listing the commands and their arguments and demo code written for a STM32 dev board. Unfortunately the USB Interface board was DOA so I couldn't play with their app. The English documentation seems to be translated from the original Chinese using a computer translator but I appreciate Infiray for making the effort. It has given me an appreciation for the difficulty other engineers must have had over the decades around the world dealing with English-only documentation.Subsequent posts will be about various individual topics. Let me know if this is inappropriate for this forum and I'll stop. I'm still unclear if I can share the documents and code Infiray sent me. I signed a sales contract which mostly committed me to paying them but also holds me responsible for obeying various export regulations (including the "Foreign Sanctions Evaders List"?!) and preventing use by Military or anyone whose conduct is for military purposes, as well as protecting confidential information. I plan to err on the side of caution.

author: globoy
author_rank: Frequent Contributor
timestamp: October 15, 2022, 08:16:11 pm
content: This post describes the camera module a bit. It's just a bit larger than the Lepton and comes as a PCB assembly with a high-density connector instead of requiring a socket. It takes 3.3V and 5V inputs. The 3.3V input powers the digital circuitry (typ 220 mA + 100mA for the shutter closing). The 5V input powers the analog circuitry in the sensor (typ 5mA) and has a pretty tight spec (200 µV noise up to 50 kHz).The camera has several interfaces1. Configurable video output : Either 8-bit DVP or SPI (based on a command). DVP is used by a lot of traditional video sensors (e.g. the ubiquitous Omnivision OV2640) and includes a CMOS-compatible 8-bit parallel bus, horizontal and vertical sync signals and pixel clock.2. I2C Command : The camera acts an an I2C slave presenting a register interface (16-bit register addresses) Infiray claims complies with the CCI protocol in MIPI CSI-2 (one has to sign up to get this spec which I haven't yet but I think it addresses a common way to initialize and control image sensors). I'm not sure the fastest supported frequency is. I use 100 kHz.3.Serial port : Undocumented but I see what appear to be diagnostic/logging messages coming out of the camera at 115200 baud.4. Some sort of undocumented programming SPI interface (perhaps to factory load code into the on-board micro)5. GPIO : 3 undocumented GPIO signals6. Reset : active low reset signalI designed a breakout board modeled on the Group Gets/Pure Thermal Lepton breakout board to make the camera available as a SPI peripheral. It's bigger than it needs to be and one of the caps interfered with the connector but it seems to work. For full disclosure's sake, I have a relationship with Group Gets to manufacture and sell some of my designs.The first two pics are screen grabs from Infiray's website and documentation.

author: globoy
author_rank: Frequent Contributor
timestamp: October 15, 2022, 08:33:00 pm
content: The USB Dev board consists of a Realtek RTS5836 USB camera interface chip, a Winbond 25X10CLN1G 1Mb SPI Flash memory chip and 3 DC-DC converters (a boost converter followed by a 3.3V buck and 5V linear regulator). I couldn't find any documentation for the RTS5836 but it seems to similar to the RTS5803 USB2.0 UVC compatible camera controller. The flash memory chip probably holds the configuration for the Tiny1C sent via I2C at boot to get it up and running.I'm guessing that some of Infiray's consumer products (like the camera dongles) and some of the other modules are essentially the Tiny1C and this USB circuitry in an enclosure.I could not get my board to work. The board enumerates and presents itself as a UVC device but I could get no image, either with the demo app or any other UVC display program. I also couldn't use the app's interface to communicate with the camera. After a bunch of debugging I found that the I2C bus pull-ups are not being powered. It appears the supply line (maybe 2.8V) comes from a pin on the RTS5836 but that output is 0V. I even removed and re-soldered the chip to make sure it had a good connection. I moved on and got the camera running with my own code.

author: Fraser
author_rank: Super Contributor
timestamp: October 15, 2022, 08:53:40 pm
content: Globoy,Thank you for sharingI am currently ‘playing’ with a Infiray P2 Pro camera and your comment on the USB interface helped to explain why the driver makes mention of Realtek in the .inf file. From the information I currently have, the P2 series contains the Tiny1-b core which combines the microbolometer PCB with the USB interface PCB.I look forward to future posts on your experiences with the Tiny1-cFraser

author: globoy
author_rank: Frequent Contributor
timestamp: October 15, 2022, 09:02:47 pm
content: I am using an ESP32 board I designed, called gCore (https://github.com/danjulio/gCore), as my initial development platform. It has a 480x320 pixel touchscreen (16bpp) and battery/power management circuitry. I hacked together a hand-wired interposer board to connect the Tiny1C breakout to gCore's expansion ports (3.3V power, I2C and SPI). The initial code has been written using the ESP32 Arduino environment but I will eventually move over to the Espressif IDF v4.4.2. I can get the full 25 fps using both ESP32 cores and two SPI/DMA engines if I'm only getting YUV image data or radiometric temperature data but not both. To do that I think I'll have to move to the ESP32-S3 and use the 8-bit DVP interface.Initially I wrote my own CCI code to try to understand the way Infiray formats commands but that grew tedious and I ported their demo codebase which provides an API for controlling the camera and other functions such as calibration and ambient environment correction.Some of the advanced features such as calculating correction values, calibrating a sensor and getting accurate temperature data use a library, libirtemp, that they don't give away the source for. They have to compile it for each RTOS platform. I haven't yet asked to have a version built for ESP32 (or ESP32-S3) but they wouldn't give me the source, even under NDA. There's another similar library, libiruvc, that I think exists for people developing applications that interface with cameras over USB.

author: globoy
author_rank: Frequent Contributor
timestamp: October 15, 2022, 09:03:56 pm
content: Thank you Fraser. It has been your posts about that camera that motivated me to get off top-dead-center and post here.

author: globoy
author_rank: Frequent Contributor
timestamp: October 15, 2022, 09:18:25 pm
content: Fraser, I think Iniray's new low-end (256x192) devices are based on their RTC2121W WLP Uncooled Infrared Detectorhttps://www.infiray.com/products/rtc2121w-wlp-uncooled-infrared-detectors.htmlwhich seems to be the microbolometer and a custom ASIC (which I see referred to in the code and app as 2121W). If you do it, I'm definitely looking forward to your review.

author: Fraser
author_rank: Super Contributor
timestamp: October 15, 2022, 09:22:11 pm
content: Globoy,The Infiray P2 Pro review will be going ahead as Dave has indicated that such will be permitted hereFraser

author: tomasis
author_rank: Contributor
timestamp: October 16, 2022, 08:36:16 am
content: some interesting info, globoy!whats difference between B and C version?

author: Fraser
author_rank: Super Contributor
timestamp: October 16, 2022, 09:50:08 am
content: There are at least 3 versions of the Tiny1-x series sold by Infiray.Tiny1-Ahttps://emin.com.mm/infiraytiny1-a-infiray-tiny1-a-micro-uncooled-thermal-module-256x192-160x120-myanmar-103178/pr.htmlTiny1-Bhttps://www.infiray.com/products/tiny1-b-micro-lwir-thermal-module.html?gclid=Cj0KCQjw166aBhDEARIsAMEyZh6vjTL41OObKjUyGOuxIMlzcli1nV1OOasGq1A5Zb9CjU47gXgZdCgaAjmJEALw_wcBTiny1-Chttps://www.infiray.com/products/tiny1-c-micro-uncooled-ir-camera-sensor-module.htmlThe Tiny1-A is the microbolometer board with no USB interface. It provides digital I/O as detailed in this thread by Globoy. The Tiny1-B combines the Microbolometer board and USB interface onto a single PCB creating a compact UVC compliant USB thermal camera. Tiny1-C is functionally the same as the Tiny1-B but separates the Microbolometer board and UVC compliant USB interface using a FPC cable. This enables installation in more confined spaces.Fraser

author: Fraser
author_rank: Super Contributor
timestamp: October 16, 2022, 10:24:14 am
content: Something that I am noticing with the P2 Pro camera is an effect that I saw on the first generation microbolomter FLIR PM570 camera in 1997. The image produced can appear as though you are looking through a non uniform material between the camera and the target. It could almost be called fixed pattern noise but I think that is an incorrect analogy. It is what we used to call “chicken mesh effect” where you feel like you are looking through something like fine chicken mesh. I will provide greater detail in my review.I am expecting to see a high level of video processing on these tiny thermal cores, as seen on others that use the 12um pixels. This is a fact of life and is used to counter the challenging signal to noise ratio of the hardware. The effect that I am seeing may well be a combination of noise and the video processing that is fighting to suppress its presence in the final image.Fraser

author: Fraser
author_rank: Super Contributor
timestamp: October 16, 2022, 11:48:26 am
content: I am wondering whether the Tiny1 core detailed by the OP suffers the same ‘chicken mesh’ / Mosaic effect whilst it is being used ? If not, could it be either a product of the host software image processing or, more unlikely, the quality of the lens protection window used on the P2 ?I am trying to think of ways to describe the effect better. It looks like a bin bag has been placed over the camera and it is imaging through it’s irregular surface. This is most noticeable in low Delta T scenes where a microbolometer based thermal camera struggles most to provide ‘nice’ clean images.This is NOT a finished investigation and I will detail my findings in my review once the P2 has been tested in different scenarios.Fraser

author: globoy
author_rank: Frequent Contributor
timestamp: October 16, 2022, 03:45:25 pm
content: I am wondering whether the Tiny1 core detailed by the OP suffers the same ‘chicken mesh’ / Mosaic effect whilst it is being used ?Yes, I think it does. I'm going to add code to let me save RGB images and then I can start sharing them here. I also see it more with low Delta-T images. I've always thought it was related to limitations in the processing of the raw data from the sensor itself since in low delta-T images noise from each pixel will have a much larger impact. I've seen it too from the Lepton when I'm just displaying colorized but linearly scaled radiometric data.I'll try to detail it a bit later but the Tiny1C allows selection of one or both of two output formats. it can supply YUV422 (YUVY) image data colorized by a built-in palette or it can supply raw radiometric data (16-bit integers that can be scaled to temperature). I think a lot of the consumer gear displays the YUV image. This is highly processed by algorithms in the module (there are some "knobs" such as time/spatial noise filtering, brightness, contrast). I've just put in code to play with those but don't have much experience yet. The demo app allows control but I can't use that. This is like the "AGC" mode in the Lepton. Designed foremost to make a "pretty picture" with good contrast between elements.

author: globoy
author_rank: Frequent Contributor
timestamp: December 16, 2022, 10:57:26 pm
content: I've slowly kept at this project. Of course life intervenes and I thought I had broken my camera and ordered a new one which took some time so my progress has been in fits and spurts. This is just a quick update.Attached are pictures from radiometric data (my 8-bit rainbow palette, linear scaling) and from the yuv422 data (Infiray's built-in rainbow palette, built-in image processing). The image is looking past a laptop on my desk to the corner of a log-cabin room (the dark blue areas are the chinking between the logs). They show the effect of the built-in image processing that happens with the YUV stream (default settings).I added more and more features to my test code and then I started seeing an interesting failure with the camera. This is shown in a youtube video I made for Infiray (link below). If you watch long enough you see what appears like some sort of analog problems in the image. Eventually the camera becomes incapable of outputting any image (although I'm still streaming data from it). I emailed back and forth with Infiray but they clearly thought I was doing something wrong. The changes added I2C traffic to the camera's CCI to do things like read the spot temp, change the palette and adjust the image processing settings. I was now using their CCI access code (with a low-level HAL to the ESP32 I2C driver).https://youtu.be/ltGCaOH7NNcI figured I had somehow damaged the module and I ended up ordering two more. I had also mentioned to them that the dev board (USB interface board) didn't work for me. So they sent 4 new USB boards (!) with the two new modules. I guess they think I am a huge klutz. The new USB boards work (they turn the camera module into a USB UVC class device) and I can use the camera from their demo app running on Windows. Two interesting things occurred after that. First the module I though was broken works just fine with their app - can run for days a time. Second, the new module exhibited the same failure in my dev system - but like the other module - only when I run I2C traffic to the camera while it is streaming.I have a theory (but not 100% convinced it is correct). The USB board also uses the I2C interface and I can read the spotmeter and change parameters/palettes/etc on that board without a problem. The difference is that it uses the 8-bit parallel DVP interface while my dev system uses the SPI interface. I don't know why that would be significant except it's really the only difference. I used my scope to watch their I2C CCI transactions and mine and, other than slight (but legal) timing differences, they are the same.In addition they have offered to create the important "libtemp" library that wraps their proprietary calibration and temperature management code for the ESP32. I just have to give them an ESP32 IDF project and instructions. I am doing this using an Espressif dev board that they will also be able to buy. Hopefully this will also give them the ability to debug what's going on.[Edit: forgot to add radiometric image]

author: Fraser
author_rank: Super Contributor
timestamp: December 16, 2022, 11:11:54 pm
content: Good workI am pleased to hear that Infiray respond to your communications and that they provided some USB interface boards. Those boards may not be expensive but it shows a good attitude towards their customers.I must say I like my P2 Pro that uses the Tiny1 core. It’s performance has impressed me during testing.Keep up the good workFraser

author: globoy
author_rank: Frequent Contributor
timestamp: December 16, 2022, 11:39:38 pm
content: Fraser - Yeah, it does seem like a nice core. Slightly higher resolution and much better frame rate than the Lepton 3.5 but for only $100 more. Not as well documented though... And with its own quirks. :-)What palettes do they support with the P2 Pro? There seem to be about 9 built-in palettes (when using the YUV422 output). I suspect most of the devices like your P2 Pro are using YUV422 output. But they won't give those palettes to me so I can't display a palette bar along with the image. This is not a problem when using radiometric data because I can use my own palettes but I loose any benefits of their image processing algorithms (which mostly seem to smooth it and increase contrast some).Also, if you don't mind, what control do they give you over the image?

author: globoy
author_rank: Frequent Contributor
timestamp: December 17, 2022, 12:01:50 am
content: I did read your reviews which were very interesting. Mainly I can see some 1:1 correspondence between the low-level libraries and functionalities they expose in the apps and desktop software.

author: Fraser
author_rank: Super Contributor
timestamp: December 17, 2022, 12:04:14 am
content: Hi,My review on this forum shows the palettes that are available on the P2 ProFrom memory they are…..White hot monochromeIronRainbow 1Rainbow 2Rainbow 3RedHot IronBlack hot monochromeYou may be interested to hear that the Tiny1 SDK USB driver for Windows works fine with the P2 Pro. It has also been shown that other manufacturers products that use the Tiny1 core are compatible at the software level as wellWith regard to control over the image, the camera operates in a full auto mode setting the scene level and span. There are brightness and contrast sliders but they do not respond like level and span manual adjusters in my opinion. The core is run pretty much in full auto mode with the choice of image enhancement on or off. The P2 Pro also has the extended temperature range and the APP permits the user to select temperature range or select Auto mode where the camera automatically changes range at 120C. In my testing, I was pleased with the measurement accuracy but have read in the user manual that +120 Celsius is considered the maximum recommended measurement temperature for the high sensitivity (high quality) range. My testing showed the onset of increased measurement error at 150 Celsius in the high sensitivity range. At 170 Celsius, the microbolometer ADC was hitting its limits which caused unusual effects as may be seen in my review.Fraser

author: jools_uk
author_rank: Newbie
timestamp: November 25, 2023, 09:09:08 pm
content: Hi,Just wondering if there was any update on this project?I looked at your GitHub repos and I see a project for the gCore using the Lepton 3.5, but nothing for the Tiny1.Did the usage of Infiray module become untenable? I see a plethora of modules available online using the module via USB-C, but I do like you original idea of making it available through an ESP32! Even your breakout board looks useful for development.Thanks,Julian

author: globoy
author_rank: Frequent Contributor
timestamp: November 25, 2023, 10:54:15 pm
content: Hey Julian,Sadly client work and other projects took priority. However I have a bit of time scheduled time for myself at the end of the year to work this project. I'm spinning the breakout board and making a carrier board to make the module more easy to package. I did get their engineers to build me an ESP32 library module for their proprietary bits of software so I'm hoping to play a bit with calibrating the sensor against a blackbody radiator. And since you input the current distance, temp and humidity into their calculations I want to see if any of those increase accuracy.Cheers, Dan

author: jools_uk
author_rank: Newbie
timestamp: December 04, 2023, 01:36:29 am
content: Hi,That's really encouraging. I should have some modules arriving soon that I'll liberate from a cheap Chinese product. If Infiray does release an ESP32 library then I believe these modules will become very useful for open sourced projects!I'll keep an eye out for any updates. Good luck!Julian

author: globoy
author_rank: Frequent Contributor
timestamp: December 04, 2023, 01:59:57 am
content: Thank you. I am actually sending out for the new break-out board tonight. I guess I'll have PCBs and parts to build one up in a week. It has the same pin-out as the Group Gets Lepton break-out board although as far as I can tell the Tiny1C doesn't currently do anything with its GPIO pins (unlike the Lepton which can drive a VSYNC pulse on one of them).

author: globoy
author_rank: Frequent Contributor
timestamp: December 09, 2023, 08:20:17 pm
content: I got boards back and a couple built-up. They seem to be working. The new low-noise 5V supply design seems ok. Here's some pix if anyone is interested. Next up is to build up the camera hardware and start the software project.

author: globoy
author_rank: Frequent Contributor
timestamp: December 09, 2023, 08:26:09 pm
content: Here's the schematic

author: globoy
author_rank: Frequent Contributor
timestamp: December 16, 2023, 07:51:38 pm
content: I have a prototype camera built up running some quick&dirty HW validation firmware. I'm using the VL53L4CX TOF distance sensor (up to 6m range) and the AHT20 environmental sensor for air temperature and humidity. Next up is to put together a proper development project for the real camera firmware and to see if it can include calibration capability and use the distance and ambient conditions to improve the Tiny1C accuracy.A final design would enclose everything and if the distance / environmental sensors prove to be effective then they'll probably also go on the breakout with the distance sensor right underneath the Tiny1C. Have to figure out how to ensure the environmental sensor is picking up air temp as uninfluenced as possible by the camera electronics or the person holding it.I'm running the Tiny1C with data output instead of YUV422 pseudo color pixels since I want to use my own pseudo-color palettes and potentially access radiometric data directly. However I am also thinking I'll use the CCI interface to get spot and area temperature values probably like the USB and stand-alone commercial products do. I'm currently getting about 19 FPS through this system including colorization and a 1.5X linear interpolation for the 384 x 288 pixel image (from the Tiny1C 256x192 pixel source).

author: abramm
author_rank: Newbie
timestamp: January 09, 2024, 09:49:01 pm
content: Hi globoy,Thank you sharing your findings!Can you please re-upload the schematic PDF? Not sure what happened but its 404.Thanks

author: globoy
author_rank: Frequent Contributor
timestamp: January 10, 2024, 02:11:08 pm
content: mmm, dunno why that happened. Here you go.

author: Aahz
author_rank: Newbie
timestamp: January 27, 2024, 07:06:15 pm
content: According to thishttps://www.eevblog.com/forum/thermal-imaging/victor-328-mobile-thermal-camera-for-android-phone/msg4737968/#msg4737968Victor 328B is Tiny1C with interface board in a case.It seems surprising for me that Victor 328B is cheaper than Tiny1C.

author: chuvakpasha
author_rank: Newbie
timestamp: January 28, 2024, 07:38:09 pm
content: Hello globoyThank you for your work. This is great.I looked at your electrical schematic and noticed that there are many unused pins on the CON1 connector. Are they reserved for the DVP interface?

author: globoy
author_rank: Frequent Contributor
timestamp: January 29, 2024, 05:48:22 pm
content: @Aahz ~ I know! I don't understand how these units are so inexpensive. Someone pointed out this unit which lists for me in the USA @ $136USD and apparently contains the Tiny1C. I am thinking of buying one, disassembling it and then putting its Tiny1C in my rig to see if it's the same as the [much more expensive] units I bought directly from Infiray.https://www.aliexpress.us/item/3256805937329423.html@chuvakpasha ~ yes those unused pins are for the DVP interface. Some of those pins do double duty as the SPI pins. The interface mode (DVP or SPI) is set through the I2C CCI interface using the VCMD_PREVIEW_START command. I'm trying to determine if it's ok to share the documentation I have and will if possible.

author: chuvakpasha
author_rank: Newbie
timestamp: January 29, 2024, 09:27:16 pm
content: I don't think the pinout of the connector is a trade secretEarlier you wrote that you receive video from the camera with a frequency of 19 FPS. Not enough ESP32 processor resources to get 25 FPS?

author: chuvakpasha
author_rank: Newbie
timestamp: February 08, 2024, 09:47:37 pm
content: Quote from: globoy on December 04, 2023, 01:59:57 amHi. Can you share me the PCB design or the gerber files?Thank you.

author: Dogman211
author_rank: Contributor
timestamp: February 09, 2024, 08:16:05 am
content: Hey! I already uploaded the documents they provided you as I did not sign such an agreement, they provided it to me as a form of "sdk" for the XH09 as that package states. The files can be found on the XH09 sdk post I made.Are you able to share a precompiled binary of a working demo utilising the sdk? I am unable to really decipher what they are trying to relay in the documentation they supplied. Since its pre compiled I think there shouldnt be any qualms or issues on their end.

author: globoy
author_rank: Frequent Contributor
timestamp: February 10, 2024, 07:32:19 pm
content: Attached are two zip files1. Gerbers for my breakout. You can see the schematic earlier w/ parts. See below for the parts I used.2. An ESP32 arduino sketch for displaying a 384x288 pixel YUV image (1.5X) with all the built-in palettes on a 480x320 pixel ILI4388-based display using TFT_eSPI (80 MHz SPI through a serial-parallel converter). It includes a port of the CCI SDK and has a simple serial command interface to access the camera's adjustable parameters. It requires a PSRAM (e.g. WROVER). I'm not making any claims for correctness or even good coding style with this code. I threw it together as an experimental vehicle to learn about the module but it should be helpful. Image acquisition and conversion to RGB on one core and image magnification and display on the other. SPI DMA engines are used for both acquisition and display.enjoy.Tiny1C Rev 2 Breakout BOMC1, C2 - Murata GRM188R60J226MEA0DC3, C4, C5 - Kyocera/AVX 06036D475KAT2AC6 - Vishay TMCP0J106MTRFCON1 - JAE Electronics WP7B-P040VA1-R8000R1, R2 - Yageo RC0603FR-0710KLU1 - Microchip TC1240AECHTRU2 - TI LP2981A-50DBVRU3 - Diodes Incorporated APX803L05-30SA-7

author: chuvakpasha
author_rank: Newbie
timestamp: May 22, 2024, 03:36:51 pm
content: Hello globoy.Tiny1C core has two connection protocols - SPI and DVP. Can you provide the connector outputs for the DVP interface?Thank you.

author: Alejandro Borgea
author_rank: Newbie
timestamp: May 26, 2024, 04:54:36 am
content: Hello. I am a master's student at the National Polytechnic Institute of Mexico City. For the preparation of my thesis project, I acquired, a while ago, a tiny 1c thermal camera and I am trying to acquire the frames it outputs in 10/14 bits from a python application using the USB driver. However, I cannot succeed. I feel like I need the camera data sheet and know the camera's registers and commands. Could you please provide me with that information? Thanks in advance.

author: globoy
author_rank: Frequent Contributor
timestamp: May 26, 2024, 03:21:54 pm
content: Here's the connector info. The USB driver uses a different API than what I have, sorry.

author: board_boy
author_rank: Newbie
timestamp: August 15, 2024, 03:01:13 pm
content: hey, thanks so much for your posts I learned a lot about the tiny1-c. I tried to download the schematic but its says it cant be found, any chance you still have it or it is posted somewhere? thanks!

author: globoy
author_rank: Frequent Contributor
timestamp: August 16, 2024, 05:47:58 pm
content: Attached find the schematic again and the docs I have for the SPI interface.

author: JellyBee
author_rank: Newbie
timestamp: August 17, 2024, 12:48:49 pm
content: Hey Globoy!Apparently the Doogee V20 rugged mobile uses the same sensor and is also a decent price around $300USD, obviously including the phone.They advertise it as a higher resolution sensor, but it's actually the Tiny1C apparently. You can also find spare camera modules on ali for $15 which could be interesting.I would be interested in contributing to a ESP32/Thermal project if you are still working on it.

author: vladvyskocil
author_rank: Newbie
timestamp: October 04, 2024, 06:17:10 pm
content: Quote from: globoy on December 09, 2023, 08:26:09 pmIt returns 404 for this file. Could you please share the schema/layout again? I am playing with Tiny1C module and your board is really useful for playing with the module. Thank you

author: globoy
author_rank: Frequent Contributor
timestamp: October 05, 2024, 07:45:36 pm
content: Can you try downloading again? It's all there for me.I have been making some progress on my Tiny1C camera (actually 2 cameras now). Hope to share some stuff in a few weeks (it all has to be done on the side).

author: vladvyskocil
author_rank: Newbie
timestamp: October 06, 2024, 10:51:45 pm
content: Thanks @globoy! It works now, it might be some temporary issue.

author: Riotpack
author_rank: Regular Contributor
timestamp: October 15, 2024, 06:41:06 pm
content: Hi, I have Tiny1C module that I would like to use again. I had an accident with my Doggee phone and it is beyond repair - the module has the markings TINY1C_ASIC_BOARD_1_3_PCB and the 40 pin connector went to a sub PCB with the markings A201_IRSUB_01_DC ZN133T with components under a can which lead to a 24 pin connector. I was wondering if anyone can help me to make use of this module again? The sub board can be seen herehttps://nl.aliexpress.com/item/1005006029091803.html?src=google&aff_fcid=9db5d170c14549c49d2e99f3acf93026-1729017722422-03698-UneMJZVf&aff_fsk=UneMJZVf&aff_platform=aaf&sk=UneMJZVf&aff_trace_key=9db5d170c14549c49d2e99f3acf93026-1729017722422-03698-UneMJZVf&terminal_id=f097aeebcffd46c980a75a2374412495&afSmartRedirect=nI cannot use the sub board anymore, so I just have the module with 40 pin outout.

author: globoy
author_rank: Frequent Contributor
timestamp: November 13, 2024, 07:15:06 pm
content: Here's a progress update on my Tiny1C camera project. It's now two cameras that I'm - unoriginally - calling iCam and iCamMini (along the lines of my earlier Flir Lepton based tCam and tCamMini cameras). iCam is a handheld unit with a local LCD touchscreen and iCamMini is a smaller unit (hopefully suitable for drone use) with either a NTSC/PAL video output or Web Browser access via Wi-Fi.My main goal with this series of cameras is to play with calibration and sensor-based environmental compensation for improved accuracy of a low-cost thermal imaging camera. To that end the cameras can support an optional VL53L4C TOF (up to 4M) distance sensor and/or a AHT50 ambient temperature and humidity sensor. Currently I can include distance and ambient temperature in calculations to estimate the atmospheric transmittance between the bolometer and a target. I support 1-point or 2-point calibrations using a blackbody radiator. I've done some testing showing a positive effect on device accuracy but I need a larger blackbody radiator with a larger temperature range to do more sophisticated calibration and testing.I'm using LVGL for the user interface and because I don't know much about web programming I'm also using it for the web interface thanks to emscripten. There is one code project that builds three binaries. One for iCam, one for the iCamMini hardware and a Webassembly program that's sent to the browser to implement the GUI portion there. Most code is identical between cameras. The GUI does some automatic adjustment based on the screen it's currently being displayed on.I'd say this is a fairly complete proof-of-concept or demo - e.g. I've done 90% of the work and have the other 90% to finishOf course the technical aspects are fun and interesting to me but I'm not sure what, if any, business there is with this. In the past I worked with Group Gets to distribute my tCamMini to anyone who was interested in it and they took care of the issues of shipping the Leptons. There really isn't anyone doing that with the Tiny1C and I don't want to and may not be able, as a US citizen, to distribute them. I am thinking of rev'ing the breakout board and making it available on tindie. My gCore is there already and I could also make the iCamMini main board available there. But would people figure out a way to buy Tiny1C modules or would they even want to build their own cameras when so many cheap phone dongles exist. I know this crowd tends toward commercial (or historic) units but I am interested in your opinions.In the next couple of posts I'll share some more info for each of the two units.

author: globoy
author_rank: Frequent Contributor
timestamp: November 13, 2024, 07:47:18 pm
content: The iCamMini camera is based around a new hardware PCB called iCamCntrl (I know, I have a problem with naming things...). The Tiny1C breakout plugs into it. I hacked the distance and temp/humidity sensors onto the breakout and added a battery-backed RTC breakout so I can correctly timestamp saved images. The next rev of iCamCntrl will have the RTC integrated and I am thinking of making a small breakout that would contain the distance and temp/humidity sensor that could plug into the Tiny1C breakout.This system is running on an ESP32 Pico module.It has two modes of operation: Analog Video output or a Web interface accessible via Wi-Fi. The idea with the video output is to support longer-distance analog transmitters for use on drones or other vehicles. Output is monochrome and the image is pretty good although there are some DAC output switching artifacts visible. I'm probably going to add a 50 ohm video amplifier to the next spin of the iCamCntrl board so I can get better levels.It even drives an old-school analog monitor.In Wi-Fi mode the camera can act as an AP for mobile use or as a STA device for inclusion in an existing network.

author: globoy
author_rank: Frequent Contributor
timestamp: November 13, 2024, 07:59:36 pm
content: The iCam camera didn't get any new hardware.You can see how the GUI scales to fit.Calibration is fairly automated. You set the Blackbody radiator temperature and emissivity and then run a calibration. Two point calibrations take a high and low Blackbody temp. I'm still understanding - thanks to almost no documentation about this - what other Tiny1C parameters affect calibration.Performance wise I'm getting about 20-22 FPS for iCam video out, 18-22 FPS for Web view and 10-12 FPS for iCam. So still some tuning to do on the handheld platform. I was getting about 18-19 FPS with my test program that didn't use LVGL. It could be DMA setup/timing or possible some clipping that's happening that I don't know about.

author: globoy
author_rank: Frequent Contributor
timestamp: November 13, 2024, 08:01:15 pm
content: Well I screwed up an image. Here's the iCamMini rear.

author: RO
author_rank: Contributor
timestamp: November 13, 2024, 11:31:39 pm
content: Very impressive project and love the split in two more dedicated camera's. Great workQuoteWell I am now; this is awesome!But to be fair it's probably a niche thing, the drone/cvbs module however rocks, i would love a write-up on the process to!

author: globoy
author_rank: Frequent Contributor
timestamp: November 20, 2024, 10:51:22 pm
content: I'm moving this project to hackaday.io where it's probably a better fit. Leaving this note here as a future breadcrumb.https://hackaday.io/project/199352-more-accurate-thermal-imaging-camerasI also have a few assembled Tiny1C breakout boards if anyone is interested. They're tiny and can probably be shipped in an envelope. Let me know if interested.

author: JXstaystonight
author_rank: Contributor
timestamp: November 23, 2024, 04:22:34 am
content: There seems to be tiny2c now, but I haven't asked for a price.https://www.raytron-microelectronics.com/long-wave-infrared-camera-modules/infrared-thermal-imaging-module-tiny2-c-series

author: globoy
author_rank: Frequent Contributor
timestamp: November 23, 2024, 03:07:48 pm
content: Yes. I've seen that. I filled out their form but no-one replied back to me.

author: globoy
author_rank: Frequent Contributor
timestamp: April 10, 2025, 09:36:35 pm
content: From the FWIW department, I posted the design to my Tiny1C cameras (both firmware and hardware) to github. Too bad since international relations are so screwed up right now and the Tiny1C is unavailable to us in the west, at least without stripping them from a dongle The Tiny1C is a pretty capable core and I think my cameras turned out to be very functional and useful. Anyway for the few guys here who were interested in this core:https://github.com/danjulio/iCam