Is the TE-M1 a software downgraded TE-Q1 ? - Page 1
Forum section: electronics / general

author: Marvin_324
author_rank: Newbie
timestamp: August 30, 2018, 02:10:16 pm
content: Hi guysI recently got a TE-M1 and a TE-Q1 thermal imager on my desk that I need to integrate in Linux.From the outside these two imagers look exactly the same - Same housing, same lens, same packagingThe thermal sensors also have the same size. The only visible difference is the TE-M1 imprint on the camera (TE-Q1 has no imprint).I did not want to open the housing as I need to return the cameras when I am done with my work but it looks like the TE-M1 has the same hardware as the TE-Q1 and is just downgraded by software.Can anyone here confirm my assumptions?If it is really the same hardware?Has anyone tried a "Firmware upgrade" for the TE-M1 to get from 240 x 180 to 388 x 288?It would be good to know if this is possible as I am thinking of getting a TE-M1 for myself.There is much to find about the TE-Q1 in this forum, but nothing on the TE-M1 (or I was too stupid to find it).I attached some pictures.

author: Fraser
author_rank: Super Contributor
timestamp: August 30, 2018, 04:39:18 pm
content: I cannot confirm your hypothesis, but it sounds sensible.In the world of Microbolometers, cost has been reduced by scaling up manufacturing to provide a lower cost per FPA. Manufacturers of the FPA's normally have set sizes of array, such as 160 x 120 and 320 x 240 etc. The 'mass produced' FPA may then be installed in any number of different cameras and it's resolution set in the firmware. 'Windowing' is offered by many Microbolometers to allow an OEM to set the cameras resolution with ease. As you will know from the E4 thread, the best situation for a manufacturer is often to use a common hardware platform to achieve cost savings due to scale, then hobble some models to meet the needs of less demanding tasks or cheaper market sectors. Building unique cameras for each market segment would make little sense these days.Be suspicious of any 'unusual' resolutions that depart greatly from 160 x 120, 320 x 240, 384 x 288 or 640 x 480 as such normally suggests windowing in firmware or down-scaling. OEM's who wish to maintain the same FOV and lens across a range do this through pixel combining, down-scaling or other video processing techniques. The E4 uses video processing to degrade the resolution as the FOV and lens are the same in all Ex models.Whether the firmware in one of these cameras can be easily or economically changed to release the Microbolometers full resolution very much depends upon how keen the OEM is to prevent such activities !Common microbolometer resolutions are shown on the ULIS page here......https://www.ulis-ir.com/catalog/thermal-image-sensor.htmlFraser

author: Vipitis
author_rank: Frequent Contributor
timestamp: August 30, 2018, 04:58:17 pm
content: That is interesting.the TE-M1 is like 449€ from the store directly and having a resolution of 388 x 288 with it would be really great.So let's check the facts. Only the european store and website lists it. It looks identical:https://www.thermalexpert.eu/english-1/product-overview/even the data sheet is the same with new values for resolution and fov badly copied in(in other colors, size, font and places)... they offer a 30hz verison of the low resolution model?both sensors use 17μm sensors... and i3 only sells the core in two resolutions:http://www.i3-thermalexpert.com/products/oem-core/andhttp://www.i3system.com/eng/n_product/product101.htmlIt would be great if you could do some tests but taking pictures from the same place with both cameras and all lenses you have. the FoV change sounds like a window mode to me as well... next step would to compare files, maybe try to get firmware files like updates and see how the differ.

author: Fraser
author_rank: Super Contributor
timestamp: August 30, 2018, 05:12:16 pm
content: I just looked at the datasheet, thanks to Vipitis providing links.The difference in resolution between the M1 and Q1 models is 1\1.6 in the horizontal plane. This matches the almost 1\1.6 difference between the two cameras FOV when fitted with a 6.3mm lens. This screams windowing to me. Only the centre portion of the microbolometer is being presented to the user. Some OEM's effectively just use the 'electronic zoom' feature to lock a maximum FOV and resultant resolution. So it would be like a Q1 model set at x1.6 Zoom.Fraser

author: Vipitis
author_rank: Frequent Contributor
timestamp: August 30, 2018, 08:59:08 pm
content: hmm... this gives more hints as the Q1 (and V1) offer digital zoom, to like 120x160 and some other factors... not 240 x 180 specifically.

