I built an RC Rover, building and programming a tx/tx set like you did. Added a camera for RPV use, with help from some of your previous videos. I updated my joystick to a $35 one from Amazon, could never get the cheap ones to work. I have wheel encoders so it goes where commanded, but haven't tried GPS follow-me. Thanks for the idea!
With that huge yagi I used for my balloon project and the plane at decent altitude that should get pretty good range. I bought a much more compact 4 -element yagi recently that I have yet to test. Might be a good excuse to make another video pimp the sbusmixer some more :)
Wonderful idea! I had this idea of doing something like this on a larger scale. Maybe build a larger unit that functions as a sort of mobile cargo carrier that auto-follows you. Ideal for carrying heavier loads that on walking routes that would otherwise weigh you down too much if you were to carry it by yourself.
A number things making more sense with how your sbusmixer (configurable node controller) work. Seeing hints of item property configuration and protocol definitions provided some useful contextual details. Like the direction you going, developing this. rotorresolutionposition (a meter vs few meters). Doing a simple calibration (mode) while both are hold a constant position would allow for exchange of runtime averages for lat/long to effectively compute a differential gps error. (an error vector as a distance, barring offset). You could even detect when "follow-me" had paused for a bit, the rover could do a brief related pause (2-5s) to update the differential gps calibration. (times are just guesses, don't think they need to be long, but would be depended on number of samples to reduce outliers in individual gps coordinates) Something hard to see in the video is the steepness of grade the rover was transversing. It was not evident until you zoomed out. A rover camera view, or an OSD graphic of filtered/averaged tilt, roll angle could help viewers understand the challenges the rover is facing in context. You may also want to add a "fail-safe" sleeping turtle mode, so don't need to worry about motors etc being abused if something unexpected happened.
@9:24 Cow1: Not what I'd be up to if I had thumbs. Cow2: He misses the baby sparrow. Cow3: We all miss the sparrow. ... Cow1: Great. Now I'm sad again about the sparrow.
The ceramic patch antennas used for GPS actually need a ground plane to perform well, which these modules lack. If you browse GPS antenna datasheets on Digikey for example you'll see that most manufacturers specify a ground plane on the order of 50x50-70x70mm, at which the antenna is tuned for best performance. Add a ground plane in that size range beneath/around the modules and you will likely see noticeable improvements in acquisition times and positional accuracy, especially with the BN220. You can plug the receivers into your PC and use uBlox uCenter to force the modules to acquire from a cold start to get an apples to apples comparison with and without the ground plane. I use copper tape which has a conductive adhesive to stick ground planes right on the wing/fuselage of my planes and "bond" them to the grounded shield on the back of the module (remove the sticker and residue.) Anything will work though. Aluminum duct tape or plain old kitchen foil are fair game so long as you can get a good electrical connection between them to the module's ground.
This sbusmixer can log three GPS inputs so I might try a test sometime to compare them, for that I would use the roof of my car as a ground plane. I don't think the ground plane needs to be connected to module ground. At least, I don't recall ever seeing anyone do that, and the development kits I got from u-blox have a simple disc with no connection.
@@iforce2d Thought about it the other day and you're right, the antenna shouldn't care if the plane is actually connected to the module ground. I keep looking at everything from a DC perspective 😅 The antenna should happily couple to a floating plane.
Very interesting project, once again! I could follow how it works, but would like to see more detail on tilt compensation for compass. Another application for this would be a “Follow me- camera”: One unit is connected to a camera on a tripod, with pan and tilt control (maybe also zoom control). The other unit is in your RC- aeroplane…
Search google for "magnetometer tilt compensation algorithm", the first couple of results should cover it pretty well. www.best-microcontroller-projects.com/magnetometer-tilt-compensation.html Yes, it would work for camera aiming. I made something similar a few years ago. No zoom unfortunately, but if the camera had some way to externally control zoom it could be done. th-cam.com/video/qwp4D-DHwjE/w-d-xo.html
Great video! Do you think that it would be more efficient to make such a car with a few dw1000 modules you made a video about a few years ago? Some people have done it!
Brilliant, really like your setup. Interesting to watch. Curious where you get your NRF24 units with the clip on antennas....had some standard ones that came up with about 5 metres range, totally useless. Even with some recommended changes, just crap basically.
Just had a look on eBay too and none with uFl antenna connection like Chris' here. Only PCB and screw on style www.google.com/search?q=aliexpress+nrf24l01+&client=firefox-b-d&biw=1440&bih=721&tbm=shop&sxsrf=ALeKk022aYuazpIlD3VTqhKVR6VI6YElaA%3A1621725981803&ei=HZOpYO3HMIGd4-EPmbesyAQ&oq=aliexpress+nrf24l01+&gs_lcp=Cgtwcm9kdWN0cy1jYxADMgYIABAeEBgyCAgAEAgQHhAYOgQIIxAnOgcIIxAnEIsDOggIABAWEB4QGDoGCAAQBxAeOggIABAIEAcQHjoKCAAQCBAKEB4QGDoICAAQDRAeEBg6CggAEAgQDRAeEBhQ2bIJWJWUCmCAmQpoAHAAeACAAfsBiAGaIpIBBjAuMjYuMZgBAKABAbgBAsABAQ&sclient=products-cc&ved=0ahUKEwitysWIuN7wAhWBzjgGHZkbC0k4FBDh1QMICg&uact=5#spd=3590400625536298852
Step up your search game guys :) Here are a few on Banggood starting from $1.70 bit.ly/2T4ERd8 bit.ly/3udC4vf bit.ly/2RFPJxU bit.ly/3vrYKJm bit.ly/2T2TBcv bit.ly/3uh28pf
@@iforce2d Thanks...yes, did look around but wasn't sure of the name etc. and Google can take one far distant from ones original search rather quickly at times. :) Cheers Jorgo
Cool project. Just curious, but how were you able to tune the PID steering values to get this to work? Did you attempt to do this empirically by tuning the steering based on different throttle inputs or is the car set to a constant throttle value when following you?
There is no PID, not really necessary. The throttle is constant until it gets close, and ramps up over a few seconds when starting to prevent a 'kicking' result - like I explained in the video.
I think the accuracy constantly varies with atmospheric conditions and movement of the satellites though, so a calibration probably wouldn't last long.
@@iforce2d no its not right now i m working on arducopter on traditional helicopter the heli kit cost only 80$ and rest is flight controller esc battery its cheap actually even if u go with a metal head assembly
Pls i want u to see run arducopter on a heli its very very different then a drone and its much more interesting to i have been following ur channel since the cheappass Quadcopter days learnt a lot and i pls request u do to try this traditional heli stuff 🙏
I know nothing about tradheli so I'm not sure why you're asking me. To be honest they freak me out and I wouldn't want to be standing anywhere near one. I might try it someday, but like I say the cost compared to a multirotor when you crash is pretty high. I subscribe to this guy's channel so I have seen that they work very well with Ardupilot though: th-cam.com/channels/JZjaDp78PKNFgLfDsm1J5A.html
No, I'm thinking it will be a commercial product. Thanks to Cooties-19 the main MCU that cost $2.12 last year is now around $24, everybody tells me that will revert to normal again but it could still be a long time before this can be made at a price that anyone will be interested in.
I learned from you alot from your previous videos, and I had to implement something similar for my ROV hobbyists project) I had to overcome compass tilt compensation right away as wobbles in water has some more effects. But RTH or even foloow me function is quite interesting I will challenge to implement in future developmants. Its quite challenging as I have gps of free-floating wired bouy and not the drone itself as I do not have a budget accoustic location of the drone..yet) but for distances like over 80-100m it must be not substential for a while. Your sbusmixer is interesting but I need to look more into how it works, as its interesting! Hope to see more from you in a while. I like your channel much!
The receiving side has a FIFO buffer of 3 packets. If you don't clear this quick enough, new incoming packets will be discarded. So check as frequently as possible and when reading packets don't just read one, read all available packets to make sure the queue is cleared. The frequency required to keep up will depend on how fast the TX side is sending. This is the first thing I would suggest to look at, since the RX FIFO is the only place 'old' data is stored that might cause latency. Just in case that didn't make much sense, and assuming you're likely using arduino, and possibly have a delay() call to adjust the main loop time like this: void loop() { checkNRF24Incoming(); doOtherStuff(); delay( 10 ); } During the delay() there can be packets arriving that get ignored. To clear the incoming queue as fast as possible and still do the 'other stuff' at a slower rate you'll need something more like this: unsigned long lastUpdateTime = 0; void loop() { checkNRF24Incoming(); unsigned long now = millis(); if ( now - lastUpdateTime > 10 ) { doOtherStuff(); lastUpdateTime = now; } } If the doOtherStuff() takes a while, you might even want to sprinkle in a few calls to checkNRF24Incoming() at various points within it as well.
all of those small joysticks are kind of bad. i tried to build a small rc car and bought a lot of different ones but all are terrible the best i found where from a xbox controller
As I mentioned in the video, there are a lot of things that will change yet. The project is a long way from done, there is no documentation, no website, and nobody else owns any of these boards anyway, so what would they do with a tutorial.... This series of demos is mainly for me to pretend I'm an end user, and to test new features I'm adding. It will serve as a showcase of example usages of the system, which will be more useful after it's properly released.
I was afraid for a moment he wasn't gonna say "hello"
I built an RC Rover, building and programming a tx/tx set like you did.
Added a camera for RPV use, with help from some of your previous videos.
I updated my joystick to a $35 one from Amazon, could never get the cheap ones to work.
I have wheel encoders so it goes where commanded, but haven't tried GPS follow-me. Thanks for the idea!
Amazing, follows like a little puppy 🐕...lol
Looked like perfect calm flying conditions being wasted though...🤔😳😀🇬🇧
You've got yourself a great dog that will never stop to pee or smell stuff 😉😊
Cow #1: "Have you seen his latest?... it's great!"
Cow #2: "Nah, that's old stuff... I saw it in a carpark in Japan years ago!"
Thanks Chris. :o)
Do you have anything to do with the electronics of the auto caddy? Stewart Q follow?
I feel like this system could be used to make a pretty good antenna tracker
With that huge yagi I used for my balloon project and the plane at decent altitude that should get pretty good range. I bought a much more compact 4 -element yagi recently that I have yet to test. Might be a good excuse to make another video pimp the sbusmixer some more :)
Wonderful idea! I had this idea of doing something like this on a larger scale. Maybe build a larger unit that functions as a sort of mobile cargo carrier that auto-follows you. Ideal for carrying heavier loads that on walking routes that would otherwise weigh you down too much if you were to carry it by yourself.
A number things making more sense with how your sbusmixer (configurable node controller) work. Seeing hints of item property configuration and protocol definitions provided some useful contextual details. Like the direction you going, developing this.
rotorresolutionposition (a meter vs few meters).
Doing a simple calibration (mode) while both are hold a constant position would allow for exchange of runtime averages for lat/long to effectively compute a differential gps error. (an error vector as a distance, barring offset).
You could even detect when "follow-me" had paused for a bit, the rover could do a brief related pause (2-5s) to update the differential gps calibration. (times are just guesses, don't think they need to be long, but would be depended on number of samples to reduce outliers in individual gps coordinates)
Something hard to see in the video is the steepness of grade the rover was transversing. It was not evident until you zoomed out. A rover camera view, or an OSD graphic of filtered/averaged tilt, roll angle could help viewers understand the challenges the rover is facing in context.
You may also want to add a "fail-safe" sleeping turtle mode, so don't need to worry about motors etc being abused if something unexpected happened.
@9:24 Cow1: Not what I'd be up to if I had thumbs.
Cow2: He misses the baby sparrow.
Cow3: We all miss the sparrow.
...
Cow1: Great. Now I'm sad again about the sparrow.
Love the detail! Keep up the awesome work.
I was right, there is no end to your talent. Keep up the good work, although I do not undrstand most of it.
what about obstacles?
Please tell me the Japanese kid and his dad will be reprising their roles
Wonder if the Electric fence running both sides of the road did not help the direction........
the cows are not impressed, I think its awesome! thou nice work.
Im really interested on this, can i get all the list of item to do this?
The ceramic patch antennas used for GPS actually need a ground plane to perform well, which these modules lack. If you browse GPS antenna datasheets on Digikey for example you'll see that most manufacturers specify a ground plane on the order of 50x50-70x70mm, at which the antenna is tuned for best performance.
Add a ground plane in that size range beneath/around the modules and you will likely see noticeable improvements in acquisition times and positional accuracy, especially with the BN220. You can plug the receivers into your PC and use uBlox uCenter to force the modules to acquire from a cold start to get an apples to apples comparison with and without the ground plane.
I use copper tape which has a conductive adhesive to stick ground planes right on the wing/fuselage of my planes and "bond" them to the grounded shield on the back of the module (remove the sticker and residue.) Anything will work though. Aluminum duct tape or plain old kitchen foil are fair game so long as you can get a good electrical connection between them to the module's ground.
This sbusmixer can log three GPS inputs so I might try a test sometime to compare them, for that I would use the roof of my car as a ground plane.
I don't think the ground plane needs to be connected to module ground. At least, I don't recall ever seeing anyone do that, and the development kits I got from u-blox have a simple disc with no connection.
@@iforce2d Thought about it the other day and you're right, the antenna shouldn't care if the plane is actually connected to the module ground. I keep looking at everything from a DC perspective 😅 The antenna should happily couple to a floating plane.
Very interesting project, once again!
I could follow how it works, but would like to see more detail on tilt compensation for compass.
Another application for this would be a “Follow me- camera”: One unit is connected to a camera on a tripod, with pan and tilt control (maybe also zoom control). The other unit is in your RC- aeroplane…
Search google for "magnetometer tilt compensation algorithm", the first couple of results should cover it pretty well.
www.best-microcontroller-projects.com/magnetometer-tilt-compensation.html
Yes, it would work for camera aiming. I made something similar a few years ago. No zoom unfortunately, but if the camera had some way to externally control zoom it could be done.
th-cam.com/video/qwp4D-DHwjE/w-d-xo.html
@@iforce2d Excellent, Thank You !
That is basically a dog.
I need to add this to an Astro mech, stat!
Great video! Do you think that it would be more efficient to make such a car with a few dw1000 modules you made a video about a few years ago? Some people have done it!
Only if you want it to work indoors.
I shall call it 'Loyal Robot Dog'
Brilliant, really like your setup. Interesting to watch. Curious where you get your NRF24 units with the clip on antennas....had some standard ones that came up with about 5 metres range, totally useless. Even with some recommended changes, just crap basically.
Just had a look on eBay too and none with uFl antenna connection like Chris' here. Only PCB and screw on style www.google.com/search?q=aliexpress+nrf24l01+&client=firefox-b-d&biw=1440&bih=721&tbm=shop&sxsrf=ALeKk022aYuazpIlD3VTqhKVR6VI6YElaA%3A1621725981803&ei=HZOpYO3HMIGd4-EPmbesyAQ&oq=aliexpress+nrf24l01+&gs_lcp=Cgtwcm9kdWN0cy1jYxADMgYIABAeEBgyCAgAEAgQHhAYOgQIIxAnOgcIIxAnEIsDOggIABAWEB4QGDoGCAAQBxAeOggIABAIEAcQHjoKCAAQCBAKEB4QGDoICAAQDRAeEBg6CggAEAgQDRAeEBhQ2bIJWJWUCmCAmQpoAHAAeACAAfsBiAGaIpIBBjAuMjYuMZgBAKABAbgBAsABAQ&sclient=products-cc&ved=0ahUKEwitysWIuN7wAhWBzjgGHZkbC0k4FBDh1QMICg&uact=5#spd=3590400625536298852
$5 on Banggood
www.banggood.com/GT-24-Digital-Wireless-Module-2_4G-NRF24L01-PA-LNA-Industrial-Grade-1100M-Long-Distance-With-Non-wel-p-1361350.html
@@iforce2d Thanks......what about the antenna ...?
Step up your search game guys :)
Here are a few on Banggood starting from $1.70
bit.ly/2T4ERd8
bit.ly/3udC4vf
bit.ly/2RFPJxU
bit.ly/3vrYKJm
bit.ly/2T2TBcv
bit.ly/3uh28pf
@@iforce2d Thanks...yes, did look around but wasn't sure of the name etc. and Google can take one far distant from ones original search rather quickly at times. :)
Cheers Jorgo
Cool project. Just curious, but how were you able to tune the PID steering values to get this to work? Did you attempt to do this empirically by tuning the steering based on different throttle inputs or is the car set to a constant throttle value when following you?
There is no PID, not really necessary. The throttle is constant until it gets close, and ramps up over a few seconds when starting to prevent a 'kicking' result - like I explained in the video.
Electric fence issues?
Woww very good idea...you have some very high skills!!!!very very nice!!!
Kiwi Mars Rover?
Is it just following a vector to the Rx position or is it following a breadcrumb trail as you move?
Just a vector
Is there such a thing as a matched pair of GPS units?
To the extent that they're consistent enough for it to matter, perhaps you could do a calibration in software
I think the accuracy constantly varies with atmospheric conditions and movement of the satellites though, so a calibration probably wouldn't last long.
Hello, great video.
As a diversification, you could record and send recorded path of remote control, then the follower would follow exactly same path.
Pls try arducopter on traditional helicopter setup
Sounds expensive...
@@iforce2d no its not right now i m working on arducopter on traditional helicopter the heli kit cost only 80$ and rest is flight controller esc battery its cheap actually even if u go with a metal head assembly
Pls i want u to see run arducopter on a heli its very very different then a drone and its much more interesting to i have been following ur channel since the cheappass Quadcopter days learnt a lot and i pls request u do to try this traditional heli stuff 🙏
I know nothing about tradheli so I'm not sure why you're asking me. To be honest they freak me out and I wouldn't want to be standing anywhere near one. I might try it someday, but like I say the cost compared to a multirotor when you crash is pretty high. I subscribe to this guy's channel so I have seen that they work very well with Ardupilot though:
th-cam.com/channels/JZjaDp78PKNFgLfDsm1J5A.html
14:00... If you want a steady supply of electronic components, just set up camp in the middle of Africa at Lat/Long zero zero and wait!
Great project..
That's pretty sweet... now make a drone plane follow your lead plane please :)
Have you seen that film: Killdozer ?
What tool are you using here @13:00
It's a system I'm developing that lets you make arduino-like things without coding.
@@iforce2d is it opensource? Where can one have a go with it?
No, I'm thinking it will be a commercial product. Thanks to Cooties-19 the main MCU that cost $2.12 last year is now around $24, everybody tells me that will revert to normal again but it could still be a long time before this can be made at a price that anyone will be interested in.
@@iforce2d ah i c. You created it. Well look forward to seeing the final product :-)
I learned from you alot from your previous videos, and I had to implement something similar for my ROV hobbyists project) I had to overcome compass tilt compensation right away as wobbles in water has some more effects. But RTH or even foloow me function is quite interesting I will challenge to implement in future developmants. Its quite challenging as I have gps of free-floating wired bouy and not the drone itself as I do not have a budget accoustic location of the drone..yet) but for distances like over 80-100m it must be not substential for a while. Your sbusmixer is interesting but I need to look more into how it works, as its interesting! Hope to see more from you in a while. I like your channel much!
I've been playing with the nrf24, but I'm noticing a lot of latency, what do you recommend?
The receiving side has a FIFO buffer of 3 packets. If you don't clear this quick enough, new incoming packets will be discarded. So check as frequently as possible and when reading packets don't just read one, read all available packets to make sure the queue is cleared. The frequency required to keep up will depend on how fast the TX side is sending.
This is the first thing I would suggest to look at, since the RX FIFO is the only place 'old' data is stored that might cause latency.
Just in case that didn't make much sense, and assuming you're likely using arduino, and possibly have a delay() call to adjust the main loop time like this:
void loop() {
checkNRF24Incoming();
doOtherStuff();
delay( 10 );
}
During the delay() there can be packets arriving that get ignored. To clear the incoming queue as fast as possible and still do the 'other stuff' at a slower rate you'll need something more like this:
unsigned long lastUpdateTime = 0;
void loop() {
checkNRF24Incoming();
unsigned long now = millis();
if ( now - lastUpdateTime > 10 ) {
doOtherStuff();
lastUpdateTime = now;
}
}
If the doOtherStuff() takes a while, you might even want to sprinkle in a few calls to checkNRF24Incoming() at various points within it as well.
@@iforce2d that's exactly how it's setup thanks!
all of those small joysticks are kind of bad. i tried to build a small rc car and bought a lot of different ones but all are terrible the best i found where from a xbox controller
why are u not making a tutorial
As I mentioned in the video, there are a lot of things that will change yet. The project is a long way from done, there is no documentation, no website, and nobody else owns any of these boards anyway, so what would they do with a tutorial.... This series of demos is mainly for me to pretend I'm an end user, and to test new features I'm adding. It will serve as a showcase of example usages of the system, which will be more useful after it's properly released.
@@iforce2d So the board is made by you, but what about the software that you program the board is that also made by you yourself
Yeah I'm making all of it, that's what I'm referring to as 'system'.
@@iforce2d nice
👏👏👏
Now stick it on a real car and compete with Tesla :DD
Good Idea
+