Wrong: Xiaomi Yi doing 1 pic/0.5 without hacks

Important: What I write is wrong, please see Xiaomi Yi does not do real 2 pics/s without hack .

Today when I changed my two Xiaomi Yi action cams to summer time, I noticed I could select 0.5s and 1s for interval recording - i.e. take an image every 0.5s. It has for some time been well known, that you can use a script to hack the camera to do this, but that caused my cameras to randomly shut down.

Please read my Update 2 later. With a faster microsd card the performance is better but not perfect.

Now I checked, that the images are actually in the 12 mega pixels resolution I set them for. At this resolution they are struggeling a bit to keep up with the 0.5 sec (see the timestamps below), but hey. Just an image every second is perfect on a bicycle!

Create Date : 2016:03:27 09:40:11
Create Date : 2016:03:27 09:40:11
Create Date : 2016:03:27 09:40:11
Create Date : 2016:03:27 09:40:12
Create Date : 2016:03:27 09:40:12
Create Date : 2016:03:27 09:40:13
Create Date : 2016:03:27 09:40:14
Create Date : 2016:03:27 09:40:15
Create Date : 2016:03:27 09:40:15
Create Date : 2016:03:27 09:40:15
Create Date : 2016:03:27 09:40:16
Create Date : 2016:03:27 09:40:16
Create Date : 2016:03:27 09:40:17
Create Date : 2016:03:27 09:40:18
Create Date : 2016:03:27 09:40:20
Create Date : 2016:03:27 09:40:21
Create Date : 2016:03:27 09:40:21

As you can see, it will often hit 2 images every second, but when the buffer fills it will skip some. I have not tried this for extensive time, so I don’t know if the cameras also shut off here. But I should try now…

Update: I set 1 camera to do 1/s at 12 mega pixels and another to do 2/s (an image every 0.5s) at 8 mega pixels.
No issues at 1 sec at 12 mp. I did not find a gap where I looked. The camera filled the card.
At 2/s at 8mp I saw the same as before: The camera skips a lot of pictures, probably because it is too slow. The camera filled the card - no crash. I use very fast Sandisk cards. They are not the issue.

Afterwards I set a camera to 2 pic/sec (an image every 0.5s) and 5 mega pixels, which is the lowest resolution. I still saw a lot of time slots where only 1 image was taken each second. Other versions of the hardware may keep up better than mine. I would still say, that if you go by car an regular 0.5s is better than always 1s. You will at least get more images.

I saw a lot less battery life at higher speeds, but compareable to the more images (15-20 minutes on 0.5 s, where around 1 hour on 2s). Use an external power supply is strongly suggested.

Update: The performance of the camera may be due to my flash cards. They are Sandisk Ultra Class 10 / UHS-1 and should be able to handle the data. But they have been used a lot (150k - 200k images) and can be very slow at times. The cards used for these tests have been as slow as 4 MB/s and one as slow as 800 KB/s.

I have been dealing with Sandisk support for a while. My problem is right now, that under Windows the worst card performs okay: Writes at 9-12 MB/s. But when I change to Linux the speed easily drops to 2-4 MB/s for the same card in the same card reader (a fast USB 3.0 from Lexar) and the test Sandisk requests only runs under Windows. But it does not help when the cameras do not perform as the Windows setup.

Perhaps I just was too cheap and should get some more expensive cards. These should hold up but did not.

1 Like

Do you know what changed your Xiaomi Yi to allow this? Was there a firmware update or something? Or was it just random?

The limit in grab rates is one thing I’m considering when shopping for new cams. I like the idea of even 1 second, but I know that with the hack it locks the exposure. Then again, I’m using an SJCAM SJ4000, which has 3 seconds at best.

Interesting findings.

I got a Xiaomi Yi just recently and have only tested it a few times using the photo per every 2 seconds mode. I haven’t yet tweaked my setup so that I could attach a power supply to the camera. Will definitely need to do that with the battery life being what it is. After than I’ll definitely switch to 2/s as that seems to work otherwise fine (at least with you!) than the few photos skipped here & there.

Big thanks for posting your observations.

