Database

[{"data_start":[1,1,0,0,1,1,0,],"time_start":["2021-09-04T12:18:42Z","2021-09-04T14:59:50Z","2021-09-04T14:59:59Z","2021-09-04T15:00:00Z","2021-09-04T15:00:01Z","2021-09-04T15:05:00Z","2021-09-04T15:05:01Z"]}]

Query

db.collection.aggregate([{$set:{data:{$let:{vars:{val:"$data_start",prev:{$concatArrays:[[null],"$data_start"]}/** shift values by one element*/},in:{$map:{input:{$range:[0,{$size:"$$val"}]},as:"idx",in:{$cond:{if:{$and:[{$eq:[{$arrayElemAt:["$$val","$$idx"]},0]},/** is 0*/{$eq:[{$arrayElemAt:["$$val","$$idx"]},{$arrayElemAt:["$$prev","$$idx"]}]}/** is equal to previous*/]},then:null,else:{data_start:{$arrayElemAt:["$$val","$$idx"]},time_start:{$arrayElemAt:["$time_start","$$idx"]}}}}}}}}}},{$project:{data:{$filter:{input:"$data",cond:"$$this"/** -> removes null's from array*/}}}}])

Result