Yes currently it is very much on the safe side. But it would be great if you want to explore the error in relation to measurement time.
The code for the ATTINY84 makes it counts pulses within of a fixed 10.000 us interval
It takes 50 of these measurements and computes the average and this is what is send to the master.
There is also a 100.000 us switching delay, to allow the multiplexers to be set correctly
Hence 100.000+50x10.000 = 510.000 = 0.51 seconds + time needed to run the sketch (calculate and send over I2C)
So the 10 seconds allowed by the master can probably be reduced already quite a lot with this setup, but it is also interesting to see what the error does when changing the ATTINY settings. Perhaps we can already do something smarter than averaging to limit the error? median?
Here is a tutorial to program the ATTINY:
https://www.instructables.com/Using-the-Arduino-Uno-to-program-ATTINY84-20PU/
Basically it requires:
1. Connect the V, GND, C (SCK), D (MOSI), MI (MISO) and R(RESET) pins on the PCB to those of an an arduino uno / nano etc.
2. Program the Arduino uno / nano with the sketch Examples -> Arduino as ISP
3. Get the ATTINY board files and set the board to
ATTINY24/44/84,
processor ATiny84
clock: Internal 8Mhz
4. Select programmer "Arduino as ISP"
5. For the uno you need to put at 10uF capacitor between reset and gnd, for nano I can do without.
6. Opload the ATTINY84_slave sketch from
https://github.com/meetjestad/mjs_soil_moisture/tree/master/Firmware/Attiny84_slave