@pkoby I am pretty sure it was an app update. I only updated the firmware when I got the camera. There had been a lot of app updates since I checked so I don’t know when.
@jaakkoh Just insert a micro-usb connector into the camera, and it will charge from that. You need a power source, of cause :smile:

I hope do some testing with a fast memory card that I found. It does not seem that Sandisk have some tools to fix the slow cards, because they don’t support the ERASE instruction. I’ll write a post when I am done collection experiences in this field.

Update 2 I did a quick test with a SanDisk sdcard that my phone has tested to be writeable at 30 MB/s. It is more expensive than the others and should do better.

At 2 pic/s - an image everyh 0.5s - the Xiaomi YI skipped an image about every 30 seconds. I tested for 1½ minutes and I found 3 missed images. Each file was less than 3 MB in size (12 mega pixels). I have not tried with lower resolutions - it may just make the difference.

I think this is good enough for Mapillary, especially when shooting from a car or motor bike. Mapillary can handle the skipped images file. It would not be good if you want to do a time lapse, but they are usually done at at slower framerate.

Update 3 I have written a post about my experience and research on microSD cards - don't buy to cheap .

Update 4 I tried with a new Samsung card, that advertise write speeds up to 90 MB/s. The 64 GB were filled in about 4½ hours with 30.000 images at 8 mega pixels. At 0.5s there still are a few holes, where the camera has skipped an image. Perfectly okay for Mapillary - not if you are making a timelapse movie.
The images are around 2 MB in size, so I will conclude with certainty that it is not the write speed of the cards that causes the gaps: It is the camera itself. But for Mapillary gaps are OK and when going by car 0.5s is great! I am just happy that Xiaomi gave the option!!
Oddly enough, the camera stopped when there were 435 MB left on the card.

Thanks for the update @tryl .

Regarding the charging: Yes, I know that it just needs a micro USB with power (preferably 2A/5V notes the FAQ of the app, BTW) – but I’ve used it so facing backwards in my car and haven’t yet set things up so that I’d have power there. (I got a Virb Elite at the same time and have used that facing forward.)

Interesting to hear that the super fast (above class 10) card seems to rather clearly improve the ability to capture photos at higher/-est frequency.

As for the photo taking frequency: am I missing something on 1/s or 2/s being always better than, say, 1 per 2 seconds (which is what the mobile app is set for by default and what I think I have currently set both my Virb and Yi for … and IIRC the Virb doesn’t even do faster with the high resolution?

One last comment/question: In image size options of the Yi I’m seeing both a 12Mpix option and a 13Mpix one. The former is 16:9 ratio and the latter is 4:3. Doesn’t it make sense to use the 13Mpix in stead of 12 as 4:3 is what Mapillary uses?

@jaakkoh I think my other cards are too woren to keep up. At some point I will write a post with all of the experiences I have with flash cards.

For a service like Mapillary, more photos is always better, at least in theory. Right now Mapillary will not skip photos if you upload them very close together, but I hope that feature will come. If you drive in a car, or even fast on bike, 0.5s makes great sense if you point the camera to the side. Often 1s is good for front facing. I think the app is set to 2s in order not to overload or fill up the phone. When walking it a good setting and it is also okay for driving in a urban environment.

16:9 vs. 4:3. Yes, I should set it to 4:2. I don’t think the lens will output 13 or 12 useable mega pixels, so I will chose something like 8 mega pixels. When used in a car 16:9 may make sense in order to get less of the dash board.

Interesting observations/thoughts.

My cards are the same SanDisks and are also performing ok – on Windows (using Sabrent USB 3.0 reader with USBdeview tool). Writes are around 8 MB/s and reads over 40 MB/s (which doesn’t matter of course).

Anyways, if I am reading you right the overtly slow write speeds happen in some other system than Windows? … in Linux? Phone/mobile device? How did you measure the write speeds that were only 4MB/s – or even under 1MB/s? Did I perhaps miss something?

I suspect my cards are “internally fragmented”, which can only be fixed by a system command these cards does not support.
Today I managed to reproduce the problem with the test program SanDisk requires. I had to set it to write 32 GB of data and thus not use its default settings. When I have a final conclusion I will update in this forum.

The cards have been used for around 150k-200k images, but that is only around 15-20 complete overwrites. They should hold up for much longer.