Amazingly well explained! I really like how you showed the actual oscilloscope signal of 1 byte. Now I understood why 10 bit Delay happens every Byte sent. Great :P
@fusca14tube
6 жыл бұрын
Amazing project! Congratulations! In near future, I'll make my drone based on this. Thanks and keep going!
@AppliedMetaphysician
6 жыл бұрын
Once again a very-clearly explained procedure. I hope the -copter survived the flyaway!
@Joop_Brokking
6 жыл бұрын
Thank you for your comment. And yes, I got the octocopter back safe: kzitem.info/news/bejne/tX-dtHx3oHmpfWk
@rossos3D
6 жыл бұрын
Thank you for keeping up the progress on the project.
@ursamajor26
6 жыл бұрын
This looks awesome. So many items I wanted to add to my quad, all in one package..
@calvinnaidoo3171
3 жыл бұрын
ive been following since the first ymfc great work and thank you
@mkolesnik
6 жыл бұрын
just a small suggestion - in the telemetry loop processing function it would be more efficient to use switch/case/break construct
@WayneRiesterer
5 жыл бұрын
Long range is definitely a relative term. I'm searching for a means to communicate around 100+ kms using unregulated radio frequencies. To make it even more complicated, the transmitting device needs to fit within a form factor of around 75mm x 25mm, weigh less than around 10 grams and be somewhat immune to trees and other things that can be found on a cattle station within Western Australia.
@mattelanni
5 жыл бұрын
Wayne Riesterer Ask some military engineer, maybe the army has what u need
@kaikart123
4 жыл бұрын
You can do this with good base station antenna at high elevation and also good device antenna. And make sure you have line of sight. I think Diamond X50 for the base station antenna and Diamond SG7900 for the device antenna will cover that distance. I mean, micro satellites uses 20mW transmission on 1/4 wave whip antenna and they are 400-500km up there.
@SKIDDOW
5 жыл бұрын
Why we cannot use flysky transmitter for track those details?
@kopkaplanda7068
4 жыл бұрын
Hi Joob, first of all, congratulations on the drone projects and for sharing the knowledge. I am building the project of Project YMFC-32 autonomous, but I can't get stm32 to communicate with the arduino one to make the telemetry system work, check my connections and everything is correct, check the APC220 module and it's transmitting, but what I observe is that I am receiving different characters, as if the B0 port was transmitting at a different speed at 9600bps. The parameters I have in the APC220 are the following RF: 9600bps Series Rate: 9600bps, I hope you can help me. Regards.
@efmirandaaa
4 жыл бұрын
Hello Kopkap, You soved the problem?
@nelsonhernandez7496
4 жыл бұрын
Hello, is 8217 baud not 9600, cheers!
@fernandomarquez7658
4 жыл бұрын
I have the same issue. I used my FTDI Basic to read the values from th APC220 on the Arduino Monitor at 9600bps and I'm getting a string of question marks approximately every half second. Did anyone else run into this issue? If so how did you fix it?
@anupjyotisarma174
8 ай бұрын
Can I use any other RF telemetry module instead of APC220 ? Please help
@randysonnicksen9475
5 жыл бұрын
Joop. I think you could send telemetry data using a USART pin. I'm looking to copy portions of what you have done with the STM32. I've reviewed the code for autonomous quadcopter and I noticed that the telemetry TX output from the STM32 used a standard digital output, and you write code using delaymicros() to send the bits and bytes one at a time. It got me wondering why you did this. I started looking at the pinout of the STM and the alternate functions and I think I came up with a way to be able to use a USART channel to send the telemetry data. Move the I2C from B10/11 to alt function pins B8/9 (SCL1, SDA1). This makes B10 available for TX3. But B8/9 was being used for ESC outputs, so move ESC outputs to A6,A7, B0, B1 (T3C1-4) This whole alternate function and remapping is quite confusing to me right now, and I'll need to play with it, but what do you think? Will this work? Each byte of data you are transmitting to telemetry takes about 1 msec which is 1/4th of your scan time. If this could be offloaded to a USART you would have more time to do other things.
@adelashour3253
6 жыл бұрын
very nice
@TimsElectronicsLab
6 жыл бұрын
This is awesome man! Is the serial communication full duplex?
@binisol7353
6 жыл бұрын
Hey is it possible to build this with nrf24l01 transceiver and if it is can you please explain how.
@jmc_fpv
4 жыл бұрын
Hi, i tried to use nrf24l01 as transceiver for telemetry purposes but without success. The problem is you haven't enough time to read/write data.
@Taury555
5 жыл бұрын
Hi, I bought flysky-t6 transmitter and fs-ia6b receiver but they don't work with each other. Problem is because t6 uses AFHDS protocol and ia6b uses AFHDS-2A protocol so information on your website won't work.
@randysonnicksen9475
5 жыл бұрын
Actually I think it's even simpler. If you use the default function of I2C1 (not I2C2) that is on pins B6/7 of the blue pill. Move ESC's to A6,A7, B0, B1 (T3C1-4) Use PB10 (TX3) for sending telemetry data. Thoughts?
@Joop_Brokking
5 жыл бұрын
Hello Randy, in the upcoming days I will upload a video where I fly waypoints. I added a small serial input to the YMFC-32 code. This way I can upload new waypoints to the flight controller. It's a work on progress :-)
@osamaomar9096
4 жыл бұрын
Hi sir ... if I want to use the spi nrf24 , which way is better ، to adjust your code to make it work with nrf24 or to use two (spi to serial convertars ) with modules ?
@TheKetsa
6 жыл бұрын
What made you go for apc220 ? looks expensive. Why not rf4432 for exemple ?
@daskasspatzle2396
6 жыл бұрын
Interresting Question ;-)
@Joop_Brokking
6 жыл бұрын
The RF uses SPI. The APC220 modules simply (3 wires) connect to the serial port. But you are free to use the RF if you want.
@sachinupadhyay2790
5 жыл бұрын
Great work is done
@隋无心
4 жыл бұрын
Hello, the data transmission module I used is Lora, the baud rate is 9600, the receiver is Arduino uno R3, the data receiver sent by send_telemetry_data cannot be parsed, and the serial port assistant finds that the data is disordered. What's the reason?
@nelsonhernandez7496
4 жыл бұрын
Hello, is 8217 baud not 9600, cheers!
@fernandomarquez7658
4 жыл бұрын
@@nelsonhernandez7496 where did you use 8217 baud? and why so?
@SushrutPhutane
4 жыл бұрын
You have rearrange the data in a temp buffer by using the start byte and end byte to control the index of the buffer
@canari.satiné
6 жыл бұрын
Thanks for the nice video and thanks for the share
@jamejone5992
5 жыл бұрын
Dear Sir; The telemetry is not working at my drone. I am already made by your schematic and other processes but it is not working. please tell me how to solve it. Thank you.
@warga-facebook
4 жыл бұрын
I also have the same problem
@bohaman.
4 жыл бұрын
@@warga-facebook I'm also running this problem can someone please help? Everything works great, and I've checked much time but the Telemetry doesn't communicate and when I click on the up RTH button it stuck there and I have to click the reset button.
@istvansoos1055
3 жыл бұрын
Very nice project! Congrat! Cam you help me to find somewhere how to calculate home arrow from the known home position and an airplane actual gps position? Thx!
@pegzod2527
6 жыл бұрын
Nice job joop :) like always. Perhaps a return home fonction in future ? is max altitude just a value or you can limit altitude of your quadcopter ?
@pegzod2527
6 жыл бұрын
possible to HAVE answer to my question please about MAX altitude ?
@daskasspatzle2396
6 жыл бұрын
Thanks for sharing your work :-)
@pranjalbhagat667
6 жыл бұрын
This is so helpful... Thanks
@pawanagarwal2872
5 жыл бұрын
Can we use nrf24l01 by radio.send() function And radio.read() on receiver side? And create a structure of data and send together as nrf can send 32 bytes at a time... It will also be easier to send and receive data and edit the program Plz plz reply sir... Well great project...
@osamaomar9096
4 жыл бұрын
Pawan Agarwal I think that the nrf will be better ... so I think there is two ways to use it with joop code , the first way is to adjust the transmitter and reciever codes to make them work with nrf . the second way is to add two -spi to serial - convertars ,one for transmetter and the other for reciever (the convertars could be arduino ) , I am not sure if this way corrict ,but if it true I think we will not need to adjust any thing in joop code .
@jmc_fpv
4 жыл бұрын
The problem is time! To send/read data using nrf24l01 you will get an error because the function radio.send()/radio.read() is not fast enough within joop's algorithm.
@pawanagarwal2872
4 жыл бұрын
@@jmc_fpv yup! U r correct. But i think that I can just modily his whole code and use his telemetry for just getting an idea that what and how we can include anything in our own project... I'm thinking to use a new algorithm which might not give any error, nd there is no much problem for time of sending and receiving data, it can be some milliseconds slow, doesn't matter much. We can improve it later
@jmc_fpv
4 жыл бұрын
@@pawanagarwal2872 Nice! It would be very nice if it works with nrf24l01 module. Do you already have an idea to reduce loop time? Some people say to use DMA to read things in background. Or use switch case instead if-else statement and thinks like so. I think DMA can be a good idea but I don't know how to implement it on the code.
@Ankitkumar-tb6vi
4 жыл бұрын
@@pawanagarwal2872 bro... Did you fixed it.. If yes then plss share your knowledge with me(if you want to share) becoz i also want to use nrf24 instead of apc220 for telemetry
@petermeiner3574
6 жыл бұрын
Excellent, like allways from you 😀
@sayfgrowflo7340
6 жыл бұрын
Hi, thanks for the info and a great viveo. if you increase the baud rate of the transmission i can send more characters per loop
@wildwisdom1361
6 жыл бұрын
Where did u learn all about audrino plz tell me and plz make a cource on audrino full details
@professorEduardoBrasil
5 жыл бұрын
Hi Joop. Do you know if it seems to be possible migrate you project to ESP32 or ESP32 with LoRa? That could be a tremendous improvement. What do you think?
@Joop_Brokking
5 жыл бұрын
I have no idea if that is possible. I never got interested in the ESP32....... sorry.
@blondisbarrios7454
4 жыл бұрын
LoRa is slower than NRF24, for example.
@dtpc_technologies
6 жыл бұрын
I guess there are some issues in using software serial method to send telemetry data : 1. I believe using hardware serial is a lot faster than software serial. 2. The situation worsens if we want to use software method for reading serial data if we want to send data from ground station as well. 3. Using software method has a straightaway wastage of 1040us per loops i.e. more than 25% of loop time is used only to send telemetry data. I don't know whether this is the same case with hardware serial or not. 4. Why not use baud rates higher than 9600 for faster transmission..? Btw, a great and a very educational video.
@Joop_Brokking
6 жыл бұрын
1 If you keep the baud rate the same it takes the same amount of time to send characters. 2 When you want to send and receive data I recommend to use serial port 1 for this. 3 The Serial.write will also hold the program. So no advantage when using Serial.write. 4 Using faster baud rates means that you have to send more data via the air. And this will result in more errors and shorter distances of your telemetry system.
@dtpc_technologies
6 жыл бұрын
@@Joop_Brokking Thanks a lot for your reply sir :)
@Kongfufrank
4 жыл бұрын
Estou monrando e queria mandar as fotos para você. Tem email?
@raffyturc
6 жыл бұрын
Hi Joop. Can I use the GY-86 sensor board (pressure/gyro/magnetometer) found on BG for this quad?
@Joop_Brokking
6 жыл бұрын
It's best to use the compass on the GPS module and not on a all-in-one breakout board. This makes it possible to move the compass away from high current wiring.
@raffyturc
6 жыл бұрын
Joop Brokking hi. Yes im well aware where the compass should be positioned. But electronically speaking, this is possible since all those sensors communicate thru i2c(?) What im after in this board is the barometer sensor. Could desolder the gyro/accel chip and order a solo gyro/accel board to mount inside.. plan was to use BN180 gps module(no compass)... Main goal was to mount the magnetometer/baro on a separate case(where air can pass && light cannot). I hope you get what im trying to achieve here ☺
@Joop_Brokking
6 жыл бұрын
As long as you avoid 2 of the same sensors on the I2C bus every combination will work. Make sure to respect the base voltage of every sensor on the bus. (3.3V or 5V)
@abhijitmore8207
3 жыл бұрын
Should we use it for Arduino insted of stm32 ?
@diyhub4548
3 жыл бұрын
hlo sir , i am facing problem with the telemetry . i am using same schematic as of yours but i am getting telemetry lost connection after few seconds of startup and after every 5-10 seconds i am getting signal for only a second thereafter again my telemetry connection gets
@help6671
2 жыл бұрын
same prob here:(((( .........Can someone help plzzzzzzzzzzzzzzzzzzzzzz!!!!!!!!!!!!!!!!!!!!!!!!!!
@rohityjet4812
6 жыл бұрын
Hey .....Joop is this source code have the RTH functionality ? If not then if possible will u make some video for explaining RTH algorithm and useful GPS data for RTH functionality?
@Joop_Brokking
6 жыл бұрын
For now it will only hold it's position. This way I can keep the code a simple and understandable as possible. In the future I will probably add a RTH function.
@rohityjet4812
6 жыл бұрын
Thanks a lot ...keep it up
@bohaman.
4 жыл бұрын
Will someone help me with this please? When I connect the arduino One via the USB cable and directly plug to the BO pin along with the flight controller power by the FTDI USB cable I the telemetry display the information. However when I connect the arduino One via regular power source or the flight controller via the batter I can not receive any telemetry data. Please help me. Thank you so much
@fernandomarquez7658
4 жыл бұрын
Were you able to solve your issue? I'm having the same exact issue as you.
@fpvsparky
4 жыл бұрын
See My comments above
@bohaman.
4 жыл бұрын
@@fpvsparky Hi Wayne, Thanks for replying. I'm trying to search for your comment but couldn't locate it. Can you please repost it into this comment? Thank you so much
@bohaman.
4 жыл бұрын
@@fernandomarquez7658 Hi, I've read your comment and you received the string, It was like that for me but when I reconnect the pin directly to the B0 one I actually got the information display on the LCD correctly. I just can't get it to work if I use a separate power. I think we must have had a shortage somewhere.
@fernandomarquez7658
4 жыл бұрын
@@bohaman. hi, if you use the serial cable to provide power and you can see the data ok, but not when you provide power through the VIN port, then you may need to adjust the potentiometer on the top left corner of the LCD with a screwdriver to make the data visible again.
@griffoulclaude5196
6 жыл бұрын
De Claude Campestro Excuse me Joop, On 11:33/19:13, i see one jack with 2 wires black and red. On my FS-T6 this femelle power suply don't exist. It is possible to have from 12V power of T6,to put an 7805 for power supply 5V? On 2:03/3.40: Tuning the YMC32 settings.... I see one led light yellow under the batterie,when you move the interupt left on the transmitter. Who is the connected this led on the design of project STM 32 Date 18-03-2018? With my congratulations for your didactic work. Thank you sir Joop Brokking and excuse my bad englich
@Joop_Brokking
6 жыл бұрын
The power jack is one of my own modifications. It's taken directly from the batteries. The LED is an RGB led thart is connected to the green and red led on the schematic.
@samdark7729
6 жыл бұрын
How long does it usually take for the parts to arrive from dx.com? I live in the east coast of the United States.
@Joop_Brokking
6 жыл бұрын
I have no idea as I live in the Netherlands. Most of my packages arrive within 2 or 3 weeks.
@AlvaroPandolphousa
6 жыл бұрын
I live in Boston and it took 13 days
@samdark7729
6 жыл бұрын
Thank you guys!
@samdark7729
6 жыл бұрын
Alvaro Pandolpho Hey were you able to build this drone and have it function properly?
@AlvaroPandolphousa
6 жыл бұрын
Yes I did and it has been a lot of fun
@dirkcooreman4104
5 жыл бұрын
Hi Joop , I’m struggling with the telemetry code. With your code it doesn’t pass, but when I replace your commands by a single serial.write(telemetry_send_byte) command, it works but it creates an error 2. Because I do the programming via an STLINK-V2, I’ve got the serial on B10/B11 available... I really don’t understand it .. your code is cristal clear but somehow the encoding must go wrong. As it works with the serial.write, the receiver part and the hardware should be ok... so there should be something wrong at the transmitting side. Could you give me some hints? Great project as always.
@efmirandaaa
4 жыл бұрын
Hello Dirk, You soved the problem with tramission?
@RP6conrad
6 жыл бұрын
Excellent explanation ! Is there a chance that interrupts will influence the 104 µs Software Serial delay ? Can the baud rate set higher ? I use DMA transfer of serial data with my STM32 controllers, this will transfer all serial in the background, so the loop will not have to wait.
@Joop_Brokking
6 жыл бұрын
By using the 9600bps there is some room for error in timing. Up till now it never gave me any problems. If you have time problems you can indeed move this to the background. But with the STM32 there is still more than enough time to send it like this.
@jmc_fpv
4 жыл бұрын
Hi, did you use DMA? Could you share the code, please?
@zaiso23
6 жыл бұрын
Wouldn't it be a good idea to use switch-case or at least else-statements in the send_telemtry_data function? That should save a lot of time.
@Joop_Brokking
6 жыл бұрын
Using switch-case has no significant benefits as it still needs to check all the lines. So no major time improvements are made.
@zaiso23
6 жыл бұрын
Joop Brokking Are you sure about that? Generally speaking, switch-case-constructs should be faster than if-else-constructs. I don't know how the arduino compiler handles that, but in Keil uVision it does result in a speed improvement. Maybe I'm also missing something in your code? Is the variable changed during an interrupt or only incremented every time you enter the function?
@Joop_Brokking
6 жыл бұрын
What variable are you referring to?
@zaiso23
6 жыл бұрын
The telemetry_loop_counter (at 7:46 for example)
@Joop_Brokking
6 жыл бұрын
It is only changed in line 6 ( telemetry_loop_counter ++; )
@nenadstojadinovic8326
3 жыл бұрын
I admit that I haven't tried out this piece of code but I have had considerable experience transferring serial data over cables and through RF links. I am wondering why you are using a serial transmission subroutine? Surely there are many hardware solutions available that simply allow you to dump the data into a buffer and toggle the SEND pin. Depending on sophistication, they can also listen for a response from the receiver that the data has been received correctly.
@mpls_link
6 жыл бұрын
hey Mr. Joop why didn't you use 16 X 4 LCD display??
@Joop_Brokking
6 жыл бұрын
Because I wanted to use a breakout board for simplicity. As far as I know these only come with 16x2 blue/white. For my own telemetry I use black/green 20x4. It has better visibility in sunlight.
@mpls_link
6 жыл бұрын
thanks
@ahmedtawfik668
6 жыл бұрын
For the 32 bit to 8 bit could stm32 be used on the ground station
@Joop_Brokking
6 жыл бұрын
Yes, you could use the STM32 as a ground station. But you can still only send 8 bits at a time.
@ashutoshyadav8567
6 жыл бұрын
Can u plss give me the link from where to buy things needed to make a quadcopter from Arduino as told by you
@Joop_Brokking
6 жыл бұрын
They are listed on my website: www.brokking.net/ymfc-32_auto_main.html#3.0
@spotdoit6047
6 жыл бұрын
Sir if you mind can you release digram of connection.
@ranjithshetty7078
3 жыл бұрын
Sir can i use apc220 rf module instead of nrf24l01 module
@oadka
3 жыл бұрын
Yes. If you use nrf range will be lesser
@Kongfufrank
3 жыл бұрын
Como configurar o apc220??
@fernandomarquez7658
4 жыл бұрын
(Solved in the comments) Hi guys, I finally got around building my own quadcopter using Joop's code during this quarantine. Everything works as it is supposed to, except the telemetry system. I'm having an issue with being able to read the values. Every time I supply power to my Arduino UNO with the LCD plugged in, the buzzer just beeps over and over as if it isn't receiving its data. I used my FTDI Basic to verify and read the values from the APC220 on the Arduino Monitor at 9600bps and I'm getting a string of question marks approximately every half second. Did anyone else encounter this problem? If so, how did you guys fix it? Some people have said it looks like the STM32 may be sending the data at a different baud rate than 9600 bps?
@fernandomarquez7658
4 жыл бұрын
Furthermore, I connected my FTDI RX port to the PB0 port of the STM32 and used the serial monitor from Arduino @ 9600bps to read the values and it is indeed a string of question marks. So it is sending data, but I’m not sure it is sending it at 9600bps. I’ve been reading and it seems like doing the 104 microsecond delay is correct, but it is still not working.
@fpvsparky
4 жыл бұрын
See my comment above
@fernandomarquez7658
4 жыл бұрын
@@fpvsparky where?
@fpvsparky
4 жыл бұрын
@@fernandomarquez7658 newest comments mine should be at the top
@fernandomarquez7658
4 жыл бұрын
Wayne Starkey your comment definitely did not post on this video (at least for now). My comment is still at the top.
@knodelcrafter6888
6 жыл бұрын
How can you use multiple Tabs in the arduino coding environment?
@Joop_Brokking
6 жыл бұрын
Top right corner click add tab. In the main code: subroutine_in_other_tab(); In the tab: void subroutine_in_other_tab(void){ your code }
@vishal01mehra
6 жыл бұрын
Interesting, why not two way communication?
@Joop_Brokking
6 жыл бұрын
1:37
@liaokehengsite1543
6 жыл бұрын
Is there possible to share your code?
@PhG1961
6 жыл бұрын
Schitterend !!!
@jmc_fpv
4 жыл бұрын
It works fine with bluetooth HC-06, but don't with hc-12 rf module. Anyone to comment???
@nelsonhernandez7496
4 жыл бұрын
is not 9600 baud is 8217
@jmc_fpv
4 жыл бұрын
@@nelsonhernandez7496 8217?
@dipanjanmaity6614
5 жыл бұрын
Can we use hc12 radio module instead of apc220
@jmc_fpv
4 жыл бұрын
I am trying to use it. IT ONLY WORKS WITH NO ORIGINAL MODULES. BUT RANGE IS BAD. WITH ORIGINAL MODULE IT WORKED SOMETIMES. I DON'T KNOW WHY? DID YOU GET IT TO WORK?? BEST REGARDS
@kaikart123
4 жыл бұрын
@@jmc_fpv there is a problem with the cheap HC-12 module, you have to solder a jumper from one of the resistor to the VCC if I remember.
@Ankitkumar-tb6vi
4 жыл бұрын
@@kaikart123 in india apc module is not available... And many website shows that out of stock... So give me the name of alternative modules instead of apc220
@kaikart123
4 жыл бұрын
@@Ankitkumar-tb6vi say "please" and I might tell you
@Ankitkumar-tb6vi
4 жыл бұрын
@@kaikart123 nikal... Lawde
@jmc_fpv
4 жыл бұрын
HC-12?
@aiacademybysid5631
6 жыл бұрын
Click on the photo
@ali-a-agames7292
3 жыл бұрын
Pls any one can help me to use hc12 modules for telemetry system pls ???
@startphp
6 жыл бұрын
is this demo or project for people to use. You wasted my time if you wanted to teach or offer this to be used.
@mpls_link
6 жыл бұрын
very unwise, thanks Mr. Joop for this video, now we can create our own telemetry
@ahmedallam9612
6 жыл бұрын
Now, It's possible to create a telemetry system, wonderful explanation, valuable contents, we really appreciate Mr joob
Пікірлер: 160