author: Ben321
author_rank: Frequent Contributor
timestamp: August 31, 2018, 01:37:40 am
content: The hard part about hacking the firmware, is learning HOW to hack the firmware. Unless they are designed to have the end user upgrade the firmware from firmware downloads from the hardware's manufacturer (in which case the manufacturer's website will provide a firmware flashing tool), there would be no easy way to do it. You would need to see if the microcontroller in the device supported a USB command for flashing the firmware, and this would require de-capping the microcontroller itself (carefully grinding off the ceramic case of the mincrocontroller chip, without damaging the silicon underneath), and then put it under a microscope and look at the wiring of the transistors. From that you should be able to figure out the hardwired program in the microcontroller, and then decompile the bit-code into assembly code (assuming you know the microcontroller's instruction set). From that you should be able to find out what USB commands it recognizes. However, this would require something like an FBI computer forensic lab, with MILLIONS of dollars worth of reverse-engineering equipment in order to properly de-cap the microcontroller without damaging the silicon.

author: tmbinc
author_rank: Frequent Contributor
timestamp: August 31, 2018, 01:59:21 pm
content: Rule 1: Don't panic.What you describe is the worst-case scenario. I haven't seen good board pictures, but it seems the system is build from a few discrete components. Firmware could be stored in a discrete flash part, for example. Has someone analyzed the regular USB connectivity? Maybe it's as simple as setting the right resolution which the host software doesn't do if it doesn't detect the right Camera. Or maybe there's a USB command that is buggy and could be used to read or write more or arbitrary memory from the camera. Has someone analyzed the Android or Windows software to see if there is a hidden firmware update ability inside? Has someone poked at all test points, maybe there's a debug UART or something else interesting to observe?I can't rule out that they spent a lot of effort into securing this - and this is all assuming that it uses the same sensor, which - while likely - hasn't been confirmed yet. But don't panic because it _could_ be hard. A good strategy is to assume that the simplest method works. Only once you ruled it out, try the second-simplest, etc. Assuming upfront that only the most complicated method works, and then saying "but I don't have the equipment" is not a very viable strategy.

author: Ben321
author_rank: Frequent Contributor
timestamp: August 31, 2018, 08:43:37 pm
content: Quote from: tmbinc on August 31, 2018, 01:59:21 pmThe problem is, while a few people on this site have bought the Q1 or M1, nobody has opened it up yet (I guess they don't want to risk damage their expensive equipment), so we have no way of knowing what's really inside (such as the model number of the microbolometer itself).

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 01, 2018, 01:53:30 am
content: Hm yeah, no teardown of either camera yet. Maybe different i3 cameras that were software downgraded to compare to?The windows software can be downloaded here....http://www.i3-thermalexpert.com/support/analysis-tool/I think there is a uncompiled version as well, but I haven't been at my computer to look into it. I don't think the USB communication would just set the command to dissolve the digital zoom, as it's most likely locked far deeper in the system.If we see the insides we can try and assume where the firmware is located on. Try to access the Q1 version and flash it onto the M1 if the flash utility is available from the manufacturer. I haven't read about any firmware updates for the TE at all.

author: Marvin_324
author_rank: Newbie
timestamp: September 01, 2018, 12:39:27 pm
content: I made a picture with the two cameras from the same spot and integraded the TE-M1 image into the TE-Q1 image.Like you guys assumed it looks like windowing is used.The strange thing is that for some reason they did not put the window in the center but in some corner of the sensor.I do not understand much about thermal imaging but this doesn't seem right.Maybe I should ask if there is a firmware upgrade to fix this

author: Fraser
author_rank: Super Contributor
timestamp: September 01, 2018, 01:37:55 pm
content: That suggests they are not using an electronic zoom function, but rather use a limit on the number of rows and columns that are used from the microbolometer ROIC. That is to say pixels 1 to 240 of 388 and 1 to 180 of 288 in their respective row or column. YUK! That means you get a corner centric image that is using the worst areas of the lens characteristics. A lens usually performs best at its centre and distortion/ defocussing tends to creep in at the edges. Thermal camera lenses are relatively simple designs, unlike modern Digital SLR lenses. This would not be my choice of resolution crippling options ! There would be the option to move the microbolometer to align the centre of the 240 x 180 microbolometer 'active' area to the centre line of the lens, but I very much doubt they would bother to do this in the M1.Your pictures also appear to support my doubts.Fraser

author: Fraser
author_rank: Super Contributor
timestamp: September 01, 2018, 01:49:15 pm
content: It would be interesting to view a grid with the two camera to see how much distortion exists in the H and V planes for each. The M1 may look pretty weird unless they have oversized the lens system or have a really excellent lens geometry.A cake cooling grid heated under hot water would work as a grid, especially if not a shiny type. An alternative is strips of Aluminium foil placed on a radiator. The difference in Emissivity makes the required grid image.Fraser

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 01, 2018, 02:00:08 pm
content: If this in infect the case... It is really stupid. Not only image distortion will happen but also it is off center aim.Maybe this is the attack angle on the support. Say that you believe your sensor has an issue because the center where you aim at appears at the very corner of the frame. If they don't write you off and work on this, they might just read out a different part of the sensor instead. At least we get some firmware and maybe utilities to look at.Looking for the grid image, same setup could tell us if they somehow adjust for edge distortion.

author: joe-c
author_rank: Frequent Contributor
timestamp: September 01, 2018, 09:59:00 pm
content: Hello,it would be interesting to see if the TE Q1 and M1 are similar.My TEQ1 is no more in normal case, my hardware mod is not done, but the core is fixed to a Shutter and Lens combination.@ Marvinyou have both devices, please do the following:- connect the M1 to your phone- connect the Q1 to a active USB-Hub (just provide USB power), wait a few minutes- Remove the lens of the Q1 and take a image as close as possible... with the Thermal camera you can see the FPGA array behind the detector window.- then change both cameras and do the same.the result images will have different resolution but it should be possible to see if the Sensor array have the same size.best wishesjoe-c

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 02, 2018, 04:10:57 pm
content: I have been eyeballing a new thermal camera for some time. The new TE-M1 is nicely priced and can so far only be purshases though the European shop. If I can manage to get it in 30hz with a license.I'm okay with opening it up and identifying the components, as soon as we get a hint to a possible firmware modification.

author: Fraser
author_rank: Super Contributor
timestamp: September 02, 2018, 05:39:48 pm
content: There is also the issue of microbolometer specific calibration tables. If the M1 is calibrated at the lower resolution then any 'upgrade' will need to include creating new calibration tables. Hopefully the camera is calibrated at its full resolution and then the hobbled to the lower spec.Fraser

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 02, 2018, 06:24:51 pm
content: if the whole idea is to sell the same hardware at different price points. It would be tedious to differentiate on a manufacturing level. It could be that the lower spec units use sensors from a lower bin with worse performance or maybe other issues. The easiest would be to flash the firmware from an image onto the different devices after all manufactureing and testing/calibration. And there should be two different firmware versions with the sensor readout artificially limited on some of them.Given that they use a specialized process to install all firmware and software on the dives that works in a factory setting - it won't be a simple USB plug in and wait for the end consumer.I will try to investigate more into how it's done by talking to i3 and asking for some firmware files and checking patents and agency filings with teardowns.

author: Klaus
author_rank: Contributor
timestamp: September 02, 2018, 08:13:35 pm
content: Does anyone know if a version with 25hz is available?

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 02, 2018, 11:32:47 pm
content: there is supposed to be a 30hz version for the M1 if you got a export license. But I have to ask them how.I looked through the international website again and found that they even sell a Sensor only with 192x144 resolution. It's 12 um pich so won't be in any of the TE1 models. But it strangely has he same dimensions as the very same Sensor with 384x288 resolution. Check here:http://www.i3-thermalexpert.com/products/qvga-uncooled-infrared-detector/So they not only sale the TE models as smartphone imagers, also cores for OEM and developers as well as sensors for integrating. On the website they talk about a EQ2 and EV2 version of the core in 12um - which makes me believe that they will soon put out a second series of their imagers. How soon that will happen - can't speculate on this. But maybe the european shop is triying to get rid of stock by simply crippling the device and sale at a lower price.My current theory to why the M1 only showed up on the european store.A sign that worries me is that they advertise their sensors with windowing ability, so it is possible to cripple the resolution at a hardware level.

author: mahony
author_rank: Regular Contributor
timestamp: September 03, 2018, 06:09:08 am
content: I just bought a TE-V1 30Hz from this seller - no issues there but they ask a somewhat higher Price for the 30Hz Version - not sure how much on the TE-M1 actually.Buying it is no pain here. The distributer just takes the money and sends you the camera - no paperwork at all. And I can confirm that the V1 does the 30Hz easily on a PC - on my Xiaomi Rednote 4 it does probably ~15fps @640x480 and much faster in the lower resolution modes. I did not measure it exactly so far. With the M1 30fps should be o.k. on any medium range phone I suppose.I also started looking at the new version of the new SDK (which also seems to support the TE-M1) and there is actually no serious difference between the Q1 and V1 except for some of the calibration data being hidden in different parts of the initial Frames. Even the USB VID and PIDs are the same on all cameras... ;-) And as is the case with the Q1, the performance is seriously crippled using the the phone App compared to going raw mode on a PC or any other platform! I'll post some pictures tonight maybe.Edit: Looking at post 9 again I have to check if the new SDK i have really supports also the Q1 and M1 cameras - I think it might have been V1 only?! If so I might be able to tell you rel. quickly if the M1 just reads a partial frame or a full frame and discards some of it for display. The other option is downloading the current apk and extracting the java code from there...

author: mahony
author_rank: Regular Contributor
timestamp: September 03, 2018, 06:30:57 am
content: @Marvin: I can send you over my Code/Software to read raw data from the TE-Q1 using the Zadig WinUSB Driver. You can try this with the TE-M1 and see what happens.An additional note on the OEM cores. I initially tried to get one of those directly from i3 but this is not possible w/o being a company of some sort they want a tax number at least.The 17µm cores should be readily available and the 12µm are now shipped to first customers - not me unfortunately due to lack of a tax number ;-)

author: Ben321
author_rank: Frequent Contributor
timestamp: September 03, 2018, 09:30:54 am
content: Quote from: mahony on September 03, 2018, 06:30:57 amWhy use Zadig WinUSB installer? From my understanding, there is a free-to-download SDK for the units from I3 (or Thermal Expert, or whatever the company is called now). It should be right their on their website (or it was to the best of my memory a couple years ago). This should provide the needed drivers and API to control the camera from within C++ or even Visual Basic (as long as the DLL file for the API exports STDCALL functions instead of CDECL functions).

author: mahony
author_rank: Regular Contributor
timestamp: September 03, 2018, 10:00:25 am
content: Yes, right. You can use the SDK but you don't have to.I prefer to not use it as it does some stuff I do not like (i.e. image processing, speed) ... Plus it offers more 'flexibility' when tinkering with 'unkown' devices such as the TE-M1. ;-)

author: Ben321
author_rank: Frequent Contributor
timestamp: September 03, 2018, 10:26:39 am
content: Quote from: mahony on September 03, 2018, 10:00:25 amDoesn't the SDK allow you access to the raw unprocessed image from the camera?

author: mahony
author_rank: Regular Contributor
timestamp: September 04, 2018, 10:40:44 am
content: Quote from: Ben321 on September 03, 2018, 10:26:39 amYes, but as soon as you want to get to the temperatures you get either the full Image blurred or you have to do it Pixel by Pixel which is slow and not very comfortable. Besides that I do most of my coding in C# which wasn't a big deal with the old SDK structure as there were just like 10 DLL calls but the new one returns a pointer to camera class which is a real pain when using it apart from C/C++ i.e. through C# marshilling/interop.

author: Ben321
author_rank: Frequent Contributor
timestamp: September 04, 2018, 07:36:08 pm
content: Quote from: mahony on September 04, 2018, 10:40:44 amDoesn't the SDK provide both raw sensor values, and a table of radiometric calibration data? That way you can perform the temperature calculations yourself to convert pixel values into temperature values, using your own temperature calculation functions in software you have created yourself, and don't need their API function for calculating temperature.

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 05, 2018, 08:25:38 pm
content: So.... I asked the support about the "alignment" issue of the not centered sensor crop/window. They got back to me and confirmed that a software and driver update is planned for end of September but they can't tell me if the issue will be resolved with it.Quoteso we will get an update for the drivers... I really hope it is actually not the end device software only, so people are able to look into that. I will keep pushing them on the issue and see if they can confirm anything to me that we speculated so far.

author: bap2703
author_rank: Regular Contributor
timestamp: September 06, 2018, 04:27:05 am
content: If a software update can change the field of view that would be VERY interesting

author: Bill W
author_rank: Super Contributor
timestamp: September 06, 2018, 12:19:16 pm
content: If the sensor is underscanned (eg 320x240 on a 384x288 sensor) then outputting the whole 384x288 will change the field of view if you do not resort to pixel combination.It all depends on how the windowing:output scaling is done.Bill

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: September 06, 2018, 12:27:23 pm
content: It's possible, though probably unlikely, that the low-res version uses a device-specific window to avoid bad areas on lower-yield sensors.

author: tonykids
author_rank: Regular Contributor
timestamp: September 06, 2018, 01:46:55 pm
content: Find that xinfrared also released T2S(240*180) and T6S(640*512)For T2S,can it be a software downgrade of T3S?

author: Fraser
author_rank: Super Contributor
timestamp: September 06, 2018, 03:21:03 pm
content: With regard to changing the configuration of cameras to release greater resolution, much depends upon how the resolution has been degraded. There are several methods that may be used to lower the resolution presented by a thermal camera, some, like the FLIR Ex, Exx etc series are simply a configuration file that needs to be modified to release the full resolution. Other camera designs use the code in the FPGA to both set the displayed resolution and to protect it from change. It can be challenging to reverse engineer an FPGA configuration file especially if the FPGA has integrated FLASH configuration memory and Flashlock or similar protecting it.I feel we, as a community, have been very fortunate with the way that FLIR designed and configured their cameras in recent years. I have seen no similarly easy to reconfigure cameras from other manufacturers. Just the use of an FPGA in the image processing path can reall spoil your day when trying to reconfigure a camera.I hope that the TE-M1 is not using an FPGA to set windowing but sadly such is a definite possibility as it is what I have seen in other cameras.Fraser

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 06, 2018, 03:37:44 pm
content: my greatest hope right now is that they somehow move the window to be centered. and we can look at the firmware update and compare it side by side... even the assembly or machine codes will show the place where the instruction for window is and maybe we can go from there. We will wait for the software update end of September - it is supposed to be for the smartphone app. if they are smart about it... they could ask you to sent it back to adjust the window and do the firmware flashing themselves.

author: Fraser
author_rank: Super Contributor
timestamp: September 06, 2018, 03:44:54 pm
content: Hi Vipitis,I agree, the M1 configuration should be amended to bring the window to the centre of the microbolometer.As we know, FPGA's are great as they offer field upgradeability unlike one time programmable arrays.Let us hope the update sorts out the centring issue. Whether the update can help in better understanding how the camera is configured.... I have no idea as I am a Dunce when it comes to modern codingFraser

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: September 06, 2018, 04:06:10 pm
content: Do we have a photo of the other side of the PCB? Looks like a fairly big SPI flash chip on the top side - could be config if it's just an FPGA or code for an MCU

author: Bill W
author_rank: Super Contributor
timestamp: September 06, 2018, 04:07:21 pm
content: Quote from: tonykids on September 06, 2018, 01:46:55 pmIf you believe the datasheet, no as the 640 x 512 is 14µm pitch, the others are 17µm pitch.Bill

author: tonykids
author_rank: Regular Contributor
timestamp: September 07, 2018, 01:05:32 am
content: Quote from: Bill W on September 06, 2018, 04:07:21 pmI mean the T3S(384*288) downgraded to T2S(240*180),because in some chinese fourm said that T3S uses the sensor from I3

author: Bill W
author_rank: Super Contributor
timestamp: September 07, 2018, 10:14:59 pm
content: OK, my misunderstanding.As the T2S has a 6.8mm FL lens and the T3S has 13mm FL lens, it is not the same as the Flir E4/E8 scenario which uses the same lens across the range.Unfortunately the datasheet does not include field of view but on that evidence, and iraytek do not do a 240x180, I would suspect it is windowed down not subsampling as FLIR do.If 'upgraded' you may get a 384x288 image but the corners would be pretty grim, and that assumes they have full frame calibration data at all.

author: eb4fbz
author_rank: Regular Contributor
timestamp: September 08, 2018, 05:32:11 pm
content: Quote from: mikeselectricstuff on September 06, 2018, 04:06:10 pmThat's a Micron N25Q128A indeed, very easy to dump for further analysis.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: September 08, 2018, 07:44:13 pm
content: Quote from: eb4fbz on September 08, 2018, 05:32:11 pmThough if it's FPGA bitstream, tricky to do anything with, unless it also contains code for an embedded cpu, obvious config area, or multiple bitstreams for different variants

