tinyPEPPER X ESC — A sneak preview and how a oscilloscope picture makes me smile

By | October 8, 2017

Roughly one year ago I started to work on the 1S tinyPEPPER ESC. At first, I did not want to design an ESC on my own. I had just finished my first tinyFISH FCย  PCB routing and was browsing banggood for a tiny and lightweight 1S ESC. To my surprise I could not find anything suitable. They were either bulky, still running non-S BLHELI, unbelievable expensive, and not the 4in1 solution I was looking for.

I was quite upset. At that time I was about to design my ultralight 1S pepperFISH fpv quadcopter which should turn out quite nicely with only 30.4g AUW including the battery in the end. At that time, nobody had ever built something brushless that light and nobody thought of a 1S quadcopter being that agile. The hyped brushed tinyWHOOP was in the same weight region and was flying like a sack of rotten potatoes, killing those poor brushed motors every x hours of flight time. Long story short: I ended up doing an 4in1 1S ESC design as well, released it as open hardware, and got cloned without proper credits all over china. I was quite upset and decided to go another route with my 2S design that followed up some months later. Do not worry, it will become open hardware in some month as well, but in the meantime it is only sold by furiousFPV.

So whats next? Well… I got busy with a new ESC prototype. Why? Because you can’t buy what I want to do next… But more on that soon ๐Ÿ˜‰

So what does this picture show? This PCB is going to be a 4in1 ESC as well. Basically all specs have been raised quite a bit (again, more on that soon… chinese copycats, you know) while it is still a 16x16mm spaced PCB with real 20x20mm outer dimensions! You can see the partially soldered ESC prototype on the lower left connected to my trustworthy EMAX 1806 motor that was used for testing of all the previous ESC prototypes. There are test clips on the top that are the oscilloscope probes I use to observe the motor phase voltages and the pins on the left, that connect to the mess of wires, are the debugger and programming connection.

I just finished soldering 1/4th of the first prototype PCB and finished a BLHELI port. If you might be wondering what the most rewarding picture this evening looked like? It was this scope picture:

This, in combination with the brushless motor spinning up smoothly, was the moment I finally got all quirks sorted out. All three motor phases are generated as intended and the motor started up and was running smooth as silk. And the best part: Even though it was terribly late there was no magic smoke involved — yay! Time to call it a day.

I will mount and flight test a complete 4in1 ESC soon. You can also expect an all new micro frame design as well. As usual: More details on this will follow soon. Stay tuned ๐Ÿ˜‰

