Thank you johnwasser for the huge replay..
It's still a bit confusing but after a couple test this is what I found.
Im using both boards v1.2 and v2.0 they are actually has different strangeness..
First I guess is very important for both is that if you implementing masks and filters in the setup. before you upload a sketch you got to take the OBD cable out of board otherwise it will not implement the filtering... It's a bag I guess.
After a couple of couple of couples tests it seems like THAT to me. But again with that cable thing and all the weirdness what happening I might slightly wrong...
So
if you want to see a specific IDs for example in my case it was 0x740 and 0x4C0 then we need to set mask and filter like that:
CAN.init_Mask(0, 0, 0x07FF);
CAN.init_Filt(0, 0, 0x740);
CAN.init_Mask(1, 0, 0x04FF);
CAN.init_Filt(1, 0, 0x4C0);
Human speaking of my understanding .. the first byte of the massage to be accepted must to match corresponding byte in the mask so the byte 7 and 4 passes the mask. then the other 2 bytes(which is FF in mask) if you need the specific massage to be shown must match the filter byte.
Now if you want to see a rang from address to address and here I didn't get all the ting yet but works like that... in my case I wanted to see range 0x700 to 0x7FF . So it's definitely not passes any massages below 0x700 and my car has no massages with address above 0x7FF so I didn't figure the top one yet.
CAN.init_Mask(0, 0, 0x0700);
CAN.init_Filt(0, 0, 0x700);
CAN.init_Mask(1, 0,0x0700);
// CAN.init_Filt(1, 0, 0x7E8);
So now any massages on CANBus has to match the first byte of the mask to be accepted which is 7 and other 2 bytes on the mask is 00 which means don't care and passes. The ting is here that why then we need CAN.init_Filt - it doesn't work without. So we have to have it and what is more that the addres could be any. I mean CAN.init_Filt(0, 0, 0x7any);