Well done, excellent job creating and explaining it.
@temyraverdana6421
4 ай бұрын
Amazing project and useful video. Thanks so much
@hxtec32
4 ай бұрын
Thanks bro.
@mr.kashyapamesara4600
4 ай бұрын
Really nice work I recently done my postgrad dissertation with the ESPnow protocol and bunch of esp32.
@hxtec32
4 ай бұрын
Thanks bro. Would love to read it, is it published somewhere?
@TheOldKid
4 ай бұрын
Awesome job
@turnabot7307
4 ай бұрын
Awesome! Great explanations!!!
@hxtec32
4 ай бұрын
Thanks!
@kiritosan7753
4 ай бұрын
Earned my sub man , keep up the cool work
@hxtec32
4 ай бұрын
Thanks so much :)
@ahmadhasan3258
4 ай бұрын
that stock video hahahahahaha
@newmonengineering
4 ай бұрын
Is there any way you could measure the latency of this type of setup. I.e. how long after you press go, does it actually move, and how long after you release or stop does it take to begin the deceleration? Awesome video, your doing great. I am just curious to how good or bad this setup is as far as the delay is concerned. Also it would be interesting seeing your methodology to measure a latency, i would like to see what the best method would be to accurately measure the small time it takes.
@m4gg197
4 ай бұрын
the simplest solution would be to send an ESPNOW packet to the receiver and, upon receiving it, send one back to the transmitter. measure the time this all takes on the transmitter and optionally divide it by 2 if you want the latency for only one way. voila.
@hxtec32
4 ай бұрын
haven't measured latency. I can tell you its pretty fast though, I can't notice any lag whatsoever when I'm driving it.
@elektron2kim666
4 ай бұрын
I am trying some things with this and it's useful info.
@hxtec32
4 ай бұрын
Cool, hope you do well with it :)
@hapsti
4 ай бұрын
ill stick to ELRS, thanks :3 good video
@hxtec32
4 ай бұрын
Yeah I have some work to do with improving the transmitter and range, probably will have to add a really high gain antenna too
@paradiselost9946
4 ай бұрын
still running a 50YR old 36MHz futaba, not about to change yet.
@hxtec32
4 ай бұрын
If it works it works 😂
@zaqwsx28
4 ай бұрын
The problem is where to source high quality gimbals. Xbox joysticks have very large dead zones, and the sticks are very short for precise movements (try to drive figure 8).
@JackOHaraEngineering
4 ай бұрын
i know some companies used to sell extenders for the xbox sticks. they'd just pop on top and it made cod easier
@robotarenachallenge
4 ай бұрын
i really suggest to switch from ps4 joystick to ps5 ones (orange ones you used in photos) the ps4 stick have a worse return to centre spring that after some use it will just cause the stick to get stuck, you can 3dprint a case to limit the joystick travel and save the mechanism, but for now on all our loan bots with ps5 ones were fine while i slowly had to replace all the ps4 only part that espnow is lacking is being able to be used in 2.4ghz polluted areas (rc model faires or so) otherwise we agree it's an awesome protocol!
@hxtec32
4 ай бұрын
Thanks so much! Does ESP-NOW have issues in a 2.4GHz polluted environment? I would've thought the MAC addresses and stuff mitigate this a little, but would love to hear from you what kind of interference issues you've been having and how bad they are. Thanks for the tip on PS4 vs PS5 joysticks.
@robotarenachallenge
4 ай бұрын
@@hxtec32 yes it definitely mitigates the issue compared to bluetooth and standard wifi comunication, but it doesn't reach rc transmitter level at maker faire event, and demo event at pubs we didnt see any issue, but I had to find an esp wifi channel that is uncommon to be used on modems in my city the issues started to show at model expo italy, with definitely more than 100 simultaneously on rc transmitters, espnow range was about 30cm, and it had severe latency and noise causing pretty much uncontrollable movement the same issue were shown while is some royal rumble with all our bots so concurrent peers are limited, switching a couple bots to another wifi channel while esp-now is not a wifi packet it uses the wifi layer for transportation, this means that we are limited to same frequency/channels and on top of that the wifi layer has an ack packet and resend procedure ans that may cause more latency in some case like the robot having a less powerful antenna on the module and not being able to send the ack back for now i've tested every on esp wroom32, s3 and c3, the biggest issue was with s3 transmitter and c3 receiver, it is definitely possible to successfully run an esp robot in some events, but plan some test and if you have issue some esp-now tuning (long range, different wifi channel, different mac) and let us know!
@dougleppard
23 күн бұрын
You both answered my questions, can you use ESP-NOW seems Yes except in an RF polluted environment. Like this idea to produce cheap bots for kids in a financially challenged area.
@abhishekprasad8151
4 ай бұрын
magnetic gyros when
@AimingIsOverrated
2 ай бұрын
where is new video??????
@hxtec32
2 ай бұрын
@@AimingIsOverrated look again lol
@NezihBenJemia
4 ай бұрын
Great video just discovered your channel
@Mad_Catter_
4 ай бұрын
1:50 We going to just walk right past that freaking sweet one handed reload animation? Bro. It was so realistic I swear.
@jolttsp
4 ай бұрын
Nice work! Esp now information just in time for my own project using it. Well, not really because I don't have any time to work on it til July, but I like to think I'm starting soon 😅 Btw I'm back in town and got my shirts. Thanks!
@hxtec32
4 ай бұрын
Awesome! Good to hear, thanks so much!
@TheOldKid
4 ай бұрын
Depending on the range this could be an easier route for my r/c project than going through flysky, arduino, motor controller and such. I have control of 3 motors but 2 that I have to run through arduino has been a nightmare. Finally got a code to at least get fwd and rev but nothing I try gives me a neutral or deadzone.
@SLAYERSARCH
4 ай бұрын
i came to the same conclusion
@Vince_Huang
4 ай бұрын
How do you deal with latency and range issue with espnow? I tried to control a drone with esp now but the signal can be block really easily which makes the overall flight very unreliable
@hxtec32
4 ай бұрын
Haven’t needed to, combat robots are normally driven from ~3 metres away from the transmitter, so not much range is needed. I had about 30m of reliable range, which was enough for me. As someone who hasn’t experienced these issues, all I could say is keep the data packets below 200 bytes for latency issues, and make sure your antennas are high gain and matched properly.
@BamTehBrent
4 ай бұрын
esp wen
@hxtec32
4 ай бұрын
ESP who
@santynolo
4 ай бұрын
esp why
@hxtec32
4 ай бұрын
@@santynolo esp what
@hxtec32
4 ай бұрын
@@santynolo esp who is an actual thing btw
@santynolo
4 ай бұрын
@@hxtec32 bruh
@ElectroFriedBees
4 ай бұрын
Just for the future, the S3 does not 'break out' features to the GPIO. Instead you can assign almost anything to almost any GPIO you want in software (few pins to avoid) and the chip reroutes the signal to the correct pin. You could have skipped the ADC, otherwise great project!
@hxtec32
4 ай бұрын
Thanks dude! The key word here is ‘almost’. If you’ve read the ESP32-S3 chip datasheet, you would know that only GPIO1 to 20 can be used for ADC channels, and GPIO 1 to 10 is ADC1, while GPIO 11 to 20 is ADC2. If you read further, you’d see that ADC2 can be used, unless there is an ongoing WiFi connection. To my knowledge, ESP-NOW needs the ESP chip to set itself up as a WiFi station before beginning communication. On the T-QT Pro ESP32-S3 board I have, GPIO 16 to 18 are broken out; this is 3 channels part of ADC2. I need 4 ADC channels (or pins) to read both joysticks, so not only did I not have enough ADC channels, but they were all part of ADC2, which, from my understanding, could not be used during ESP-NOW communication. So, while things like PWM output, I2C pins, and I2S pins can be ASSIGNED to any GPIO as per the datasheet, ADC channels can’t, and instead, GPIO1 to 10 serve as 10 channels of ADC1 which can be used with no restrictions, and GPIO 11 to 20 serve as 10 channels of ADC2 which are restricted in that they can’t be used during an ‘ongoing WiFi connection’. Thanks 😁
@arcticpilotshow4440
4 ай бұрын
Thank you, I like ESP-NOW.
@hxtec32
4 ай бұрын
Thanks 😁
@bami2
4 ай бұрын
That's a great overview, nicely done! Basically everything needed to build a smol combat robot is here, with the hardware side in the previous video and the software here. One thing I'm missing though is a safety shutoff? Basically every competition I've seen has a rule that if your bot is moving or has a weapon running, if it loses connection with the transmitter (by just turning it off during a safety check) the bot should stop/brake all motors and become immobile until connection is restored, but I had a quick look at your sources and I don't think you've implemented this. This is quite an important feature for any combat robot as it will not pass safety checks without one! You also typo'd the "sesrvo" variable in your receiver script :).
@hxtec32
4 ай бұрын
Thanks bro. Oh yeah, I like naming multiple variables that serve for one purpose misspellings. My code is horribly commented and laid out, which is why I split it up by function in the video, and not just saying what each line did since that wouldn’t make sense to people lol. For example, if there are two variables to control / receive data for the servo, I’ll have variables servo and sesvro, or servoo or something. If you take a little look at the receiver program (antrx) in the GitHub, it uses a timer to have a fail safe, if it loses signal the robot will stop after ~300ms or so. Very helpful, you can take a look at that code to get some understanding for that part. Thanks so much for this awesome comment, I really appreciate it.
@bami2
4 ай бұрын
@@hxtec32 Ah I was looking at the antc3 repository where it wasn't implemented yet, but in the antc3code it's there!
@hxtec32
4 ай бұрын
@@bami2 lol, thanks mate, I'll try to make it clearer where the code and stuff is
@conorstewart2214
4 ай бұрын
@@hxtec32 your method of variable naming isn’t great. It might work fine for you now but if you are posting code for others to look at then it just isn’t good. Even just coming back to your own code later can be difficult if you have lots of badly named variables. It is definitely worth spending a little longer thinking about it and typing a few more characters and giving the variables meaningful names.
@hxtec32
4 ай бұрын
@@conorstewart2214 true i might do that
@3DPrinterDoc
4 ай бұрын
This would be perfect for your projects @professorboots
Пікірлер: 57