{"macID" : {$in : [1,2]}} no significa que está buscando dos documentos (con "macID" : 1 y "macID" : 2 ), significa que está buscando cualquier documento que tenga macID igual a 1 o 2 .
Entonces upsert: true le dice a MongoDB que cree solo un documento (no dos).
Debe proporcionar varias solicitudes de actualización (use bulkWrite
con updateOne no updateMany ).