13 thoughts on “tinyPEPPER X ESC — A sneak preview and how a oscilloscope picture makes me smile

  1. Sam

    I’m honestly excited about this. Real 20×20 sounds awesome. I hate this 25x29mm form factor on the super_s esc. It really ruins the clean look of the stack. I went with that instead of your board because I didn’t know the furiousfpv version was 2s compatible (must’ve only seen the china clone) and I decided I would rather run an external dedicated RX than an external 5v regulator, even though the super_s 5v reg is only 500ma and can barely handle the camera on 100mw. Luckily the Frsky XM works on 2s, (3.5-10v) so it doesn’t strain the reg. Plus that FC has OSD, so I can run the lizard95 camera with osd wiring and 25-100mw switchable vtx.

    If you change the new esc motor pad layout so there’s one motor on all four sides of the board I’m gonna jump on it as soon as it comes out. The 45ยฐ mounting style makes a mess of wires when the motor connections are only on 2 sides.

    Do that for the esc, add a 5v reg to the FC, and integrate your graphical OSD to the FC and we’ll have a flawless stack! Imagine what you can do without that giant max chip in the way! F4 with integrated RX maybe hm?! You’re going to have me running my 5″ on a 16×16 FC in no time

    Reply
    1. fishpepper Post author

      The new ESC will have tabs on two sides only (top+bottom). But I have a new frame design coming up soon, this one will mount the FC 0ยฐ rotated so this makes a super clean build. Ah and it features the runcam micro.

      The new VTX/OSD 16×16 pcb has a 5V (i think it was 1A) step down for cameras. The VTX is 25mW only for now but should do for most tiny builds. It will be controllable via betaflight once I finish the software side.

      Reply
  2. Kyle Wineinger

    Your killing me with this clif hanger… I love my 2s pepperfiish, and have been wanting to take it further to a more aggressive and durable 2.5 ro 3″ build, but have been thinking i might be better just using the common 20×20 stack size for more versatility for fear of burning the 2s 4in1 because of the extra weight and therefore amps. If you get 3s or more current that could make this even more interesting tho. Also been eager to find out how your vtx osd is doing! Are you planning on making it compatible with 2s power hopefully so we can get rid of the vreg?

    Reply
    1. fishpepper Post author

      Sure, the tinyOSD will feature a 5V stepdown for convenient camera connectivity ๐Ÿ˜‰

      Reply
  3. Fernandez

    I am wondering if in the future designs it will be possible to drive the fets straight from the main cpu?
    So basically the esc code to run within betaflight, no idea if there are small cpu’s with enough pins and calculation power around to make it feasible…..But then no longer need 4 for separate esc cpu’s…..
    Also in terms of new power FET, double fet’s package 2 in one case do they excist…?

    The whole trend seems now to go smaller and lighter hardware……

    I enjoy your blogs! thanks!

    Reply
    1. fishpepper Post author

      Brushless commutation is quite timing sensitive. I don’t think one really wants to do this on the main CPU. The four additional CPUs are dirt cheap, they are less than $0.30 each. It also makes routing and PCB design easier as you have a lot of signals for driving the FETS: 2×3 control signals and 3+1 analog phase and virtual center signals.
      For the FETs: Yes, double FETs exist. They are great for low power designs as you run into trouble with heat dissipation on those small packages. I am using dual FETs on tinyPEPPER 2S and the new prototype as well. I doubt you can use dual FETs (right now) for 35A ESCs in the future. They need to get lower RDSon resistances for this to work.

      Reply
      1. Phobos

        Hmm hmm, I don’t think I’ll guess what is coming, inFINITY of possibilities ๐Ÿ™‚

        Agree to your point regarding the CPU, and that is why we have 4 separate cpus instead of one in current 4-in-1 esc designs. You need one core per esc to parallelize the signal processing and commutation.

        There is another point on this subject I’d like to discuss, and it is receiver signal processing. While your TinyFISH design is using a separate 8051 cpu (which is older than me, but enough for the job), I think incorporating the RX code into the main cpu is a good thing to do. And it was already done for FrSky D8 protocol by MIDELIC as part of betaflight 3.2 release (https://github.com/betaflight/betaflight/pull/3745). The code is almost identical to your OpenSky implementation.
        The main advantages of this approach in my opinion are:
        1. Simplified PCB with less/smaller elements – cc2500 is 2.8×2.8mm QFN20 only.
        2. SPI vs UART interfacing – slightly less latency and probably less looptime jitter as well due to faster reads.
        3. No additional code to flash to a separate cpu – easier to maintain.

        I checked the schematic, and adding it to tinyFISH would not be that hard, but maybe I’m missing something obvious, and it shouldn’t or is impossible to do. CC2500 could be connected via SPI3, which is currently unpopulated (except for NSS, but it can be substituted by any other free pin).

        What is your opinion Simon?

        PS. I’m going to buy stuff on bg using your link from now on. Thanks!

        Reply
        1. fishpepper Post author

          Thanks!
          I think using a single core for multiple motors should be doable. But this would require a chip with 4 comparators or some intelligent multiplexing code. If I just would have more time… I was always thinking of porting blheli_s to a stm32 or writing my own code for some time now. Tim constrains stopped me for now. Too bad, during the port to my new ESC I learned quite a bit on how brushless commutation works and I would really love to try this on my onw.

          tinyFISH: I have seen midelics efforts. I think he is close to get the X protocol working as well. If I will ever do a new revision of the tinyfish I might test the SPI connectivity. One thing stops me from doing this, the F3 betaflight targets are running out of flash. I think it makes no sense to do a F3 design. On the other hand I do not like the F4 to much and F7 gets even bulkier…

          Reply
          1. Von Pwnz0r

            Yes pretty please have a look into Midelics X protocol!!! It would be awesome to see you incorporate Midelic’s FrSky D8 protocol. The lesser latency is a bonus but the PA-LNA and full diversity would be an awesome addition to your FC. Actually the PA-LNA and any kind of diversity would make your board best in class.

            Regarding having the FC controlling the ESC directly, I agree that it is a complete waste of time. As I understand it the DSHOT600 signal takes 0.026 milliseconds to reach the ESC, there isn’t really any room to improve on something that for drone purposes is instantaneous.

  4. Chaotix

    Ahh, just what I was wondering about, love the prototype with the magnet wire ๐Ÿ™‚
    I’m looking forward to you releasing the 2s tinyPepper having just completed a successful build of the tinyFish.
    Your work is highly regarded, thank you.

    Reply
    1. fishpepper Post author

      The FETs are good for way more. But I doubt that the PCB will handle that much current…
      16×16 and real 20×20 outer dimensions are set ๐Ÿ™‚

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *