The [software section of setup guide](https://learn.sparkfun.com/tutorials/qw … rogramming) is lacking.
The only information you share about the I2C addressing is in the comments of the code snippet you provide. If you were to add a couple sections, the majority of posts regarding HC-SR04 would have never been posted.
Here are the missing setup instructions:
NOTE: The HC-SR04 Qwiic comes from the factory with an I2C address of 0x00. This address is reserved by the I2C standard, and should be changed immediately.
To change the address, simply write the new, valid (0x02-0x7F) address to the device over I2C.
wire->begin();
wire->beginTransmission(0x00);
wire->write(<valid_address>);
wire->endTransmission();
wire->end();
NOTE: Once the address has been changed from 0x00
, it cannot be changed back. However, the address can be changed to a valid address (0x02-0x7F) as frequently as you like.
It would be nice, if you provided similar detailed instructions regarding the read transaction, but that can easily be inferred from the sample code you have provided.