author: Marvin_324
author_rank: Newbie
timestamp: September 10, 2018, 06:04:32 pm
content: Sorry to keep you all waiting - I had a very busy week...I got a first update from i3 - Android app only.The image of the M1 is now centered compared to Q1 (attachment) - the small shift to the right is probably my mistake as I just did a quick test.To me it seems they definitly use the same sensor and same hardware on Q1 and M1 imager.Another interesting observation is that the 240 x180 viewing window on the M1 seems dynamically assigned and not hardcoded.old Android app .... image in cornernew Android app .... image in centerSo it might be possible to figure out the function call that sets the origin.If we have that its just taking one picture from every corner and putting the image together to get the Q1 resolution.Or maybe its even possible to increase the viewing window.

author: frenky
author_rank: Unknown
timestamp: September 10, 2018, 07:31:56 pm
content: Try running app from their android sdk to see if you get whole image:https://drive.google.com/folderview?id=0B36fN1Q-Tg1AQ1l0aWFGVnVSUTg&usp=sharing

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 10, 2018, 10:04:59 pm
content: okay, that is really really interesting behavior. Do you have the old .apk saved somewhere? It would be interesting to know if it is able to go back again. That would tell us if they included a firmware flash with the new version to change the windowing - or if the app calls for a limited readout only.Someone knowledgeable could potentially tap into the USB communication and figure it out. What about the desktop software - how does it behave?If the imagers tells the app that it is the M1 version and the app than requests a limited sensor readout, it should be possible to just tell the app that you are a Q1 and supply a full readout.Their update showed that it can be accessed with a software directly, so no hardware manipulation needed.Great news, we are on to something. I sadly don't know a lot about decompiling .apks but it feels like it is possible.The price point of 499€ is very competitive if we manage to get the full sensor resolution.

author: Fraser
author_rank: Super Contributor
timestamp: September 10, 2018, 10:32:34 pm
content: It also proves that the full resolution is included at the NUC and calibration stages in the factoryFraser

author: mahony
author_rank: Regular Contributor
timestamp: September 11, 2018, 08:46:46 am
content: Looking at the current SDK files / apk(s) I assume there are some command sets that are transfered to the camera.Is there another Android App dedicated to the M1 or can you use the same app for both the M1 and Q1?If you can provide both Android apps (old and new) they can be decompiled and changes isolated. Probably there is a possibility in software to just readout the full frame. Maybe they just use a software ROI at the moment - that would be even easierer!What I find really interesting is the fact that the new M1 is also available as 30Hz Option - so even more interesting for only 499€!

author: Fraser
author_rank: Super Contributor
timestamp: September 11, 2018, 09:26:44 am
content: It would be worth checking the USB ID on both camerasFraser

author: mahony
author_rank: Regular Contributor
timestamp: September 11, 2018, 12:00:01 pm
content: I would assume they are the same for both cameras. At least the TE-Q1 I own and the TE-V1 use the exact same USB VID and PIDs - I would be surprised if it was different for the M1. There are 3 id numbers embedded in the first flash frame header - those seem to be used to distinguish between different camera models. For the V1 it seems to be 1.1.1 but I have not yet checked the Q1's respective numbers.@Marvin_324: did you receive an SDK (preferably the Android one) for the M1? Or maybe both versions for M1 and Q1? If not try to get hands on it please. I have current(?) SDKs for Q1 and V1 but missing the M1 so far. At least I cannot see any support so far in either for the M1 camera.@Vipitis: decompiling a .jar or .apk is relatively easy and can be done from your browser, for example here:http://www.javadecompilers.com/

author: Fraser
author_rank: Super Contributor
timestamp: September 11, 2018, 12:40:21 pm
content: Mahony,I mention the USB ID only because it is a known way of influencing software behaviour with otherwise identical hardware. There can be a lot of different USB PID's if a manufacturer desires such. Just look at HP in the attached link. The advantage for the OEM is that it is easy to impliment, challenging to change without hacking and prevents a software with greater capabilities working with an otherwise identical product that was supposed to operate with lower capability software only.http://www.linux-usb.org/usb.idsIt is only a thought and easily checked. As you say though, the handshaking between host and camera can easily achieve the same result. In this case it just directs the software to configure the image processing in a particular way to limit resolution.Fraser

author: mahony
author_rank: Regular Contributor
timestamp: September 11, 2018, 07:20:15 pm
content: Hi Fraser,yes I know about USB PIDs but as I already mentioned - the Q1 and V1 use the exact same VendorID=0x0547 and PID=0x0080 - so I would be surprised if the M1 would be different. I agree it is worth checking but the answer might be 0x0547 and 0x0080.

author: IwuzBornanerd
author_rank: Frequent Contributor
timestamp: September 11, 2018, 08:22:53 pm
content: But could there be something different in the device descriptor information, or is it required to be the same for a given product ID & vendor ID? Anything that could be different and read by the software could be used by the software to differentiate units.

author: Marvin_324
author_rank: Newbie
timestamp: September 12, 2018, 09:50:38 pm
content: As for hidden firmware update in the apk file - i don't think so:You can go back and forth between old app and new app and the results are the same:old Android app .... image in cornernew Android app .... image in centerWill do some more test soon.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: September 13, 2018, 07:12:28 am
content: Could you capture the USB traffic on the two versions to see if there are any obvious differences?

author: mahony
author_rank: Regular Contributor
timestamp: September 13, 2018, 03:43:40 pm
content: @Marvin_324: could you please upload or share link to the current .apk / App download or is it already in the PlayStore?RegardsToni

author: Marvin_324
author_rank: Newbie
timestamp: September 20, 2018, 09:29:56 am
content: Here you go:https://files.fm/u/dcsvjpcwold version is in the play store

author: mahony
author_rank: Regular Contributor
timestamp: September 20, 2018, 12:10:50 pm
content: To be honest I almost do not want to say this because it renders my V1 purchase virtually obsolete. I mostly wanted a good, hackable 25Hz+ camera core - the VGA resoultion is/was just a bonus mostly.I just had a very quick lock at the Java code and from what I have seen it always receives the full 384x296 raw frame from the sensor and just uses only a portion of it - hence it was easy for them to fix the actual used part of the image.That means using the Zadig Driver and the attached small C# program you might be able to get a full 384x288 image from the M1 camera. Give it a try... if it works the M1 has the potential to be the cheapest QVGA 30Hz imager with very reasonable image quality available at the moment! If I knew this 4 weeks ago I would have bought the M1 instead.The program requires a Windows PC and .NET 4.5 and the Zadig driver installed for the M1 - the Q1 should work with either the Zadig Driver or the I3 DLL.

author: Fraser
author_rank: Super Contributor
timestamp: September 20, 2018, 12:28:30 pm
content: A very wise fellow forum member once described these Phone Dongle type thermal cameras to me as being similar to SDR receivers. They are 'just' the hardware front end and all the processing of the output is down to the host and its software. As such, these dongles have the potential to be highly configurable and their output a gift to those clever enough to write their own host code 🙂With the TE series, at least you are working with some decent hardware at the front endFraser

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 20, 2018, 12:59:47 pm
content: If anyone manages to get a full resolution image out of it, I am going to order one. I wonder if it would be possible to get out images in full resolution through an Android phone as well.Right now I am trying to find out how to get a 30hz version of the imager and if my phone would work for it.Far better than the Seek Thermal Pro if this gets to work.

