MKV is just a container, my guess is that the mkv's that dont play video on the zgemma are can't be decoded by the box's chipset, but if you get video on smart tv, android, pc etc. it means that they can decode the video stream.
Try a pc app called mediainfo (opensource/free) examine the mkv to see what it's video is encoded as, then look if you zgemma can nativly decode it.
Here is an example, mkv plays on my pc but not properly on raspberry PI3 (weird blocks and artifacts), reason was video was encoded as Hi10 which PI3 is powerful enough to decode fully.
I'm now having the same issue as the original poster.
I have a Zgemma H.2S and recently the links I've been accessing have been changed from .mp4 format to .mkv. The encoding in these files is HEVC/H.265. Does anyone know if the H.2S supports this format and if so where I could get the decoder from and how would I install it?