With the release of the new version of Arduover 4.1, it became possible to use HC-SR04. The principle of operation of the JS-SR04 is the same as that of the HC-SR04. I connected JS-SR04T, it works fine. The parameters are almost the same as the HC-SR04.
I compared the readings with the Mission Planner and the Laser rangefinder.
In the photo, they are directed at the ceiling in the room. This sensor can be used as a sonar, I will post the tests later.
Great! Iβll try to compare its readings with Kogger Sonar.In Russia, the JS-SR04T is widely used as an echo sounder in homemade autopilots (based on STM32) for bait boats.
the plan is to try and convert it so that it can be used for water depth like shown here. i went out today to test it but had no luck due to high winds and low tide.
the other problem is scaling since sound travels faster in water. i dont think the sr04 code in ardupilot supports scaling so i was going to convert it to analogue before connecting it to the pixhawk using the board off this https://www.aliexpress.com/item/32947149151.html
JSR 04 T works great as an echo sounder, type in the youtube search βΠΏΡΠΈΠΊΠΎΡΠΌΠΎΡΠ½ΡΠΉ ΠΊΠΎΡΠ°Π±Π»ΠΈΠΊ Π³Π»ΡΠ±ΠΈΠ½ΠΎΠΌΠ΅Ρβ you will see dozens of videos with examples in Russian the only one. These videos are self-made autopilots, with depth mapping on FlySky equipment only.
The speed of sound is different, but there you can change the coefficient to adjust for water.
thats probably why i couldnβt find the videos.there are very few videos on it in English. i will do some testing with it soon to see how well it works.
have your tried it with the pixhawk to see if you can scale the range finder distance to work in water? as far as i know the scaling function is only for calibrating analogue rangefinders.
i have done some testing and as i thought there is no easy way to change the scaling on a sr04 within ardupilot.I changed the sonar voltage scaling but it doesnt do anything it only effects analogue sonars thats why i was going to convert it to analogue. there was a backpack for the sr04 using a arduno that let the sr04 emulate a maxbotix i2c sonar but i cant find the code for it.
based on the data to the library, the values being taken are divided by 58. Apparently this is a coefficient for air. Since the speed in the air is about 320m/s and in the water 1450m / s, it is enough to change this coefficient(58). But I donβt own Github enough to do that
I found the code to convert one of these to analogue to be able to adjust it in ardurover as an analogue ratio. I also got my sr04 backpack, but im having issues with my JS-SR04 so I need to wait until I get another one before I can test it.
this might be a better option for boats, the control board is sealed
I am going to get one of these to test underwater, the dual transducer version can work at much shorter distances, im going to order one to see if it works better as a depth sounder in shallower water.
I tested the new equipment - JSN-SR20-Y1. As tests have shown, it does not cope with its task badly.
Below is a video(in Russian) with a test. Test JSN-SR20-Y1
I found some other sensors that could be useful, the first one converts a sr04 to i2c, freeing up gpio pins and possibly allowing scaling in ardupilot. the second is an analogue version of the sr04 called the US-016, it would need the transducers swapped for water proof versions but it should work as it runs at the same 40khz and because its analogue it would support scaling in ardupilot.