author: bap2703
author_rank: Regular Contributor
timestamp: September 20, 2018, 01:26:19 pm
content: There is this m_fiMVGAPlusSensorWidth = 240;And thatm_fiQVGAPlusSensorWidth = 384;Can this be changed ?

author: Fraser
author_rank: Super Contributor
timestamp: September 20, 2018, 01:43:10 pm
content: Potential buyers of M versions for upgrade need to take note of what happened with the FLIR E4 when it got upgraded. The OEM will likely act quite quickly to attempt a countermeasure to any upgrade in order to protect their product sales. Sadly the fact that any potential 'hack' will be in software also makes it very vulnerable to countermeasures.We could be looking at a rerun of the FLIR E4 upgrade story 😄Fraser

author: bap2703
author_rank: Regular Contributor
timestamp: September 20, 2018, 02:02:04 pm
content: There are a few lines selecting between M and Q like this :Code:if (this.mWindowMode == 1) {...this.commData.m_iImageWidth = this.commData.m_fiMVGAPlusSensorWidth;this.commData.m_iImageHeight = this.commData.m_fiMVGAPlusActiveHeight;...else {this.commData.m_iImageWidth = this.commData.m_fiQVGAPlusSensorWidth;this.commData.m_iImageHeight = this.commData.m_fiQVGAPlusActiveHeight;...}Some others likeCode:String filename = GetFilePath("/i3cam", "dead", ".bin");if (this.mWindowMode == 1) {filename = GetFilePath("/i3cam", "dead_M1", ".bin");Finally that mWindowMode comes from the camera (EZUSB from cypress = camera):Code:byte[] m_buf = new byte;int iLen = this.m_EZUSB.Read(m_buf, m_buf.length);int[] m_IntBuf = new int;for (int pos = 0; pos < 256; pos++) {m_IntBuf = (m_buf[pos * 2] & 255) + ((m_buf[(pos * 2) + 1] & 255) << 8);}this.mWindowMode = m_IntBuf[avcodec.AV_CODEC_ID_BINKVIDEO];this.m240ColStart = m_IntBuf[avcodec.AV_CODEC_ID_IFF_ILBM];this.m180RowStart = m_IntBuf[avcodec.AV_CODEC_ID_LAGARITH];

author: Vipitis
author_rank: Frequent Contributor
timestamp: September 20, 2018, 04:24:56 pm
content: well... you could just add a line and set the variable back to 0 a little bit after and recompile?now for desktop software, i3 offers different tools and an SDK as well; I wonder if this works similar.

author: mahony
author_rank: Regular Contributor
timestamp: September 20, 2018, 05:58:23 pm
content: Writing software for Android should very well be possible for someone with a descent amount of experience in Java/Android development - so not me ;-)The issue with the windows and probably the Linux SDK too is that it is written in C/C++ and therefore is way more complex to decompile and make serious use of that code. It is much easier to just extract the important parts/algorithms from the java decompiled code, namely the temperature calculation and calibration stuff and write your own code C#, C++ or whatever language you like. This is what I did in C# (the attached TEViewer) and planning to do in C++ too at some point for use on a Linux system.It would be much easier to have a M1 here for testing but as my software basically just ignores the flags the Android App reads in and then sets the mWindowMode variable I suppose i might just take it as a Q1 and reads and displays the entire image. I did not check if the calibration data is also for the full 384x288 pixels but there is no good reason why not - all the raw frames are of the same size and so should be the flash data frames. Although there are quite some points that might cause trouble… we will see what Marvin_324 finds out. ;-)

author: borrk
author_rank: Newbie
timestamp: November 03, 2018, 11:33:06 pm
content: Setting the variable to 0 doesn't help (or I'm doing it wrong))I try to understand, what value exactly thethis.mWindowMode = m_IntBuf[avcodec.AV_CODEC_ID_BINKVIDEO]is expecting from the Q camera?

author: Vipitis
author_rank: Frequent Contributor
timestamp: November 04, 2018, 05:10:42 am
content: I have zero clue and for me it's guesswork. My mind tells me that it's theoretically possible, but I am holding back on a purshase until it happens.So I am just hoping someone with the unit figures it out because I need that slight push to make a purshase decision.

