=== Let's Drone Out — Episode 36 === Title: Ep36 BorisB of Betaflight :O Recorded: 2016-05-05 Hosts: Jae "Chipko", Andrew "Frank" Hyams, Jack "Brightontillifly" Nash Guest(s): Boris B, Simon "Bradderz" Bradley Total audience: 3,155 Platforms: SoundCloud (http://www.podtrac.com/pts/redirect.mp3/feeds.soundcloud.com/stream/263297167-letsdroneout-ep36-borisb-o.mp3) ==================================== The Betaflight Master gives us Words of Wisdom. Boris explains all; the origins of Betaflight, the reasoning for high speed gyro's and the future for selectable PID controllers... [0.0] SPEAKER_01: And you are listening to Let's Drone Out and for a change, we've got someone who knows [8.42] SPEAKER_01: absolutely everything. [10.42] SPEAKER_01: I'd like to present you, Boris B. everyone. [14.62] SPEAKER_01: Yay! [15.62] SPEAKER_01: Yeah, it's me, finally on the show. [20.22] Jae: Yeah, welcome Boris. [22.02] SPEAKER_01: Welcome. [23.02] SPEAKER_01: And we're followed by the usual gang, Adam Juniper. [27.26] SPEAKER_01: Hello! [28.9] SPEAKER_01: Jay Chipko. [29.9] SPEAKER_01: Yeah. [30.9] SPEAKER_01: And the greatest, if you've got a drug problem, talk to Frank. [34.82] SPEAKER_01: Frank! [35.82] SPEAKER_01: Good evening. [36.82] SPEAKER_01: Alright guys, I'm going to leave you to it. [39.42] SPEAKER_01: I'm not 100% but enjoy the show. [44.14] Frank: Thank you Jack for starting us off. [47.06] Jae: And please don't die Jack. [48.62] BorisB: Yeah, take care of yourself. [50.7] BorisB: For those of you who are not sure, Jack's not feeling it his best at the moment but [54.9] BorisB: I'm sure we'll hear it from him later. [56.9] Jae: I think it's anticipation for this weekend's antics. [60.66] Frank: Understandably excited. [62.26] Frank: Oh yes. [63.84] Frank: And just to remind everyone, this radio show is sponsored by Fossil Stuff with the indestructible [67.98] Frank: gravity frames in 180, 250 and 280 size, designed and manufactured in the UK. [73.86] Frank: Yes. [74.86] Frank: Pretty indestructible. [75.86] Frank: Yeah, great. [76.86] Frank: Getting that over and done with. [78.52] Frank: Thank you Boris for coming on. [79.58] Frank: We know Jack has been hounding you a lot to get on here so we're very grateful that you've [85.06] Frank: taken out an evening in lovely sunny Netherlands. [89.34] Frank: Long evenings as you were saying and you could be flying and you're spending it here talking [93.62] Frank: to us. [94.62] Frank: So thank you for taking the time. [95.62] Boris B: I was just thinking the same but it's my pleasure. [99.7] Boris B: I actually had a couple of lipos loaded and I have a day off from my work and I was like [105.22] Boris B: yeah, it's a good day for flying and I like these bright evenings when the northern hemisphere [112.9] Boris B: is good for one thing, it's the summertime, long evenings, it's amazing, you can fly. [118.94] Boris B: It's great. [119.94] Boris B: But on the other side, we get punished the rest of the year. [123.02] Boris B: In the winter it's pretty much nothing but okay, yeah. [128.66] Boris B: I'm finally here. [130.02] Boris B: It's my pleasure. [131.02] Boris B: Sorry, I couldn't make it earlier but yeah. [135.94] Frank: We know you're a busy man so that's why we're happy you have come on. [140.58] BorisB: We don't want to keep you away from the computer forever. [145.02] Boris B: Well, I'm still behind my computer. [149.3] Boris B: I could actually write some code actually in the meanwhile. [152.94] Frank: Do you want to just start off with letting us know, you know, there might be some people [158.58] Frank: listening that don't know what B2Flight is or what its purpose is in the open source [165.14] Frank: flight control firmware community so I wonder if you want to sort of cover that a bit from [170.22] Frank: your perspective of what you want to do with it when you first started it. [174.94] Boris B: Yeah, it's, you know, B2Flight is just, yeah, let's put it that way. [179.66] Boris B: I started, well, I'm just a pilot. [182.82] Boris B: I enjoy this hobby for flying, you know, these little quadcopters and I'm doing that for [188.42] Boris B: a long while but I'm also a software developer. [191.9] Boris B: I do that for my daily, you know, that's my daily job. [194.86] Boris B: I do some, I write some software, not specifically for drones or, you know, microcontrollers, [200.82] Boris B: totally different stuff but, you know, all software developing is kind of similar so [205.5] Boris B: at certain point I was, well, I never actually, you know, the first years I was doing this, [212.66] Boris B: I, you know, there's a lot of more going on in this. [215.18] Boris B: You have to know about control theory, mathematics and stuff so I never really dig into it but [221.06] Boris B: after a while I was, you know, kind of annoyed, missing some stuff, some, you know, basic [226.54] Boris B: features which were just not getting into the, you know, default base flight or clean [233.08] Boris B: flight what everybody was flying back in the days so I decided to, you know, jump into [238.66] Boris B: it and do some developing by myself to add the features, it's open source anyway. [244.62] Boris B: So I talked to Dominic, he helped me a bit to, you know, to get GitHub going because [249.86] Boris B: I wasn't really familiar with the system back in the days. [253.62] Boris B: He taught me about how it works so I added some simple features that I was missing for [258.3] Boris B: years and I was quite happy, yes, I finally have something, you know, what I was missing [263.24] Boris B: for years, what other developers failed to make but, you know, once I was getting more [270.1] Boris B: and more familiar with the code itself, you know, with the clean flight code after a while, [274.02] Boris B: you know, it's like a book, you know, exactly what page, what stuff is, you know, happening [278.3] Boris B: and you start to seeing things and, you know, the more you look at it, the more stuff you [283.14] Boris B: see can be improved. [285.7] Boris B: So you know, you get, you know, you get kind of hooked by it, starting to improve things, [291.86] Boris B: you discover new bugs and new things that could be improved and, you know, you keep [298.62] Boris B: going but as it's whatever the open source project is, there are many developers and [303.78] Boris B: it's not that easy to get your own code into the, you know, code base, you know, there's [308.5] Boris B: a lot of approvals, other people have their own opinion about stuff, you know, so for [315.94] Boris B: example you think something's good, the other guy will say, well, he has some different [320.5] Boris B: theory and he will say that, you know, he will, you know, you get this long discussion [325.86] Boris B: and in a while, you know, you lose a lot of energy by trying to get it into the code. [331.66] Boris B: So I decided to, you know, to build my own branch to, well, actually that kind of happened [337.3] Boris B: by itself. [338.3] Boris B: So I needed most stuff I was doing, I was coding, it needed testing, so I needed people [343.54] Boris B: for testing, so I already knew a lot of pilots and I was just sending them these binaries [348.86] Boris B: to files just to try it and, you know, they told it to others and after a while I was [355.58] Boris B: getting spammed by PMs, well, I heard that Charpoo, for example, Charpoo was a friend [362.38] Boris B: of mine, back in the days I always helped him with tuning and stuff, you know, with [366.06] Boris B: the quadcopters. [367.42] Boris B: So you know, he's quite popular, a popular pilot still is and well, after, when he told [375.58] Boris B: people that he was flying Betaflight, which was already existing in the world, it was [380.78] Boris B: actually just a, you know, it wasn't even Betaflight, it was just a clean flight, customized [386.34] Boris B: clean flight. [387.54] Boris B: So he told that to some other people and those started to spamming me, you know, I need the [393.34] Boris B: attacks too. [394.82] Boris B: So I was, you know, I didn't want to answer all those individual messages, so I opened [400.74] Boris B: the topic with like, you know, topic for a specific test group, people who would like [408.02] Boris B: to help with testing and give their input. [410.78] Boris B: I actually wanted to, well, let's say there are a lot of developers which are not really [418.22] Boris B: a good pilots, which do not really fly, you know, these quadcopters themselves, they're [425.22] Boris B: just developing and they hope that the pilots would like it and I wanted to bring it closer [430.3] Boris B: to the pilots itself. [432.28] Boris B: So that's why I started this topic on RC groups, to get more input from the pilots [437.58] Boris B: themselves and to let them decide about the features and the firmware and, well, that's [443.34] Boris B: how it all started. [444.94] Boris B: Wow. [445.94] Boris B: Yeah. [446.94] Boris B: And, well, before I realized it exploded and it became a separate branch, you know, it [454.06] Boris B: was never my, I did not do that by purpose, I was not planning to have some kind of firmware [460.98] Boris B: on software, I just needed a name for it, you know, and as it was a test software in [466.94] Boris B: the beginning, I just called it Betaflight, you know, that's, yeah, I had to put the name [472.48] Boris B: on it and that was the most suitable names back at the days, but in the meanwhile, it's [476.52] Boris B: getting, you know, it's not just a test software, it's just, it is pretty stable and, wow, there's [483.1] Boris B: a lot of going on, a lot of input from different developers, it's open source anyway, so, you [488.14] Boris B: know, well, it opened a whole different world for me, actually, got me in touch with different [495.72] Boris B: companies, different connections, it's really, you know, even though it's open source, I [500.6] Boris B: do this for free, I don't get any, you know, people send me some donations, but that's [506.4] Boris B: purely to have, you know, to have some gear for testing, like oscilloscope, some stuff [511.48] Boris B: I was missing, besides that, it really helped me on other parts, you know, even my daily [518.88] Boris B: job where I was not doing anything with the microcontrollers, I did learn during this [523.36] Boris B: project a lot of stuff which I'm using for my daily life already, so, wow, so you said [530.08] Jae: originally you were speaking with Dominic Clifton when you were first getting started [534.0] Jae: with Betaflight, do you still collaborate with anyone else or is it pretty much that [538.2] Jae: it's branched off now and you're pretty much looking after a couple of people adding into [542.0] Boris B: it? [543.0] Boris B: Well, my mind, what I forgot to mention with Betaflight, I have no, well, it's, yeah, let's [549.68] Boris B: say I have no long-term planning, plans with it, so my, it's actually a research project, [558.4] Boris B: let's call it just a research project where I want to make things better in the, you know, [562.8] Boris B: I want to optimize the software for the current hardware which is out there, especially mini [569.44] Boris B: quadcopters which are much faster, much more agile than, you know, the original stuff where [576.12] Boris B: all this firmware was developed on, it's all coming from the Multivi base flight days [580.92] Boris B: and back in, you know, the flying style and the motivation back then was totally different [586.72] Boris B: than we have now, so I'm trying to optimize it and develop some kind of new features and [594.08] Boris B: to see if I can improve stuff, but eventually I was planning to put that back into clean [598.88] Boris B: flight, it was still a test project to see some, you know, I introduced a lot of features [603.96] Boris B: and when certain feature is really promising, doing really well and everybody's happy with [609.84] Boris B: it, I just, you know, port it back to clean flight, like, for example, air mode which [613.48] Boris B: was a huge success and that's, you know, it's still a branch, you know, it's not like, okay, [621.12] Boris B: we finished testing and we're going to stop it, I think it will still exist for a while, [626.52] Boris B: but yeah, like I said, it exploded, but my original plan was just to have a test firmware [633.4] Boris B: so I can verify stuff before it gets merged into the official firmware, but in the meanwhile [638.08] Boris B: it's a separate branch and surprisingly when I go to the racing events which I do regularly, [646.16] Boris B: it seems like everybody's flying beta flight, it's, you know, we have KISS for example now [651.4] Boris B: and that's also popular, but it's surprisingly that almost nobody flies clean flight anymore. [658.4] Jae: It was quite interesting that it was applied as a fix, as in a lot of people were saying [661.64] Jae: oh, it's just not performing very well, have you flashed a beta flight on it and then it [665.88] Jae: would fix problems, so it was always a fix for a little while, but now I think it's, [670.2] Jae: yeah, I mean, I know more people, well, I hardly know anyone on clean flight at the [673.84] Jae: moment, so that's a testament to your programming skills. [677.68] Boris B: Well, yeah, it's not just the programming skills, it's just, you know, I'm trying to [684.16] Boris B: be, besides the new features, new stuff, what I wanted to introduce, I also wanted to have [689.28] Boris B: a good default baseline, you know, because, for example, looking at the base flight or [694.4] Boris B: clean flight history, they have this default settings which were there for like years, [700.92] Boris B: for like six years, never changed, you know, like everybody, all these developers, even [705.28] Boris B: you know, Dominic Clifton and whatever, they do a lot of good stuff, you know, making the [710.6] Boris B: software better, but they all kind of think it's working, if it ain't broken, don't fix [715.76] Boris B: it, but nothing gets improved, you know, for example, you know, all simple little parameters [720.76] Boris B: in there, I wanted to tweak that to the modern, you know, mini-quat industry, to have a beginner [727.8] Boris B: which can install the firmware and it pretty much can fly decent settings, besides the [733.76] Boris B: new features and stuff that I added, I wanted to have a good baseline, that was my, you [739.16] Boris B: know, one of the other goals I had, and also to make it a bit less noisy, because I started [748.36] Boris B: with the filters at first, I was, you know, the Nick dude, it's a guy who invented blackbox, [755.64] Boris B: we never really knew what was going on on our quadcopters before we saw blackbox logs, [762.32] Boris B: and the first time I saw it, I was quite shocked, I was like, well, is this really what is going [766.36] Boris B: on, you know, is it that messy, and it was, so that was one of my first motivations to get me [778.04] Boris B: going, to improve, to make it cleaner, to get more out of our tune, you know, I realized for [783.24] Boris B: example that our P, you know, we are usually hitting the noise levels earlier than the real [791.48] Boris B: physical limits of our quadcopters, so we would be flying with much lower P, to have a smoother [798.28] Boris B: flight, while in the reality we could have much higher P, but the noise is preventing to increase [803.56] Boris B: that, you know, those simple things, you know, just kept me motivating in this project, [807.96] Boris B: and as I said, you know, once you get more familiar with the code, you see, you can't [812.2] Boris B: constantly see new stuff which needs improving, and in the meanwhile you discover some bugs which [817.8] Boris B: were there for ages, but just being triggered by something else you made better. For example, [823.64] Boris B: one of the things that really puzzled me for a while was once I introduced Air Mode, we saw these [830.36] Boris B: infinity rolls in coming, and you know, at first you would think, okay, with before Air Mode, [837.56] Boris B: it wasn't there, but currently a lot of users are reporting these crashes and infinity rolls, [844.68] Boris B: and stuff, so I thought there must be a bug somewhere, and you know, you're looking for [848.52] Boris B: weeks, you're trying, you're thinking your code, you're overthinking it, and somehow it all seems [854.28] Boris B: right, you know, there's nothing wrong in there, but after a while it became pretty clear, you know, [861.48] Boris B: to that there was a serious bug in there for ages, but it wasn't triggered like that because [869.24] Boris B: there wasn't enough authority to get the, you know, to get the quadcopter rotation rate [875.48] Boris B: above certain level to, you know, to trigger this bug, which was actually the gyro at the limit [881.96] Boris B: for 2,000 degrees per second, and once you reach that 2,000 degrees per second, the gyro thinks [889.08] Boris B: you're rolling the opposite way, and it will try to correct, for example, if you're rolling to left [894.36] Boris B: with over 2,000 degrees per second, the gyro will think you were, you were rolling to right, [900.04] Boris B: and it will try to correct, correct left, and it will increase the rotation rate, and you will [905.32] Boris B: never get out this roll, so you know, those simple things which were always in there, [910.2] Boris B: but it was discovered in the Betafly stage, like some other things, failsafe, which was also never [916.84] Boris B: really, really working well, you know, those things really kind of demotivated me at certain [924.6] BorisB: stage. A lot of the time thinking that it was just bad pilots, though, if you're getting a [930.28] BorisB: load of complaints, or were you able to reproduce the problem straight away? Sorry? When you get [936.84] BorisB: complaints, do you not first think, oh, these people are just not flying right? Well, yeah, [941.48] Boris B: that's the first thing you think. That's obviously because, you know, I've tried to do a lot of [947.08] Boris B: testing, loads of testing, and I never found this issue by myself, and then you start thinking there [954.84] Frank: must be something wrong, the EC or the motor. There's been a little bit of talk in the chat [960.92] Frank: about the mini air show that's happening this weekend, down in Brighton, put on by Dom, [968.36] Frank: Voice of Doom on Thursday night show, so we've got Metal Danny saying you can't come because his wife [974.52] Frank: hates him for all the events that are happening. But your wife, if you want Kate, you'd better be [979.96] Jae: out of the house another foot. Yeah, I mean, this is all part of the International Drone Day, which [985.72] Jae: is thankfully being put back to me rather much, which it was last year, and with that, I mean, [990.44] Jae: there's events all over the world. Have you got anything quite local to where you're at on this [994.04] Boris B: International Drone Day for us? Next week, I'm going to France in Marseille. There's this big [1000.6] Boris B: event, what is the name, Planet du Domen or something. That's what it's called. To get a race? [1011.48] Boris B: Yeah, it's racing, freestyle, team racing, individual race. It's a four-day event, [1016.28] Boris B: so it's got to be exciting, I hope. So that's where I'm going to be next week, [1024.6] Boris B: and I hope really to visit the UK once because I really love the events, what I saw before, [1031.4] Boris B: like, for example, the Formula FPV event or some other racing events which were there [1037.88] Boris B: with a lot of nice technical courses, which really seemed exciting, and a lot of [1044.2] Boris B: UK pilots are, in my opinion, one of the best of the worlds when it comes to racing. [1048.84] Jae: I said maybe it's our country lanes we always have to drive around because they twist them. [1052.12] BorisB: Yeah, exactly. Well, I don't know, isn't our national best too young to drive? [1058.84] Jae: Well, yeah, that's true. Not for long, surely. [1063.24] Frank: Yeah, good point. Boris, there's lots of people asking, do you know which events you might come to [1069.88] Boris B: at all later on this year? I'll go probably to drone nationals in New York in August. That's [1077.72] Boris B: when I was invited. That's a big one. It's being broadcasted by ESPN live on television, so that's [1086.52] Boris B: going to be really, really exciting. It might lift this entire drone racing industry to the next [1094.36] Boris B: level, as it's going to be broadcasted to national TV by ESPN. I believe that was never done before, [1102.68] Boris B: so that's really exciting. In regard for UK events, I really need to pick one. I'm not really [1112.76] Boris B: up to date. Nobody's updating me, but I'm not aware about events which are going to happen this year, [1118.76] Boris B: but I guess I need to talk with Denny or something. Denny's aware about those events, [1124.44] Boris B: and he really told me it's definitely recommended to go to the UK. He really enjoyed it there. [1129.8] BorisB: There we go. More than welcome. I hope you're listening there, event organizer. [1135.88] Jae: It is the start of the season, I suppose. Yeah, it's the start of the season, exactly, [1140.6] Boris B: and there are a lot of events coming up. The last year, or two years ago, or last year, [1148.12] Boris B: you were happy to have some kind of events. Everybody was knowing there were like three [1153.0] Boris B: events around in the area, and that's where everybody was going, and now there are so many [1158.36] Boris B: events that you really had to pick a good one to go there, because you can't be everywhere. [1163.24] Boris B: There's every week, there's something, but I mainly enjoyed local events like [1170.2] Boris B: in the Netherlands, Belgium, or Germany. That's quite a lot of events. That's where I usually [1175.24] Boris B: always go, or I went till now, but I'm thinking to expand my... To go further than just Europe [1185.72] Boris B: this year, to visit some bigger events. I miss Dubai, for example. I regret that, [1192.6] Boris B: which is not because of the event itself, but I really wanted to be there to meet a lot of [1199.4] Boris B: awesome people in this industry. But the entire event in Dubai was kind of [1207.88] Boris B: unorganized in the beginning that I gave up. I never expected it, because in the beginning, [1212.6] Boris B: it didn't seem to become something, and apparently the last two weeks, just before the race, [1218.6] Boris B: everybody was suddenly going. I think you caught a lot of people by surprise, that. [1224.12] Boris B: Yeah, that surprised me, and I really couldn't make it anymore. I was really thinking to go, [1229.88] Boris B: I wanted to arrange everything, but two months before the race, everybody was like, [1235.56] Boris B: yeah, it's not organized, it's not going to happen. All kind of stories going around, [1241.16] Boris B: so I just said, okay, then I'm not going. I didn't arrange anything with my job, and suddenly, [1246.6] Boris B: two weeks before, all kind of teams were starting to call me, and do you want to join us? Do you [1251.0] Jae: want to join us? Maybe in the UK, then in a further field, this is the reason it's not going [1256.52] Jae: to get big just yet, because there's no organization around events, so people don't even know what's [1260.6] Jae: happening. It's still on the underground. Well, we'll make sure something's in the pipeline and [1265.96] Jae: get you away from the UK, have a fly with some technical flies. We'll throw our best towards you. [1271.64] Boris B: Do you prefer racing or freestyle? Well, yeah, I like racing, for example, as well, [1277.0] Boris B: but I'm not really good when it comes to the big pressure. I always come really far, but [1291.56] Boris B: it's not like I don't feel like winning. I always have bad luck. Somebody's crushing me. [1298.04] BorisB: You're saying the pressure against you a bit, so you're saying that [1300.76] BorisB: if somebody is racing against you, they need to really get in your head. [1304.6] Boris B: It's not just all these racing events, for example, the last event where I was. There's [1312.92] Boris B: a lot of waiting in between. There's a lot of different things going on than just racing. [1321.4] Boris B: It seems that it's not the pressure itself. Well, after a couple of events where I was, [1328.44] Boris B: in the beginning, everybody has pressure the first time when he's racing, something official. [1333.24] Boris B: But for me, I came to the point where I don't feel the pressure itself, but it's like I'm really [1339.16] Boris B: cold. I didn't fly. I didn't even touch the sticks for a long while, and there's this long [1344.04] Boris B: waiting, long waiting, and then you have to fly suddenly. For me, it always takes a little bit [1351.4] Boris B: to get smooth, to get focused. Yeah, that can be a bit unnatural. [1356.28] Boris B: Exactly. It feels, for me, unnatural. First, somebody is waking up in the morning, [1361.88] Boris B: and you have to do a running, for example. That's how it feels. I wouldn't know about that. [1370.84] Bradders: Obviously, as we got by with them, can we go back to speed? I've got a few questions I wouldn't mind [1375.48] Bradders: asking. What's your say on the gyro and the pit now? Obviously, you run it. It can run up to [1385.8] Bradders: 8GHz now. At the moment, I'm running a cyclone, new badge, so I'm running a full 8GHz setup, [1394.2] Bradders: obviously, thanks to yourself. What's the best sort of... Obviously, I can run 8K, 8K. Is it best [1403.96] Bradders: to run eight and two, or what's your sort of say on that? To be honest, I really... Well, [1412.76] Boris B: there's a lot of talking about that, and there are different opinions about that. First of all, [1419.8] Boris B: when you look at the theoretical stuff, when you look at the motors and ECs, what those are capable [1427.64] Boris B: to do, well, even one case, much more than they can cope with. For example, when you would heavily [1437.0] Boris B: over tune your quadcopter, make your piece that high that it would oscillate to death, actually, [1444.28] Boris B: you would never see more oscillation than 20 or 50Hz. It will start shaking. That's the maximum [1451.08] Boris B: response you can get from that quadcopter. From looking at that perspective, you could say, [1458.28] Boris B: it's overkill to do these fast motor updates at all, because you're sending commands, but [1466.28] Boris B: the motor of the ECs are not able to respond to that. That's the theory number one, which I [1475.56] Boris B: kind of partly support, but there's also more than that. Certainly, you need to have [1484.92] Boris B: much more refresh rate than your motors should be able to cope with. Let's, for example, [1491.4] Boris B: if they're able to have 50Hz, that's the maximum response of your quadcopter, [1497.48] Boris B: you would have to have 10 times of that 500Hz or maybe 1K. There's a certain point what becomes [1505.32] Boris B: optimal, and above that, you can send commands, but the ECs or the prop will never respond to that. [1511.96] Boris B: So I kind of think that all sounds reasonable. I never did any research about that to really prove [1521.88] Boris B: it, but I did a lot of old projects like Peabody. It's a developer from Dowlabs. He did some [1532.12] Boris B: measurements on this, and it was confirming that it wasn't really helping to having it faster than [1541.88] Boris B: 1K, for example. But there are a lot of different stories now going around with multi-shot, one shot [1548.68] Boris B: 42. There's certainly reason for investigating that to do some more research. Is there anything [1557.24] Boris B: else what we're missing? We're not only talking about the motor update speed, but regarding the [1563.24] Boris B: sampling speed, the gyro speed, it's definitely better to have it as fast as possible, because [1568.2] Boris B: the more you see, the more you can filter, for example. If you're familiar with aylizing, [1574.92] Boris B: which you get, for example, you have a high frequency and you're sampling slower or same [1585.16] Boris B: speed than that frequency, then that high frequency can transform to a lower frequency, [1591.32] Boris B: which can eventually become a noise and it can affect your tuning, for example. [1596.84] Boris B: So, that definitely, without any doubt, that's definitely a improvement. [1602.04] Bradders: Noise must be one of your biggest issues with Embiid Flux, because obviously, there's a lot of [1606.28] Bradders: people, obviously, with the Rev6, the Lux, and obviously, you've got 2.7 running at the moment. [1611.16] Bradders: We just have the latest BL Heli, which obviously should help things as well. [1615.8] Bradders: I'm running 2.7 on a SPF3 midi, and to be honest, it flies great. I literally can't fault it one bit. [1627.56] Bradders: I flash the latest multi-shot, because I've been running multi-shot on mine, but I've [1631.64] Bradders: flashed the latest multi-shot with, obviously, the implementations from 14.5, and it just feels [1637.88] Bradders: great, man, and the work you're doing, I can't fake you enough, personally, but [1642.2] Bradders: noise must be a big issue, man, because... Exactly, yeah. The noise is the biggest issue, [1649.08] Boris B: but things... Well, my initial start-up with Beta Fly was, let's make it all clean, [1656.52] Boris B: let's make it smooth, and it will all fly well. Well, eventually, I came to the point where [1662.12] Boris B: everything was smooth, the black box looked perfect, and everything was like, you know, [1666.92] Boris B: you couldn't say anything that should be bad, but it wasn't really flying that well, so... [1672.84] Boris B: Then I realized that, okay, maybe too smooth is also not really optimal, as that introduces [1680.28] Boris B: a lot more filtering, a lot more delays, so you have to kind of compromise, you have to find, [1684.76] Boris B: you know, you have to make it a little bit more noisy, you have to make delays as low as possible, [1690.36] Boris B: but to the point where it doesn't affect your flight, it doesn't affect your motors or your [1695.4] Boris B: ECs, so that's the balance, that's the continuous battle I'm doing with the Beta Fly, you know, [1700.12] Boris B: trying a perfect balance between the noise and the optimal delays. Can I just ask, but what are [1707.88] Bradders: you actually playing with? Are you playing with the D-term filter in 2.7? Is that what you've been [1714.52] Bradders: playing with on that, to try and not, obviously, when we're doing a hard 180 and that, especially [1720.52] Boris B: with the, obviously, the MPU from Alux? I tried to do something with that, I tried to do something, [1726.28] Boris B: you know, thinking out of the box, you know, there's a bit controller, there's a theoretical, [1730.04] Boris B: you know, like you learn in school, you find articles on the internet, it's a bit controller, [1734.12] Boris B: this is B, this is I, and this is D, there's nothing else, you know, this is how it works, [1737.96] Boris B: and that's it. Well, I tried to think a little bit further out of the box and translate it into a [1745.08] Boris B: multi-rotor application, for example, thinking about what if we just make D a little bit different, [1752.12] Boris B: you know, just use D whenever we want it and ignore it at the moment when we don't really need it. [1759.0] Boris B: So I wanted to make it, you know, for example, ignore small noise, you know, just ignore it, [1765.48] Boris B: then you won't get noise in the system, and when we need it, large stick inputs, for example, [1770.76] Boris B: you're doing rolls of flips, you want some dampening, then we allow more D, you know, [1775.64] Boris B: some kind of logic, a special logic behind that to make it smoother, to make quadcopters less prone [1781.88] Boris B: to D term oscillations, which on paper sounded really well, but it wasn't really a success. [1789.4] Boris B: Well, eventually it was a success, we learned from it, as we did realize the D in low amplitude [1797.96] Boris B: levels is quite important, because it's keeping P stable, you know, when P, [1803.48] Boris B: B is kind of thinking at present, you know, B is just looking at what's happening now, [1807.96] Boris B: and I'm going to react on that, and that's limiting P to be optimal, which will actually [1814.76] Boris B: make B, you know, oscillate, you know, just a little slight oscillations and make stuff unstable, [1820.92] Boris B: and it is actually D, the low amplitude D, which helps B from freaking out, so that little noise [1828.2] Boris B: you see, you know, in D, and you know, we wanted to remove, is actually turned out to be very useful, [1834.84] Boris B: and I stopped by doing that, but we learned from that, and I kind of left it as it was, [1843.4] Boris B: and with all these new firmwares for ECs, like for example the latest BLLE or, you know, [1849.4] Boris B: it doesn't really matter, you know, you can allow a little bit of noise in there, you know, [1853.56] Boris B: even though it's like once you see some noise, it doesn't really, that's what you get to do. [1858.04] Bradders: I see so many people, black box, black box, black box, but at the end of the day, [1862.2] Bradders: if your quad feels amazing, which you know, you can get it feeling amazing, why [1867.8] Bradders: mess around with black box at the end of the day, you know, motors coming down cool, flies are great, [1873.08] Bradders: you know, just leave it, literally just, you know, it is one of them, it's a hard one. [1881.8] Boris B: Yeah, that's exactly a thing we learned actually, you have to not only look [1886.84] Boris B: to the graphs, which you see, which you also have to, you know, feel, how does it feel, [1892.36] Boris B: and what do you see, you know, even simple things like motor sounds, motor sound can tell [1897.16] Boris B: more than a thousand words about your tune. If that sounds smooth, then there's nothing to worry [1901.88] Boris B: about, even though if you, if you, if your black box lock, you know, scares you, like hell. [1908.76] Bradders: So yeah, enjoy the flight. Yeah, exactly. There's a lot of tuning, I'm with real high, [1915.64] Bradders: with my eight gigas, both of tune, real high P's, and my D's are quite low, [1922.44] Bradders: and it just feels great. I don't know if I'm doing it right, to be fair, but [1926.6] Boris B: oh, that's, that's a good thing. Yeah, that's, that's exactly a good thing. That's how I tune [1930.44] Boris B: as well. The higher P makes it more responsive, you know, makes, makes the, you know, gives you [1936.28] Boris B: more connection with the, you know, with, you feel more connected with your craft, you know, [1942.04] Boris B: it gets more sharper, it gets more crispy, more responsive, but you also, when it's, when your P [1950.2] Boris B: gets too large, you, you know, you can get the oscillation. So the latest 2.7, what I did, [1954.52] Boris B: I was like, okay, that was one of these things, what I said, out of the box thinking, you know, [1958.76] Boris B: thinking more about, you know, than just pit controller as it is, I realized, actually, when [1964.28] Boris B: you don't use a lot of stick input, you don't need a high P, you know, if it's stable, if it's stable. [1969.96] Boris B: So I added some P acceleration, the more, the more stick input you give, the higher P gets, [1976.44] Boris B: actually, that's, that's the trick, got it? 2.7 to make it feel sharper. So you can get a, you can, [1983.08] Boris B: you can have your own normal piece, which will feel the same, you know, it will be stable. And [1989.56] Boris B: once you hit your, once you start moving your stick, your P will actually increase, which will [1995.4] Boris B: give you more connected, sharper feeling with your quadcopter, for example. So you only get more P [2003.56] Boris B: when you really need it. And that really turned out to be a great success. And if you, if you watch, [2008.6] Boris B: for example, my latest two flights, which I, which I posted, it's just, you know. Yeah, man, loving it, [2012.92] Boris B: loving it. Yeah. Are you running the OPL Heli-S on there? Yeah, yeah. That was Beale Heli-S, [2018.12] Boris B: which also does, you know, gives more confidence, for example, you know, it's, it's, it's quite [2023.08] Boris B: similar to Kiss ECs. I don't know if somebody, if you, yeah, what the main difference is between, [2029.72] Boris B: for example, the Kiss ECs and the normal Beale Heli, let's further, yeah, the older Beale Heli firmware [2035.4] Boris B: is that, for first, it's the resolution. It's the throttle resolution, which is quite, which is [2041.8] Boris B: important, especially the proposed scenarios and some, some, some edge tuning, you know, which you, [2047.56] Boris B: which, which is hard to tune if you don't have a lot of resolution, you know, you can look at that, [2052.36] Boris B: you have an SD television and HD television. And that's, that's the throttle resolution in the [2058.04] Boris B: ECs. And the Kiss ECs were always having this very large resolution where the tuning was much [2064.84] Boris B: easier than on the Beale Heli, where, where the, where the throttle steps were quite rough. And, [2069.8] Boris B: you know, when you get these proper scenarios where you have to do quick 180s and, you know, [2076.92] Boris B: other proper scenarios, you get, you get these micro, you know, little, little small corrections. [2082.92] Boris B: And if those are too rough, it can actually increase, increase the oscillation. It can make [2088.12] Boris B: it even more unstable. That was one thing. And the other thing is the hardware PBM, hardware PBM, [2094.84] Boris B: you know, that's a, that's a separate chip, which, which is doing a PBM commands to the [2099.72] Boris B: motors. It's, it's, it makes it more, it's, it, it has one task and it's to, to make as [2105.0] Boris B: soon as possible motor outputs, you know, and the normal Beale Heli firmware does that with, [2111.0] Boris B: with the software and the software is not only doing that, it's doing a lot of other things [2115.64] Boris B: and that creates delay and it makes it less, you know, less clean. So you actually get [2121.72] Boris B: larger, larger delay between the, in your control loop. So, and that's, you know, that's, [2128.36] Boris B: that's creates that's felt in your, in your tuning. And, you know, you can get less crisp feeling in, [2135.48] Boris B: in your flight and Beale Heli is exactly the same. Guess you see, yes, it's the hardware PBM [2142.52] Boris B: and your throttle stick feels more wired to your, to your actual quadcopter. So when you, [2149.0] Boris B: for example, do little dives around the trees and you want to recover besides the power, [2154.6] Boris B: it's the response, you know, you get just more, a little bit more response and it gives you more [2159.0] Bradders: confidence. And yeah, that just feels better. Is it a difference from say, every 30 SC to [2166.36] Bradders: every 90 because the response, I felt the response difference straight away. Is it as large or is it [2173.8] Bradders: or is it, well, an F3 30, so like little B20 amp to say, are you bad 30 amp with a F3 90 chip? [2185.0] Boris B: Because I noticed the difference in response. It's breaking the F3 90 of entry, but I noticed [2192.28] Boris B: personally, but it's, it's just a feel. It's that it doesn't really feel a lot of difference, [2198.92] Boris B: but you do get a better breaking. For example, when you, you know, when you, for example, [2204.12] Boris B: where I really felt it is during racing and I'm, you know, heading for a gate and I'm just [2209.24] Boris B: a little bit too high and I need to lower my throttle to go below the gate with the little [2214.12] Boris B: bees. That is more predictive. You know, I, I have to, you know, I have to think a bit more [2219.96] Boris B: upfront than with the U-Bets. U-Bets were, you know, breaking a bit better. All kissy you see, [2225.32] Boris B: which I also had were just like instant, you know, just what I lower the throttle is just [2229.72] Boris B: drops to the ground. And that's, that was good. When you translate it for, you know, [2233.96] Boris B: in to the flight characteristics, that was really something when I, what I felt. And the, [2238.52] Boris B: the BL-LES is pretty, pretty close to kiss actually in terms of breaking. In, in, in terms [2246.44] Boris B: of feel, smoothness could be even better, I think, than kissy as is. But I believe the kissy as is [2253.08] Boris B: have slightly better breaking from the statistics, but I saw somebody was measuring that. [2259.08] Bradders: That's amazing stuff. It really is. Yeah. It is really amazing stuff. Sorry, I've got another [2267.48] Bradders: question as well. So we lost multi-wee, obviously, which is a good thing because we got super, [2273.4] Bradders: super expo out of it. Do you think going forward we will lose multi-right? Sorry, [2280.52] Bradders: rewrite and we will go straight luck because obviously the math and obviously stuff's getting [2285.8] Bradders: faster. And I'm assuming it's maybe easier to program. Obviously I don't know, but [2291.88] Bradders: what I'm hearing, do you think going forward, do you think we're staying on the same PID controllers [2296.44] Boris B: or do you think there'd be a new PID controller? Well, I'm not sure about that. I think I personally [2303.96] Boris B: always loved how the rewrite felt. There was something special about it for me. It's, [2308.2] Boris B: so it's just so, I don't know, it was more easier to tune always, for example. It was [2317.48] Boris B: besides the fact for a programmer or whatever to understand what's really going on. It's [2322.2] Boris B: the math is kind of weird when you look at the stuff. It's the integer math being all kind of [2329.96] Boris B: workarounds to do some calculations, which is not nice, but it does its job and it does it really [2334.68] Boris B: well. So recently I decided, and even from the clean flight perspective, even the next clean [2340.84] Boris B: flight version will have the looks float. Well, it isn't even the looks float anymore. It's some [2346.2] Boris B: kind of looks rewrite. It's the rewrite translated into the floating point. So the new looks float [2353.56] Boris B: is actually a rewrite with the floating point math with the same numbers. It should create the same [2359.72] Boris B: whatever, same numbers from the same bits like rewrite, but with the floating point, [2366.12] Boris B: more precision and whatever. So actually you get the same two PID controllers. You could actually [2373.64] Boris B: decide and drop rewrite and use looks float. But there's a lot more than that. Even I still fly [2382.12] Boris B: rewrite, because that's what I'm used to for my fun flying. When I go out flying, I fly rewrite, [2388.28] Boris B: and that's what I'm used to. Even though the looks float will feel the same and also have the same [2392.28] Boris B: bits, same tune. It's just how you say it. It feels for me familiar rewrite and that's how I fly. [2402.84] Boris B: So there's a personal, how do you call it? Connection. Personal preference. Personal [2407.56] Boris B: preference you have. And if somebody would switch the looks float, call it rewrite and just make it [2414.44] Boris B: looks float. Maybe it's a placebo effect and they would still love it. Maybe in a while there's a [2422.84] Boris B: plan. That's also one of my first motivations in this project was I was seeing so many PID controllers. [2429.64] Boris B: There was PID controller one, two, three, four, and five. And I was like, why? Why not just make [2435.8] Boris B: a unique PID controller with all the good stuff from the old five? And that also motivated me in [2441.24] Boris B: this beta flight project, because I also started dropping multiple PID controllers and we broke [2448.44] Boris B: that number down to three. And in the next version, I'll drop another one. So there will [2454.04] Boris B: long be looks float and rewrites and the clean flight will probably do the same. What we do is [2459.56] Boris B: just what I also did actually was just taking, looking at them all, what do they have in common [2464.68] Boris B: and what does the PID controller three have extra feature compared to one and two? And let's take [2470.84] Boris B: that as a feature. For example, super expo is something always there in the Multi-V from the [2476.84] Boris B: Multi-V projects and Multi-V 2.3 PID controller had that integrated super expo. You cannot switch [2483.24] Boris B: it off. It's just your rates are like super expo factor. So I thought, if I integrate super expo [2489.88] Boris B: in the rewrite and looks float as an extra feature, then I don't need MV 2.3 PID controllers. [2497.16] Boris B: So I dropped it after that feature. Yeah, amazing stuff, man. Amazing stuff. [2503.8] Frank: So Boris, have you got any other ideas of where either beta flight or where generally the open [2510.92] Frank: source or even more generally the FPV type quads? Have you got any idea of where you'd like them all [2518.2] Boris B: to go? Yeah, I think in terms of software firmware, there isn't that much for me to think [2529.96] Boris B: about. Just quite a little bit, little optimizations, not the big stuff, no big things what we can [2537.16] Boris B: be amazed of, but you never know. I think that the next development, what we really want to see is [2544.6] Boris B: the FPV stuff. You see more HD transmitters, HD systems coming out. I think that's the part, [2554.2] Boris B: the video and in these events, video is always an issue. I think that's the thing that needs to be [2560.92] Boris B: developed further, that needs to take in the next years. I think that's going to take huge steps [2568.84] Jae: in the industry. Especially if it enables more flyers or just better security of your link. [2577.32] Boris B: Better security, better quality, but especially the better possibilities to broadcast. For example, [2584.44] Boris B: I don't really mind flying with what we have now because I'm used to that, but when you want to do [2590.68] Boris B: something like presenting it to a bigger audience, in these events, to make the sport bigger, [2600.44] Boris B: it needs to be presented better to the outside world with the better streaming. Also, the events [2609.0] Boris B: have to run more smoothly, the systems need to be more secure where you can really hook up a couple [2616.6] Boris B: of guys without interfering with each other. I think the video part will really take huge steps [2624.36] Bradders: in the next months or next years. I really can't see zero, like HD yet, but we will see. [2634.04] Jae: Well, it's not zero, is it? But it's near enough that you can probably respond [2638.6] Jae: within, we will see. We will see. Wait, wait, wait. [2642.28] BorisB: We will see. Looking into the more distant future, we definitely need to get [2646.92] BorisB: zero lag virtual reality cockpit so you can look around. [2652.6] Frank: That would be fun. That would be awesome. [2656.2] Frank: Another good question that we've had, Boris, is whether we are testing of unstable and [2661.48] Frank: released candidate beta versions of firmware, what has been the most dramatic? Surely there [2667.48] Frank: must have been some dramatic moments of crafts flying around and then doing something completely [2672.84] Boris B: unexpected. Oh, yeah, the biggest. Well, like I said, there were a lot of books which I discovered [2679.64] Boris B: which were always there in clean flight, but being exposed under certain scenarios easier. For [2688.04] Boris B: example, that infinity roll, which I was chasing for months, I was thinking to give up. I was like, [2693.56] Boris B: there must be something in that microcontroller that I'm not seeing correctly because there's [2698.04] Boris B: really air mode causing that, but eventually air mode was just pushing it, giving enough authority [2703.72] Boris B: to push it over that. I spent a lot of thinking even during the daily life where I'm not coding. [2713.16] Boris B: It's still in your head. You're still thinking, you're playing all the scenarios in your head [2717.8] Boris B: and thinking, what am I missing? You still kind of find it and eventually it appears to be a book [2725.32] Boris B: triggered by just, air mode just gives a little bit more snappy, zero throttle, [2731.48] Boris B: responsitivity and that triggers it easier. I'm going to channel the questioner there. I'm not [2737.96] BorisB: sure the questioner was asking, were there any difficult situations while coding? I think they [2743.16] BorisB: might have been asked, did you make a massive crash? Or did I make a massive crash? Or did [2749.32] BorisB: the firmware? Yeah, did something go horribly wrong that was both visually spectacular as well [2754.84] Boris B: as technically impressive? Oh no, for me personally, stuff goes wrong. Whoever does [2763.08] Boris B: ever write things, either it's internet or coding, everybody makes typos. When you make typos in a [2769.56] Boris B: code, it can have really erratic results and it can be hard to find. For me, it happens quite a [2776.68] Boris B: lot that, for example, I break a lot of props with testing stuff. In the early days, my testing [2787.24] Boris B: methods were really, how do you call it, really just simple flight tests and stuff. But I did [2794.92] Boris B: later develop some testing software which tests the code to make it more safe. But in the early [2802.92] Boris B: days, it was just arming, taking off and the quadcopter goes like this maniac devil through my [2809.24] Boris B: garage and ripping everything off from lights to those things, which I don't mind. It's my own [2816.12] Boris B: damage. But the things I fear the most was just, well, when I introduced some bugs, which I didn't [2823.32] Boris B: notice and I released a version, I don't know which version it was quite a long time ago, [2829.0] Boris B: which was really causing problems. For example, motors to shut off. Well, that's a version I [2834.84] Boris B: quickly deleted, but I did make a mistake in the past where I was doing some weird stuff with the [2844.04] Boris B: mint throttle. For example, when you get the motors to the lower level than the mint throttle, [2849.16] Boris B: then they shut off in some cases. There was once a firmware version where I introduced that [2858.04] Boris B: and people started reporting, hey, I upgrade it and my quad keeps crashing. What's going on? Did [2864.04] Boris B: I do something wrong? Then I realized the code and I had to tell them, oh, that's my fault. [2870.12] BorisB: At least you owned it. At least you didn't just say, yeah, no, that's you. [2874.04] Jae: A bit of a question for you, Boris. In your development of software for the NASE board, [2883.56] Jae: have you ever had to deal with Timecop, the infamous Timecop who banned it? [2889.16] Jae: He doesn't like me. [2890.04] Jae: Doesn't he? I think you're on the blacklist like everyone else then. [2896.04] Boris B: I think, I don't know, the history goes, I think it's five years ago when I started with the [2902.76] Boris B: sobi and there was base flight and there was this topic on the multi-v forums where you can [2908.44] Boris B: ask questions to Timecop and I was having some specific questions and I didn't felt like I was [2914.2] Boris B: some kind of noob asking some stupid thing and he was dealing with me like I was some kind of noob. [2919.88] Boris B: It's your fault, you don't know what to do and I guess he was being quite rude to me with his [2926.84] Boris B: answers while I was just being polite and that's where I really realized he wasn't really that [2934.6] Boris B: nice guy. He's an asshole, let's put it that way. Do it to everybody else. [2942.44] Boris B: Exactly, so I kind of started to treat him like that and then we had this one-shot discussion. [2953.64] Boris B: There was a big somewhere on the GitHub when this one-shot 125 stuff just came out and he [2961.8] Boris B: didn't want to introduce it into a base flight so there was this long discussion and it was just [2967.8] Boris B: being, yeah, he kind of was getting on our nerves and we didn't really came along in that discussion [2975.32] Boris B: and that's when the clean flight project really accelerated because everybody wanted to try [2981.4] Boris B: something new you know even though you didn't know there was no proof it was working everybody [2986.12] Boris B: wanted to try you know why not you know it's a simple feature with a couple of lines of code [2990.92] Boris B: why not just introduce it if people want it and that's where you actually, yeah. It's quite [2996.68] Jae: interesting I mean he's always been quite good on the hardware and I guess at the time people were [3001.16] Jae: saying why do you need 32-bit surely we can make software work but he pushed it and he put the base [3007.32] Jae: flight together didn't he and I don't think he had the strength in the software development side of [3012.76] Jae: it and I would have thought he'd be quite happy these days if he knew that his hardware design [3018.04] Jae: is essentially flown by most race pilots out there for what it was. Yeah, yeah I'm not sure [3025.72] Boris B: what it's like yeah maybe he doesn't want to do the he could he could even get more rich than [3033.16] Boris B: he was because his you know nays 32 was very popular and if he just was listening to the big [3038.04] Boris B: crowds he could make another board and it would be a huge success because people still fly nays 32 [3044.2] Boris B: you know even though it's getting less and less uh popular at the moment with all these f3 flight [3050.36] Boris B: controllers which are getting better and better and I think his problem stems from how he named [3056.6] Jae: his board because I think he always wanted people to say nazere it's a Japanese but people just say [3061.88] Jae: nays and maybe he's like having sleep it's nice thinking ah why did they have to change their name [3067.48] BorisB: that is every reason to hate everyone in the world [3071.88] SPEAKER_01: yeah all right guys I've got a I've got a cool time because we're almost at time um Boris I'm [3078.92] SPEAKER_01: sorry for exposing you to bradders I hope he didn't say any rude words too much he was very [3084.68] SPEAKER_01: very well behaved oh surely I think he's uh medicated himself that's good thank you for [3089.24] SPEAKER_01: joining us um if you're free sometime Boris give us a shout because I'd love to chat to you when [3094.12] SPEAKER_01: I'm a bit better sorry for being ill but it was good listening awesome show thank you for joining [3100.04] SPEAKER_01: us you're welcome any time no problem thank you and uh it was a joy and you've been listening to [3107.64] BorisB: let drone out don't forget this podcast is sponsored by radio c number one for all your [3112.76] BorisB: drone related needs pay them a visit at radio c.co.uk and use the promo code ldeo for five percent [3119.08] BorisB: off your order and free shipping on orders over 80 pounds telemetry lost