Fixing up a mix&match'ed Flir ONE - Page 1
Forum section: electronics / general

author: tmbinc
author_rank: Frequent Contributor
timestamp: July 31, 2020, 07:04:25 am
content: I've obtained a broken Flir ONE Pro, and a broken Flir ONE Gen 3. The Gen 3 was easy to fix - the battery was broken - but the Pro's AT91SAM SoC had a connection problem with the DRAM (it enumerated in SAM-BA mode only, and couldn't initialize memory). I tried to reflow but as expected it didn't help. I did not attempt to re-ball.I tested both Leptons with a breakout board, and they both worked properly. The Pro and Gen 3 PCB are apparently identical, so I swapped the Lepton 3.5 into the Gen 3. It successfully connects to the mobile app, gives me a higher thermal resolution, but the MSX is totally off now. Also, temperature readings are not working (usually display -50°C).I wonder how I can fix this. Unfortunately I can't dump the Pro, as - at least with SAM-BA - this requires working RAM. Desoldering would be an option, but is all but trivial.I was hoping I can fix this by putting in the right "shared_files". I've dumped the Gen 3 via the serial port (root:indigo), and noticed there's a CameraFiles.zip that - apparently - contains a standard calibration for the 80x60 Lepton. (I don't think it's per-sensor as the device was manufactured in 2020, but the CameraFiles.zip is from 2015).Does someone have a Pro CameraFiles.zip that I could put it? Or maybe a complete dump of /root/shared_files?

author: tmbinc
author_rank: Frequent Contributor
timestamp: July 31, 2020, 09:57:48 am
content: Short update: I've fixed up the serial number (it checks 2nd and 3rd character; "05" - flir one consumer aka. gen3, "07" - flir one pro) in the manufacturing_info.txt, and it restored the "pro" behavior in the app (ability to disable MSX, ability to scale temperature range, custom measurements etc.).To do so, you need to do "setenv flash_enable 1; boot" in u-boot - it boots into "update mode" (where /root/shared_files is read-writable), and then I carefully updated manufacturing_info.txt.But without the fixed CameraFiles.zip the measurements are still off.The thermal image quality is still weird/bad, but it's hard to compare with the raw output (when interfacing the Lepton directly). They seem to use a really weird upscaling filter.

author: tmbinc
author_rank: Frequent Contributor
timestamp: August 02, 2020, 05:22:52 pm
content: Hm, I could swear there was an answer asking for more details on how to obtain this data, but it's gone now. Maybe it was intentionally removed by the author.Anyway, I've attached a picture with the pinout of the serial port. You can see the output of my (non-broken) Flir One Gen 3 (Consumer) below. Pressing the button will make the board boot, but it will switch of pretty quickly. Connecting a charger to the charge port (or the phone to the phone port and starting the app) will keep it alive.Although I didn't use it, it seems a working "sz" (send zmodem) and "rz" (receive zmodem) tool is available, which is somewhat convenient for file transfer.Start AT91Bootstrap version svn-r0e19705067758995d8a489d3a5a07f7c75888cb7 ...Init HALF drive strength DDR... BOARD_ConfigureDdram()DDRSDRC->DDRSDRC_LPR: 0x12101Done!Downloading image...Trying to load uboot...nandflash_hw_init()reset_nandflash()AT91F_NandReadID()ManufacturerID: 0x2c DeviceID: 0xa1chip id: 0x2ca1Copy 0x50000 bytes from 0x40000 to 0x23f00000nandflash_cfg_8bits_dbw_init()switch(sNandInfo.uDataNbBytes) 2048:read_nandflash: while (1)read_nandflash: while (1)read_nandflash: while (1)read_nandflash(): return 0;Done!Returning jump to 0x0x23f00000U-Boot 2010.06-00030-g3d88c2d (Apr 09 2019 - 11:57:08)DRAM: 64 MiBNAND: nand->ecc.bytes 28nand->ecc.steps 1nand->ecc.layout = pmecc_oobinfo_2048host->mm 13host->nn 8191host->tt 4host->sector_size 512host->sector_number 4host->ecc_bytes_per_sector 7host->alpha_to 0x10C000host->index_of 0x108000128 MiB*** Warning - bad CRC or NAND, using default environmentIn: serialOut: serialErr: serialNet: macb0, macb1eth_enable not set, skipping macb init.eth_enable not set, skipping macb init.Watchdog enabled.Hit CTRL-C to stop autoboot: 0Data (writethrough) Cache is ONboot operationalLoading from nand0, offset 0xe00000Image Name: Linux-2.6.39+Image Type: ARM Linux Kernel Image (uncompressed)Data Size: 3567832 Bytes = 3.4 MiBLoad Address: 20008000Entry Point: 20008000Bit flip in data area, byte_pos: 22, bit_pos: 5, 0x2d -> 0x0dBit flip in data area, byte_pos: 1733, bit_pos: 1, 0x06 -> 0x04Bit flip in data area, byte_pos: 1919, bit_pos: 5, 0x3b -> 0x1bBit flip in data area, byte_pos: 958, bit_pos: 2, 0xa6 -> 0xa2Bit flip in data area, byte_pos: 307, bit_pos: 6, 0xe8 -> 0xa8Bit flip in data area, byte_pos: 445, bit_pos: 4, 0x7c -> 0x6cAutomatic boot of image at addr 0x22000000 ...## Booting kernel from Legacy Image at 22000000 ...Image Name: Linux-2.6.39+Image Type: ARM Linux Kernel Image (uncompressed)Data Size: 3567832 Bytes = 3.4 MiBLoad Address: 20008000Entry Point: 20008000Verifying Checksum ... OKLoading Kernel Image ... OKOKStarting kernel ...Uncompressing Linux... done, booting the kernel.[ 0.025000] AT91: CM rev B and higher[ 0.038000] AT91: EK rev B and higherStarting watchdog...donemounting jffs2 READ-ONLY...donestart battery charge controlStarting battery_charge: OKdoneFormatting /tmp/versions: OKWelcome to Rosebud (Operational)(none) login: rootPassword: indigologin: root login on 'ttyS0'~ # cd.ssh/ shared_files/~ # cd shared_files/~/shared_files # sz CameraFiles.zipThis should start a zmodem download of "CameraFiles.zip".There's also a way to obtain these files over USB but I haven't investigated.

author: Fraser
author_rank: Super Contributor
timestamp: August 02, 2020, 07:30:51 pm
content: Hi,Yes that was me. I realised I was not helping you by asking questions when you need someone to help with a working unit. My unit is clearly in distress as it fails boot and goes into red led warning mode. I do not want to offer what I cannot provide.

author: tmbinc
author_rank: Frequent Contributor
timestamp: August 03, 2020, 09:16:18 am
content: Oh, no worry! You've been super helpful all around here all the time.In fact, it would be great if you could watch your unit's serial port and post the output (if you haven't) - this should give some indication of the failure mode.

author: Fraser
author_rank: Super Contributor
timestamp: August 03, 2020, 11:29:11 am
content: Hiya,I will wire my unit up for serial comms and capture the boot log. If it is useful as a file donor I will download the data and send it to you.Fraser