No Signal, No Problem! DIY ESP32 Festival Tracker Unveiled! - Part 2
HTML-код
- Опубликовано: 11 фев 2025
- Description:
Join me with my update on the festival tracker. In this video I will show you my progress as well as my code and how good it works.
Github: github.com/aur...
Part 1: • No Signal, No Problem!...
Check if you have a QMC or HMC: surtrtech.com/...
Sign up for my newsletter to not miss any updates and interesting dev content:
blog.auryn.dev...
Parts used in this video:
ESP32 Wroom 32 de.aliexpress.... 3.89€
QMC5883L de.aliexpress.... 1.75€
1.28” TFT round display de.aliexpress.... 3.18€
LoRa SX1278 de.aliexpress.... 2.83€
ENLINCA 5V 1A de.aliexpress.... 1€
Mini DC-DC Step Up Boost Konverter de.aliexpress.... 1€
GY-NEO6MV2 neue NEO-6M de.aliexpress.... 3.03€
Creality Ender 3 V3 KE www.3djake.de/... 259€
Timeline:
00:00 Introduction
00:20 Progress
01:55 Problems
03:45 Power
04:30 Messed up
05:50 Next Steps
06:32 Outro
"more time, more money, and it won't work as well" describes every DIY project I've ever done😂
So true 😂
Same here 😅
Why buy it for 20€ when u can build it for 50 yourself ;)
@@deadSoldier9 and learn much stuff!
@@deadSoldier9well her mentioned the originals cost 50 and more
This is so awesome! Subscribed ❤
A few ideas..
1. setup repeaters so it works in big festivals.
2. Add nfc, so putting two of these together for 3 seconds adds them as friends :)
3. PTT walkie talkie between friends, or group, and maybe connect with phone over BT to send txt messages.
4. Better standby, wakeup signal and battery management
5. See multiple friends at once like a star constellation of you and them.
6. Click to save current gps point and label it (mainstage, meetspot) and send it to friends
7. Emergency button. If you feel like you are not in a safe situation, call friends, or everyone near you
Also from my experience with IMUs the best is to use quanterions , it will show you north/friend arrow correctly no matter the device orientation :)
All the best
have a look at Meshtastic project, all things you've mentioned are covered
every device is a repeater, no need in nfc - everyone connected, phone connection via BT with chat and GPS
@@424442 for sure, I meant for his implementation to have better ux.... I like the NFC pair for new friends without needing to pull any other device. Also do meshtasic provide range extenders? I mean devices that work on the meshtasic network but are not battery powered, and practically extend the range much farther then regular nodes can
Yesssss I love all these additions! To add to point 7, these devices could send out intermittent signal in normal mode to save on battery and it could be designed with enough reserve battery that the emergency broadcast mode puts out way more signal and has the battery reserves to do so for quite some time!
Also point 8, I would love to work with Auryn to modify the display graphics to make it a little more intuitive to see the distance from friends. Ideally color and shape cues like the arrow growing when you’re further from you friend and getting shorter and turning green when you’re getting closer!
Great job sharing both the setbacks and your progress! I see the "gyro" is actually a 3axis compass module - I think you might be able to address your tilt issues in code, since you can work out what the 3d vector of north is across all the axes, and choose the direction to guide based on what that tells you about the orientation of the display.
So if when the display is lying flat the x-component of the magnetic field is near zero, then it tells you the sensor's x-axis is normal to the display, so if you start getting a magnetic field in the x axis you can assume the screen has been tilted up, if that makes sense. Of course it will be a bit more complicated than that, just illustrating the concept 🙂You basically rotate your "frame of reference" based on where the 3d "North" vector is, and use that to decide what to display on the screen.
It still amazes me how much more complicated a "simple" project ends up being once you get down to actually doing it!
Looking forward to your next instalment!
So true. Didn’t expect so many issues as well 😅
With the third Axis I also thought this should be feasible. But didn’t found an easy equation yet als also didn’t had to much time 😅
Definitely need to figure things out part by part.
Let’s see where this is going. Maybe I find a gps with compass included. This should remove already some headache 😅
I would suggest you try combining a digital compass, an accelerometer and a gyroscope.
I'm not saying that you need them all in a final product, but you might experience that your issues with orientation is easily handled by combining either compass and gyro - or compass and accelerometer.
🧲🧭😎
Will Take a Look
Thank you :)
You want a 9dof module, which has 3 gyros, and a magnetometer to determine your absolute position in space without manual calibration. Then you can calculate the horizontal plane component of the quaternion. Adafruit sells an integrated module with all the code implemented in a coprocessor, but pricey and probably power-hungry.
@@CodingWithAuryn Can someone from here build a very similar product like this? if yes hit me up.
Fantastic! Love this little project that you shared. The fact that we can get all of these modules pre-made and “just” stitch them together amazing. Let’s just say my EE degree goes back to the time when everything you built was custom, from the ground up.
Add this to a HUD, and it would be awesome for airsoft / paintball games to track your squad and set up invisible crossfires on a target.
:D true.
Love seeing this come together! I'd recommend always having the distance to be displayed at the "top" of the display, no matter what direction the arrow points, so you don't have to turn to look in the direction of your friends each time you want to quickly glance down at how far you are from each other.
No comment about adding part01 link in description ? i would have upvote it :D
:D added the parts to the description :P
Fair point. also an idea. But if you have more friends, i thought this may be easier to read. Also if I rotate to the friend, it is on top again :D
But fair point
It's a good start, couple things I'd change, your update rate is probably a bit much, I'd say every 5 or 10 seconds would be enough.
Add a "lock" button that'll put the ESP into a sleep state, with wake on pin change or similar set up for both the button and data received by the LORA, so your friend unlocks theirs, that wakes yours up so it can start sending location data between them. But when you're both not looking for each other it's just asleep using very little battery. Realistically you'll only need it to be running for a couple minutes at a time with long sleep intervals. Same with the GPS, that'll need to be put to sleep too, but once it's had GPS lock it won't take it very long to relock. I'd also replace the gyro with a magnetometer for compass readings, they're going to be a lot more reliable than gyros, and you won't get any drift that way.
Well done so far.
Thank you for all your tips.
You are right. I'll see if i can replace them :)
Biggest problem atm is the lora distance i need to figure out as well as the gps 6m is not working great. The 10m is quite expensive for this project, but i may check one out since they also include the compass (but also the QMC gyro)
Lets see if i can/will drive this further :)
@@CodingWithAurynI guess the question is, how much precision do you really need? It's easy to get bogged down in making it accurate, but you need to get within a couple meters of your mates to find them.
I'm not sure what you can do for the LORA range, it's a hard problem to solve without infrastructure, but people have done it, so there's a way. All I can think of at the moment is either low frequency comms, as they tend to "walk" over obstacles, but that comes with it's own problems in a hand held form factor, OR, High frequency that'll bounce around the area, allowing objects distribute the signal. That's just as hard I think. That I'm not sure on that front, I haven't had much to do with LORA yet.
@@GingerNingerGames Do you know how to build this?
Richtig spannendes Projekt! Danke, ich freu mich schon auf part 3.
This is good progress. Looking forward to your next steps. Glad to see this coming along!!
Thank you!
Great project, thank you for bringing us along 😎
My pleasure!
Love the idea of doing it yourself, interresting to see your process! You have inspired me to try this myself, but I'll be using a magnetometer compass instead of the gyro as it might be less power and easier to calculate... I also found a circular matrix led display that would be less power and more like the crowd compass. Thank you for the idea and would love to see more of your projects in the future!
Thank you
Working on a project at the moment that is taking a bit longer and also have a lot of work. That’s why I am a bit slow 😅
Just subscribed! Keep making great content! Informative, in depth and transparent through the whole process.
Awesome, thank you!
I'd try exchanging the location data via meshtastic, that way you'd get meshing out of the box.
Definitely a feature i want to explore as well yes.
Hope this works well :)
@@CodingWithAuryn Meshtastic kinda does this already, I used Meshtatic devices at festivals last year.
@@samrossiter2108yes, more or less. Bit different and not as fun to build :P
Unfortunately meshtastic is not a lib, it is a standalone product. So to display data on a display connected to meshtastic, it is only possible with a second esp or similar. So not what i want to do :P
@@samrossiter2108what devices have you used?
A great solution for helping with form factor would be using something like the LILYGO T-Beam GPS - LoRa esp32. Includes everything you need except a display, all on a single PC. Even has a battery holder that takes a single 18650 cell. The size is extremely compact and would be a great alternative, potential compromise would be a rectangular display rather than the circular display if you want to minimize form factor, or just use the circular one anyway but have a slightly larger box.
Not crazy cheap, however.
Amazing work, I love the project!
So cool mate, thanks for the mini-series. I would LOVE to se you update this as I feel a bit a tweaking (and the mesh), this would really be a nice festival gadget!
Thanks for the idea!
Will keep working on it :)
Awesome project. This is really inspiring to try and do this myself. Thank you for sharing all your progress. I hope to find you at a festival using your trackers 🎉
Thank you
That would be cool 😅
GPS signals can bounce off the ground, so if the ESP and display on top are blocking the signal you could try pointing it down at the ground. It may be noisy though, so you need to test
Really cool project! I kinda want to make one as well for this years summer now.
so happy to see part two!
For battery issues you can implement deep sleep. Wake every 15s to broadcast location for a few ms and go back to sleep. Then a hardware button to wake up to activate the seeker mode. You will also have to implement some kind of TDMA to make sure the devices are all listening/broadcasting at *almost* the same time (each gets its own few ms to broadcast while the others listen), including clock synchronization. Lots of fun edge cases to consider, but would extend that tiny battery life considerably.
In real life usage you will want to implement a simple packet protocol with a network ID to filter out noise from other sources on the same freq from other DIYers at the same festival 😂and a pairing/polyamorous mechanism for joining multiple devices on the same group. I have some circuitpython code if you are interested, including error checking, etc.
At the very least power down the display when not in active use!
Would be cool. But as you said
Much more work 😛
Yes! Part two!
Have you considered also integrating some sort of ultrawideband sensor like in other products like the Apple Airtag or Samsung Smart Tag? That could help making the position more precise when you're near enough...
Also, in the future it would be very cool to be able to "bind" with your friends before going to the festival, to sync some sort of private key to be able to use it in different groups without having issues... Bluetooth would be also a cool feature to have, great for Streetpass like with the 3DS (RIP)
I'll give a look at the code, however I'm more used to Rust than CPP; let's see ;)
Thank you.
Yes thought about it. But this would add a lot of complexity and also the gps is quite accurate if it is working. Like a few meters. This should be fine.
The bind feature would be cool yes
I also know rust better 😅👌
I've looked into UWB myself and unfortunately there's no easy cheap solution for doing localisation
You can get very cheap sensors, but those can't tell you the direction, you need multiple antennas and measure the phase shift of the incoming signals
There are a couple of dev board that can do it, but those are pretty expensive
Ah damn. The Lora shows the strength, but not sure if this is enough 😅
Since a wall in between would say you are super far away
@@CodingWithAuryn Maybe a mix of cheaper techniques could help, like using the long range beacon features of Bluetooth 5
Could be yes :)
Would love to make a few of these myself! Can't wait to see what you do with the project.
Go for it!
I bought all the kit and figured out Vs code but still couldn't get it to work. I would love a follow-up video on this please to fill in the blanks and show it working with two trackers
So happy that I found your channel. Danke
Welcome!
Very cool, I am making exactly one of these in the next month so perfect ! thank you for sharing
Great video! Love your stuff. Always excited to see more.
I'm going to try and do something similar with the lilygo t-deck, and add messaging. Hopefully with a little more of an off-the-shelf solution i wont have as much trouble, but it's definitely going to bw the most complex thing ive ever tried to write code for.
Good luck. Yea of the shelf is definetely a good idea
Lost some hair while coding as well as while searching for issues.
The coding part was the easiest so far of all of it.
Even so the code is not ready yet and has probably many bugs 😂
Thanks@@CodingWithAuryn !
Hardware is still on the way, so I'm still just trying to do all the research I can on established libraries and stuff. Any time I try to do something new, that first attempt is almost always trash and I end up spending more time trying to figure out what I did wrong than anything else. Then I get excited when I find it and rush to fix it and mess up the fix lol.
Really cool project! I would definitely recommend learning more about RF and antennas. For example this GPS antenna needs a clear view of the sky, which it won't get under the screen. Also the LoRa range will be impacted by the antenna type, proximity of conductors to the antenna, and also occlusion by your hands and body. There's a lot of aspects to this project, but it sounds really exciting!
Thanks for the tips!
The gps is a bit of an issue yes :D
Ordered another gps receiver and will also fine tune the case to not have the display over it. Lets see where this is going and how far i will push it :)
@@CodingWithAuryn Which GPS receiver did you order? How did you get on with it?
Hello Auryn, i was looking at trying to make this out of the heltec wireless trackers that have built in LORA and GPS. I would just need to add gyro/compass. still based on esp32.
You could use a tilt compensated compass cmps14.
Really cool! I'd totally fire up easy-eda and do a small carrier board to put all components on it without any wiring. The wiring is gonna fail for sure, except if you capsule it in epoxy.
Cool idea!
@@CodingWithAuryn Any ESP32 project I do with more than one additional board ends up on a "carrier board" where I can just plug or solder the other boards onto. It's really the way to go and EASY-EDA lets me order the PCB with like a couple of clicks and for amounts of money which I consider stealing... me stealing from them...
Thank you for the tip
Will look into it :)
Please add UWB module as this is used in Apple or Samsung trackers. We need indoor precision.
How can I interpolate your project to a more straightforward .env environment, similar to an M5 Stack?
Cool project! Nice use of the ESP32!
Thanks!
Been looking forward to this video!
How about using the tracker as a LoRa bridge and just have phone apps (or the esp32's webserver in case of an iPhone) communicate using it. Would allow for sending all kinds of data over it and greatly simplifies the project (app handles gyro, compass, gps, display).
This you can easily do with meshtastic :)
you can buy a lora read esp32 dev board that comes with a 18650 battery mount and charging circuit and oled screen. Might be a bit simpler to package also check fpv drone gps antenna its way smaller
If this would be done by June that would be awesome!
Just out of curiosity, are there ways to do this without gps via triangulations, maybe get rid of the big gps module? Something like BLE beacons but for larger distances?
Could you show us how to code/how you wrote it/ how it works on a software level
Maybe it is possible to make the same functionality for a smartphone, but transferring data will be an issue, Bluetooth 5 ranges around 200 but in open field
also ich brauchte keine 360 grad windrose als anzeige,,,180 grad nach vorne reicht ja, peil pfeil erscheint vorwärts oder rückwärts. dafür könne die unter hälfte daten anzeigen,
In case if you dont know, the esp can also run micropython :-) When it comes to you burned component its prob. the voltage regulator. i cant see if you using the vin pin or the 5v pin of the esp to supply voltage to your components but if so you just can hook it up to the source directly, as long as you have gnd to esp too. hope that helps you.
Thank you. Yea saw micopython as well, will take a look. C++ isn’t that bad. I am just not experienced with it and having a header and an implementation file is a bit annoying. But other then that it’s ok :)
I was working on a project with the NEO-6M gps module a while ago and could not get it to work the way I wanted. The module would just take too long to start getting me data, or just wouldn't at all.
Excited to see if you find a solution or a more reliable module .
Yea let’s see. Just ordered another one. But the 6m is not bad. Just a bit big.
Maybe you can try something like the lilygo t-echo, it has all you need but the magnetic compass and the CPU is a nrf52840, low power.
For not completely sent lora packages have you thought about using some checksum to at least discard the faulty packages if not even use error correction?
I would rather have a non jumping destination every 5 seconds than a faulty one x/5 times every second
Absolutely, a check sum is definitely on the plate to add :D
Please follow up on this. I like the Idea, and would love to follow your future tutorial to a usable product.
The prototype always cost the most :) but the knowledge gained is priceless
Absolutely
Would it be possible to use some kind of a direct locator method? Like ultra wideband, or whatever they use in "Peilsender"?
there are card sized tags with gnss, lora, bluetooth and wifi. you can check seeed studio for example. the dev kit versions are probably better than what you tested.
apple devices have uwb that can be used, but i haven't tested what they allow. iphones, watches and airtags
Nice
Thank you
Need to take a look at their board. But mostly I build it to understand the tech and also get used to the components :)
cool project, maybe you could use an e-ink display to save some battery power. They are definitely fast enough for this application
I love eink displays
But hard do read at night without background light and very expensive
Richtig cool, Abo haste. Könnte auch sein das du mit fehlenden ESD Schutzmaßnahmen dein Board gekilled hast? Looking forward to more content!
you could try neo 8m gps module
Will take a look. Thank you :)
It sounds like you might be able to filter out some of the garbage values that point to random directions. Maybe only displaying values that are within some limit of change?
How did you do the code overlay? It looks really cool!
Yea. Absolutely possible. Just saw this today at the fielders first time as soon as I go further away. But didn’t touch the code afterwards.
Codeoverlay os from ray.so :)
Thank you
Nice project. Did you get the idea from totem compass?
Maybe you could use esphome for code
Any progress on this? I had an idea that it might be great for paintball teams as well!
Like having a small players map (with teams a and b) red and green dots :)?
And a mesh network would work better on this with esphome as well
Would be cool true
Currently I didn’t work on it, so it is on hold. Being occupied with other stuff. In general it should be ready with the parts and code already for 2. missing is the case and stuff. But in theory it works 😂
But should receive soon some pcb test boards, maybe I can continue later on this :)
Wonderful video. Did yo uconsider using meshtastic as a lora mesh network?
If you want we can have a call.
Sei stato bravissimo
Thank you, yes, thought about, but it seems like you can only run this or something else, not as library. So i would need to add a second esp as meshtastic slave if i get it correctly. But i may understood it wrong.
@@CodingWithAuryn It's an interesting question, but I don't get the problem: if you are your friend are suing meshtastic and communicating inot a private channel (sending even telemetry data on it) will help other people to trasmit data. The more the better, in respect of privacy. To be tested
Yes, if you just want to message back and forth with your phone meshtastic seems to be a good thing. But this is not what i aim for :)
Meshtastic is just a ready to use solution that is definitely nice. But i wanted to rebuild an existing product to understand it, not to solve a problem ;)
Great work - I love this! I am currently working on a personal (fictional) project for my UI/UX portfolio based on a festival/ event tracker like yours.
If you continue this project and you'd like to collaborate, I'd love to help design the product, the user experience, and the user interface.
Hey Alex
Great to hear.
Yea I was a bit bored by the project due to so many obstacles. I might pick it up again. But let’s chat and see where it would lead.
You can reach out through LinkedIn if you’d like.
Greetings
Awesome
Awesome content, subscribed!
Awesome, thank you!
Id go for a bigger size build. We have all the small stuff. Maybe try a bigger build like a dragon ball finder!
But there are pre-existing esp32 boards with GPS and Lora already build in😮
The lilygo t-beam lora for example - you just need to add a screen and the 18650 battery
I know now 😛
I didn’t know when I started and also I want to be free in form factor and components to change :)
You might want to use a esp32 lora board, also try a gps with a higher number in its name
Will take a look :)
@davepl where are you?! Did you hear that call for help at 6:30? :)
You might get better reception by tweaking the LoRa parameters; higher spreading factor / gain / coding rate, lower bandwidth.
(Didn't work for my project, guessing too much concrete in the way.)
Ahh interesting. Will take a look
Thank you :)
good stuff! if it was a bit more reliable i would build my own for this summer! but realli liked this
Cool, thanks!
Whyt do you think about the badges used at CCCamp?
Unfortunately I dont know them. Always just went to the CCC (congress). Happy if you share details :)
this is how we find our lost drones at work.
Oh really cool. Didn’t know. Any details you can share? :)
Great vid!
This is great! Do you intend to try and make it more compact / go the custom PCB route or anything?
No, not planned it yet
But would be cool.
Do you have a Discord server set up for this project?
I know my friends and I would like to collaborate on this project.
I have no discord no.
But GitHub is open source :)
Wie weit ist denn das Projekt?
Gerade on ice
Zu viele andere Projekte die ich gerade spannender finde 🙈
that GPS is large. we use much smaller GPS on racing and freestyle drones.
Yea
Looked into them. Definitely an option. But too expensive for the idea to have it in around 20€
But definitely an option.
Did you ever try micropython for the esp32?
No, why?
@@CodingWithAuryn you said you are new to programming in C. Maybe python is your jam?
Ahh ok, no i rather do c then python if i have the choice :)
All languages have their purpose and design and since c is lower level and closer to the embedded space, i rather do c :)
How it started: I can build it cheaper and it will be fun!
How it's going: I messed up, over budget, and now I want to automate my coffee machine
🐸
😂
You speak from my heart
I still have it on the plate but not time at the moment and also it is just some minor tweaks 😅
ATGM336H is a good option for compact gps
Already in my shopping card :D but heard the reliability is not as good.
But i may try this one as well as the GT-U7
@@CodingWithAuryn adafruit has some mini modules
great project ;-)
Thank you! Cheers!
Cooles Projekt! Wie bekommt man so ein Teil dann durch die Sicherheitskontrolle?
Wieso sollte es nicht gehen? 😅
@@CodingWithAuryn ich frag mal anders rum - wieso sollte es gehen? Die Idee finde ich super, aber die Realität ist leider voll von Ordnern die einem echt den kleinsten Kram konfiszieren (bzw. von der Mitnahme in den Innenraum ausschließen) wollen. Allerhöchstens wenn ich als Steampunk gehe und mir das Internet of Things in die Kleidung nähe, dann könnte es vielleicht gehen.
Ich hatte noch nie Probleme 😅
@@kremicfeinAlso ich bin auch jedes Jahr auf Festivals, aber Elektronik wurde mir bisher nicht abgenommen - warum auch? Die suchen ja eher Drogen, Getränke und Waffen.
Wonder if you can add a wireless charging coil once it's complete
Wait, let me get a coffee too
OK let's go!
Einen wunderschönen.
Grüße aus Deutschland.
Ich bin auch unterwegs im Bereich iot und smarthome allerdings schon viel weiter als du. Ich schau mir den code gerne mal an.
Aktuell plane ich etwas ähnliches allerdings soll das Ergebnis in ein hud eingespielt werden.
Lass uns ruhig mal zum Thema Automatisierung Sprechen. Ich habe sogut wie alles zuhause auf ki basis laufen
Danke dir :)
Gern.
Wobei ich eigentlich keine homeautomatosierung nutze 😅
If you use 3 or more, can you not leave out the gps and use signal strength triangulation?
Can I just like… buy this from you
bro, open a kick starter campaign and make this thing a product, there are alternatives out there selling for 45€ each, I can help you with import and distribution in Europe!
😅
Thank you
But it is just a fun project I like to spend some time on. No interest in making it a product. But if you like, go ahead :) code is open
But I have no intend to commit on anything there 😛
plz follow up this is so so helpful omggg