author: borrk
author_rank: Newbie
timestamp: November 04, 2018, 06:37:59 pm
content: Well, try hacking the app and I will act as the tester.so far I tried removing this code block via smali modification,for (int pos = 0; pos < 256; pos++) {m_IntBuf = (m_buf[pos * 2] & 255) + ((m_buf[(pos * 2) + 1] & 255) <<;}this.mWindowMode = m_IntBuf[avcodec.AV_CODEC_ID_BINKVIDEO];this.m240ColStart = m_IntBuf[avcodec.AV_CODEC_ID_IFF_ILBM];this.m180RowStart = m_IntBuf[avcodec.AV_CODEC_ID_LAGARITH];Only effect was grey, empty live view.Changing variablesthis.commData.m_fiQVGAPlusSensorWidth;this.commData.m_fiQVGAPlusActiveHeight;to match ones for QVGA, resulted in a really messed artifact image.

author: mahony
author_rank: Regular Contributor
timestamp: November 06, 2018, 11:44:46 am
content: Did any of you guys with an M1 at hand try to use the windows app attached to post #54 with the M1? (NOTE: requires the Zadig WinUSB driver to be installed for the cam)Any feedback might definately clarify things here...

author: borrk
author_rank: Newbie
timestamp: November 09, 2018, 08:49:33 pm
content: Hi,(was sourcing correct cable to be able to connect it to a PC)After testing - no luck - with original i3 driver it cannot even connect, with zadiq one it can connect, but all I get is a white screen.BTW, your app is reported as virus by few leading AV programs, maybe that's what scared other users.

author: mahony
author_rank: Regular Contributor
timestamp: November 11, 2018, 06:10:04 pm
content: Thanks for the feedback! Interesting that you can connect but seem to get no (valid) images back. No connect with i3 drivers is expected behavior.Regarding the AV issue - on my dev machine is just the default windows defender which does not complain.I assume some AV programs may not like it due to the default obfuscation of the exe?!Sorry for that!I may put a quick tool together that offers some more options to receive raw data … but not this week I'm afraid.

author: borrk
author_rank: Newbie
timestamp: November 12, 2018, 09:01:38 pm
content: No idea why they don't like it (default windows Defender included, had to disable it to even download the zip file and check the exe with virus total.I don't have direct access to the camera anymore, but if you have some sw to test, I should be able to arrange a test within few days.

author: mahony
author_rank: Regular Contributor
timestamp: November 13, 2018, 07:22:14 pm
content: I put together a seriously stripped down C# console app that runs with both my TE cameras (Q1+ and V1). I also attached the source for those that cannot (or don't want to) download the binary. It seems to required at least .NET framework 4.0 (I usually use 4.5) - 3.5 gave me 1 error I did not want to hunt down.Run this directly after connecting the TE-M/Q/V1 (with Zadig driver installed for it!) and enter the expected raw image size (M1/Q1: 384x296, V1: 640x482) and if connection is successful it will start grabbing 50 frames from the camera in 1s intervals. The raw bytes will be dumped to disk for further examination.You may experiment with different data sizes but be warned: the total frame size should be dividable by 512! I.e. I can get data from my Q1 by entering 256x222 as raw size (=222 packets a 512bytes) which happens to be half the real frame size. Even 296x256 (2/3 of the original frame size) and 512x296 (1.5 frames per transfer) works perfectly - you essentially just get the frame data in differently sized chunks if you want to but you receive the full frame in any case! For sizes larger than the actual frame the Q1 returns the full frame plus the rest of the requested size padded with some arbitrary value.I would expect that 384x296 might be fine to get some data from the M1 but feel free to experiment.Final edit: If anyone manages to get frame data out of a M1 please upload the raw data of those 50 initial frames.

author: jika
author_rank: Newbie
timestamp: November 14, 2018, 07:56:53 pm
content: I have just got my M1, so i had not much time to play with it.. But i got some data with your programI have also captured the usb traffic with usbpcap while playing (receiving 2 single frames and 3 Fpa Temp) with the test program from the Windows API, perhaps it is useful in some way. (t7_TP_M1.pcap)I also tried to connect in Q1 mode to my M1 camera and receive an single image. (t6_TP_Q1.pcap)Files are too big, so:https://ufile.io/fk8z6

author: mahony
author_rank: Regular Contributor
timestamp: November 14, 2018, 09:01:31 pm
content: Thank you very much @jika!Looks like bad new for all that hoped for a really good and cheap (and fast 30Hz) QVGA imager.Unfortunately the raw data seems to just give dead pixel, correction and image data for a 240x180 sub-image of the QVGA sensor.Attached images are two of the raw frames converted to 16bit image data.The first image raw000.png shows the very first frame containing the dead pixel data. As you can see there is as 240x180 region of 'valid' data embedded in a 394x296 raw image.In contrast the raw030_384.png image shows one of the first image frames. Here you can clearly see (at least with the 240 pixel wide raw030_240.png version) that the image frames only give 240x180x2 consecutive bytes of image data followed by a large portion of invalid (65535 value) data.Maybe there is still hope - I am not yet sure if the correction gain/offset factors are only available for the 240x180 range or for the full 384x296 frame. AND there is some method in the decompiled java source:Code://INIT of device Q/Mpublic void InitDeviceMode() {int recvNum = 0;byte[] tempData = new byte;tempData = (byte) -5;tempData = (byte) -6;tempData = (byte) 0;tempData = (byte) -93;tempData = (byte) 1;tempData = (byte) 0;tempData = (byte) 0;tempData = (byte) -93;tempData = (byte) -53;tempData = (byte) -54;//write single package and read one 512byte answerwhile (recvNum != tempData.length) {recvNum = this.m_EZUSB.Write(tempData, tempData.length);delay(30);}delay(100);byte[] m_buf = new byte;int iLen = this.m_EZUSB.Read(m_buf, m_buf.length);int[] m_IntBuf = new int;for (int pos = 0; pos < 256; pos++) { //convert to cons. bytes to int16/32m_IntBuf = (m_buf[pos * 2] & 255) + ((m_buf[(pos * 2) + 1] & 255) << 8);}//this is where windowMode and col/row start are set initially!!this.mWindowMode = m_IntBuf; //avcodec.AV_CODEC_ID_BINKVIDEO=135?!this.m240ColStart = m_IntBuf; //avcodec.AV_CODEC_ID_IFF_ILBM=136/137?!this.m180RowStart = m_IntBuf; //avcodec.AV_CODEC_ID_LAGARITH=146?!}This actually send some init commands to the Q1/M1 and set the windowing mode and image offsets in the app.I think someone with basic .NET skills (or any other programming language), the source code from my last post, a M1 at hand and some time might be able to get some intersting findings here ... I am lacking mostly time and the M1 camera at the moment.

author: Vipitis
author_rank: Frequent Contributor
timestamp: November 14, 2018, 10:43:47 pm
content: the 000 frame seems to be windowed off center and we know from the previous post that different android apps can request a different window position. Still open questions. I won't buy an M1 this year myself but let's see where this is going.

author: mahony
author_rank: Regular Contributor
timestamp: November 15, 2018, 07:32:12 am
content: @Vipitis: Yepp, right - that is why I mentioned the initialization code. I guess somewhere in there it is possible to move the windowing region and maybe even switch to full Frame mode.

author: mahony
author_rank: Regular Contributor
timestamp: November 28, 2018, 01:06:33 pm
content: Seems like the M-1 in 30Hz version is currently on sale from the known Austrian distributer for 399€:https://www.ebay.de/itm/Warmebildkamera-Infrarotbild-TE-M1-240x180-Pixel-30Hz-Warmebild-Thermal-Expert/283121690439?hash=item41eb5e2747

author: Vipitis
author_rank: Frequent Contributor
timestamp: November 28, 2018, 02:15:36 pm
content: Oh man, that is quite the offer they are giving me there. But it's too risky for me as it's highly unknown if it will even work with my phone (although an upgrade is looking likely). It's still a hefty price for a toy... That might never get unlocked. An upgrade also makes my current imager pointless in a sense.I got 4 days to think about this.

author: guazan
author_rank: Contributor
timestamp: March 08, 2019, 07:57:15 pm
content: Good you could put some pictures made by TE-M1. Is that I'm in doubt about the flir one pro and TE-M1 would use it to repair phone plate. Thank you.

author: lolli-us
author_rank: Newbie
timestamp: March 23, 2019, 07:59:48 pm
content: Has there been any progress on hacking the TE-M1 to a Q1 ?For a while this thread looked very promising on delivering a great low cost thermal camera.

author: bap2703
author_rank: Regular Contributor
timestamp: March 24, 2019, 06:45:36 am
content: I guess the camera isn't popular enough.

author: lolli-us
author_rank: Newbie
timestamp: March 26, 2019, 12:05:49 am
content: Strange... reading this forum I got the impression that Thermal Expert Q1s are considered the best performance/price cameras for under 1000€.

author: frenky
author_rank: Unknown
timestamp: March 26, 2019, 06:56:40 am
content: They are. But M1 version has not been for sale that long and not many people (on the forum) has it...

author: Ben321
author_rank: Frequent Contributor
timestamp: March 28, 2019, 07:19:34 am
content: The US store does not let you buy directly. You need to request a quote and contact them, and then arrange payment by email once you have decided to make a purchase (which will be done with paypal). There's no button that actually lets you buy an item (clicking the buy button takes you to the request a quote form). Even worse, the US store doesn't even acknowledge the existence of the TE-M1 camera. It doesn't appear anywhere in the catalog.However, the European store shows all prices (in euros, not dollars), and lets you make a purchase just like Amazon or any other online store you normally buy from. Seems like their company must be located in Europe, as that version of the store is the best version of the store. And yes, even if you live in the US, you can purchase from their European online store. In the order form, where you can select your country, United States is listed in the dropdown list. I added an item to the "shopping cart" and started the checkout procedure just so I could if it would be possible to buy from the US. I haven't completed the purchase though, so I don't know if it will actually let me complete the purchase from the US though (and I don't actually want to buy anything from them now, so I won't complete the checkout form to test it). It does seem like it should work though.

author: Requiem for a Dreamcast
author_rank: Newbie
timestamp: March 31, 2019, 11:07:13 am
content: I purchased a TE-M1 during the sale. I'm not much of a programmer, so I'm not of much use on that end, but if I can be of any help, I'm available.

author: nikoum
author_rank: Contributor
timestamp: April 01, 2019, 04:09:09 am
content: Does anybody know why the TE-M1 camera is not mentioned in the thermal expert site (http://www.i3-thermalexpert.com) but only in the thermalexpert.eu site. It is rather strange to me.

author: joe-c
author_rank: Frequent Contributor
timestamp: April 02, 2019, 04:39:32 am
content: Hello,Quote from: nikoum on April 01, 2019, 04:09:09 aminteresting, its strange to me too.i have a M1 with 30Fps option, and its a really nice device.i add 2 images, just interpolated x2, no filters like sharpen or smoothing...

author: mahony
author_rank: Regular Contributor
timestamp: April 02, 2019, 07:26:16 pm
content: It seems like the ThermalExpert website is not being update regularly to say the least. They also got some nice OEM cores with the older 17µm detectors and the newer ones with 12µm should also be ready by now. The most up-to-date website currently seems to be the Austria-based EU shop.@Joe-C: very nice images! Did you use the SDK in your software to capture them? I assume the 30 Hz give some very nice smooth video too. Did you try to get the full resolution out of it yet?By the way and slightly off-topic: I played a little bit with bilateral filtering for noise reduction which seems quite capable compared to gaussian blur as used by the TE SDK. Using appropriate parameters this might even be suitable for on-the-fly processing, at least for the relatively small M1 / Q1 frame rate and image sizes. (mostly unoptimized C# code takes ~32ms on 240x180 and ~86ms on 384x288 while 640x480 already requires ~240ms).

author: joe-c
author_rank: Frequent Contributor
timestamp: April 02, 2019, 07:42:01 pm
content: HelloQuote from: mahony on April 02, 2019, 07:26:16 pmYes i use the SDK and no, i don't worked on the full resolution yet, sadly no time for that.But yes, the 30fps are nice and smooth.Quote from: mahony on April 02, 2019, 07:26:16 pmI have also played with it, the aforge framework has a filter for it, i use it in my seek Tcam Dll sample. But sadly this only works with 8bit grayscale or color images.sady i am not really familiar with convertig cryptic formulas from some papers to a working algorithem in c#.if you have something interesting, just send me a mailbest wishes

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 02, 2019, 10:31:51 pm
content: My last exam is on 15th May, if I don't find anything else by then. I will join the M1 Club. Your image convinced me.

author: Ben321
author_rank: Frequent Contributor
timestamp: April 03, 2019, 05:19:06 am
content: Is this i3 company a Chinese company?

author: frenky
author_rank: Unknown
timestamp: April 03, 2019, 07:49:13 am
content: They are based in Korea:http://www.i3system.com/eng/

author: TooQik
author_rank: Regular Contributor
timestamp: April 03, 2019, 10:26:31 am
content: @mahonyI've captured some raw frames using your TETestApp code which I've made some modifications to in an attempt to capture a higher resolution from my M1. Are you able to take a look at them and see if there are any images please? If everything is as I'm hoping it will be, you should have some captures of me sitting at my PC.I'm trying to work out how to convert the raw files to png myself, but this might take a while as I'm unfamiliar with raw image processing and have some learning to do first.

author: frenky
author_rank: Unknown
timestamp: April 03, 2019, 01:49:58 pm
content: Your raw files are 227.328 bytes in size.384 x 288 = 1105922 bytes per pixel: 110592 x 2 = 221.184I would say it looks really promising.

author: frenky
author_rank: Unknown
timestamp: April 03, 2019, 02:04:31 pm
content: First few byte pairs and their values:1f91 80811e3c 77401e0c 76921fe3 81631d4f 75031fe7 81671ee7 79111eba 7866Edit:byte pairs are probably switched so this are correct values...0x65 0x1f 80370x91 0x1e 78250x3c 0x1e 77400x0c 0x1f 79480xe3 0x1d 76510x4f 0x1f 80150xe7 0x1e 7911

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 03, 2019, 02:33:55 pm
content: hm, I am not far into image processing yet, but I looked at some frames in there and rendered them into a 388x296 array because that fit with the size. But it looks like a good two thirds of the image is null values. So either I am not doing it correctly(likely), or there is indeed no data for the rest of the pixels and this needs further tinkering.

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 03, 2019, 02:36:45 pm
content: what I got from two frames

author: frenky
author_rank: Unknown
timestamp: April 03, 2019, 06:55:23 pm
content: I didn't notice empty values before...Sadly there is only 86.400 bytes of "non empty" data in a .bin file.That is exactly 240x180 resolution with 2bytes per pixel.So there is no way to get 384x288 images out of this frames...

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 03, 2019, 07:38:07 pm
content: If they don't spit out the full sensor reading just by asking them to....then we need help from a really great android developer who can understand how they were able to change the window location via app.Given that the European store is currently having a sale (the prices you would onyl get on eBay-Kleinanzeigen before) as well as new products(a desk stand). They will continue their support for all models for some time and there is no TE-2Q/-2M on the horizon.I still wonder where there is not 30hz option for the TE-1Q (Plus). While there is a enhanced range option for the Q1 called Pro(and uses at least a different housing). It might be due to bandwidth, but that would be a awful design choice.

author: mahony
author_rank: Regular Contributor
timestamp: April 03, 2019, 07:52:09 pm
content: Hi,I just check the last of the raw frames - and using a bit of phantasy I assume this might be you in front of your PC. The problem here is: this is raw sensor data without the so called "shutterless correction" that is done in the TE software. I do know how to apply the shutterless correction for the Q1 and V1 and I assume it is quite similar for the M1 (if not identical) but some of the required constants may be in different locations in the flash data compared to the Q1 and V1 (they already differ slightly too).I think the fact, the camera just sends 240x180 pixel data is expected behavior. From the the rough look I had at the reverse engineered java code there is a small change the actual region of interest or (very small chance) also the resolution may be set by some initialization byte send to the cam…@Vipitis: I don't think that bandwidth is a limiting factor. The V1 does 30Hz easly too over USB 2.0. I assume they just did not include the option in the initial design of the Q1. But I would hope they included support for M1/Q1 in 9Hz and 30Hz in the modified M1 hardware? But it seems like this is also not the case.

author: TooQik
author_rank: Regular Contributor
timestamp: April 04, 2019, 12:45:39 am
content: Thanks everyone who took a look at the frames I captured.I've already taken a look at the initialisation data being sent to the M1 when the Read Flash command is performed and trialed a couple of changes. The raw frames I posted earlier were from the test of the changes I made.My thoughts are either one of two things are controlling the output from the M1:The initialisation data configures the frame size for outputThe camera is hardcoded in firmware to only output 240x180If the output is actually controlled via option one, then finding the correct bytes to change should trigger an increased output resolution.When capturing USB data, I can see initialisation data bytes values for 384, 288, 240 and 180, which obviously correspond to some resolution settings. My test above changed the byte values 240 and 180 to 384 and 288 respectively to see if the output resolution increased - it obviously didn't as evident by the image mahony has converted and posted which is only 240 pixels wide, so more tinkering is definitely required to see if I can find the correct values to change.I don't think the camera is hardcoded to output 240x180 due to the fact that there exists initialisation data that clearly defines resolutions, but I could be wrong.

author: frenky
author_rank: Unknown
timestamp: April 04, 2019, 07:20:43 am
content: If you tell me how to capture this initialisation data I can try it with my TE-Q1 to compare that with M1 init data.

author: TooQik
author_rank: Regular Contributor
timestamp: April 04, 2019, 11:21:11 am
content: Wireshark has a USB capture interface, just make sure you check the option when installing Wireshark.Once installed, open the USBPcap interface you plug the camera into; I have USBPcap1 and USBPcap2 interfaces on my PC - #1 is the front USB ports and #2 is the rear ports. When the interface is open, plug in the camera and then perform a Read Flash command. When this is done with the M1 I see data exchange in both directions in what appears to be an initialisation process.Hopefully you capture something of interest.

author: TooQik
author_rank: Regular Contributor
timestamp: April 13, 2019, 09:40:05 am
content: Quote from: Marvin_324 on September 20, 2018, 09:29:56 amIs anyone able to share this version of the Android software please? The link no longer works and I'd like to try it out on my M1 and see what difference it makes.Thanks in advance.

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 13, 2019, 10:24:20 am
content: You can find the patch on the website:https://www.thermalexpert.eu/deutsch/supportmaterial/

author: TooQik
author_rank: Regular Contributor
timestamp: April 13, 2019, 01:24:20 pm
content: I've just tried the "centered" software version and I'm not seeing any difference in positioning when switching between the different versions - exact same picture each time.Here's the pictures from the three different versions I used - the one thing I did note, is there is a slight change in image size with the centered version.

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 13, 2019, 09:22:39 pm
content: So there are few ways to explain this. If the Android app on PlayStore had no update they must have fixed it in firmware for all the M1s they had laying around and only those that were sold before the issue was known have he window not centered.The difference in size is just scaling and screen format. The TE app offers to stretch or 3:4 at real resolution or something. The captured .CVS should be normal in both versions.Do we know how the Q1 and M1 compare with the official desktop software? And if there was any update for M1 Support/fix?

author: TooQik
author_rank: Regular Contributor
timestamp: April 13, 2019, 10:38:46 pm
content: The problem for me is that my window isn't centered on the M1 I have.I can see this in two ways:There is a very slight curvature on the top of images I capture.I can confirm the column and row start positions my camera is outputting when it is initialised by the software; in my case this is column 100 and row 0.

author: TooQik
author_rank: Regular Contributor
timestamp: April 16, 2019, 09:32:51 am
content: For anyone interested in what the internals of the TE-M1 looks like, I decided to get intimate with mine and took her cover off.

author: frenky
author_rank: Unknown
timestamp: April 16, 2019, 10:43:31 am
content: So we have:TPS65021: Power Management IC For Li-Ion or Li-Polymer Powered SystemsDatasheet:http://www.ti.com/lit/ds/slvs613d/slvs613d.pdfandMT25QL128ABA: 128Mb, 3V, SPI Flash memory device.https://www.micron.com/products/nor-flash/serial-nor-flash/part-catalog/mt25ql128aba1ew7-0sitDatasheet:https://www.micron.com/-/media/client/global/documents/products/data-sheet/nor-flash/serial-nor/mt25q/die-rev-a/mt25q_qlhs_l_128_aba_0.pdf

author: Vipitis
author_rank: Frequent Contributor
timestamp: April 16, 2019, 11:28:36 am
content: So the imprint seen top right. "TE Engine V..." Any idea what is beneath the sticker? Is it like a version number?

author: TooQik
author_rank: Regular Contributor
timestamp: April 16, 2019, 12:22:48 pm
content: I didn't peel the sticker off to look under it unfortunately.Joe-c's picture of his Q1 in this thread also shows the same sticker in the same position. What is different is the flash chip used on my M1, plus I have a pin header connector soldered to the board where Joe-c's Q1 has the exposed pads. Wonder what this header is used for?

author: TooQik
author_rank: Regular Contributor
timestamp: April 17, 2019, 08:55:51 am
content: And for completeness, here's a picture of the back of the PCB on my M1, which I neglected to post yesterday.Unfortunately I didn't have any cleaner handy to allow me to clean the thermal pad residue off the components to get a better picture of the part numbers, but I can see that the large chip on the bottom left is a Cypress CY7C1041GE.

author: Martin72
author_rank: Super Contributor
timestamp: April 19, 2019, 08:35:12 pm
content: Sorry for OT:Quote from: mahony on November 28, 2018, 01:06:33 pmYes and it´s still valid until end of april.If ordered, it comes as the 30hz version, I think I´ll buy this.There is also a option for 350°C but I couldn´t find out how much this will cost.I asked if this option can be buyed later, no it must be ordered with the cam.

author: Martin72
author_rank: Super Contributor
timestamp: April 22, 2019, 09:10:46 pm
content: Why is the TE-M1 not listed under the products of the TE/i3 Website ?Only the several variants of Q1 and V1.

author: bugi
author_rank: Regular Contributor
timestamp: April 22, 2019, 09:53:33 pm
content: They don't list the Q1's 19mm lens there, either.. and probably few other things are outdated, too. But I guess this forum is not the best source of answer to the question. Maybe they could answer it themselves:http://www.i3-thermalexpert.com/contact/I only used that site to dig out some documents/info that I could not find through the EU site.

author: frenky
author_rank: Unknown
timestamp: May 13, 2019, 06:50:25 pm
content: Could somebody please upload some CSV files from M1 module?I would like to test my app (ThexConvertGUI) with M1 support...

author: TooQik
author_rank: Regular Contributor
timestamp: May 14, 2019, 01:36:01 am
content: Here you go frenky.There are four thermal images with their corresponding temperature CSV files. I've included files with temperatures that range from below zero and up to about 380 degrees Celsius. These were all captured with version 20.1.6 of the Android app.One thing to note, the wood fire image CSV file recorded the last four rows of temperature data as NaN. I've not had this occur before so I'm not sure why this has happened.Update regarding NaN CSV entries: I deleted the dead pixel map and retried a capture and all new CSV files now have the full 180 rows of temperature data again.

author: frenky
author_rank: Unknown
timestamp: May 14, 2019, 06:12:29 am
content: Thank you!(It works...https://www.eevblog.com/forum/thermal-imaging/i3-thermalexpert-custom-software/msg2410089/#msg2410089)

author: jnt77
author_rank: Newbie
timestamp: May 23, 2019, 09:29:48 pm
content: Some pictures of my TE-M1 / 30hz ver.pi 3 b+Bed under heated

author: NBtron
author_rank: Contributor
timestamp: October 17, 2019, 05:34:40 pm
content: Can somebody make foto from image processor (under label)?Help me please recognize this chip

author: Spirit532
author_rank: Frequent Contributor
timestamp: October 18, 2019, 07:45:48 pm
content: Quote from: NBtron on October 17, 2019, 05:34:40 pmhttp://ww1.microchip.com/downloads/en/devicedoc/21191s.pdf