Repackaged R/C + Arduino KAP Controller



  • edited March 2016
    I've decided to join the club :)

    I have a couple of older 2009 era HK-T6A V2 controllers to work with. The RF modules look different, but I assume they communicate the same way. The sparkfun order should be shipping soon.

    Any advice on extra nobs and buttons for controls -- or are people pretty happy with the thumb joystick? I was thinking about a thumbwheel switch (For bigger jumps --> different modes, rigs, testing new code, etc.), but I guess that depends on how much memory is free. I need to read through the whole thread again. Looks fun.
  • Just a brief note to say I now have almost everything I need to start work on my Spektrum-based Arduino KAP Controller. This will control my other rigs with 360 degree panning, so it won't have a display and will have left and right buttons for panning and a tilt knob that turns through 90 degrees. I'm hoping to have it ready for KAPiCa 2016 (it will be much smaller than my 'chopped Spektrum' transmitter).
  • edited March 2016
    I hooked things up and it appears that holding the thumb wheel to one side or the other does not increment continuously, it increments in the steps when i move it and then release it, has this changed since the original description?
  • John,

    Yes that changed along the way. With the latest software, if you want to adjust the pan in larger steps, you move the joystick to the right (or left), then slide it around the circle to "point" at the heading the camera should have. The arrow-shaped pan indicator on the display will follow your thumb movements. I thought this was easier and faster than just holding the thumb stick in one place while the rig and display moved.

    Similarly, you adjust the tilt by first pulling the joystick to the "South" position, then sliding toward "East". The tilt indicator will track the position of the joystick during that movement.

    If you prefer the old way of just holding the joystick in one place while the pan or tilt adjusts, let me know. I could put that back or tell you how to restore it.

    And, by the way, I've looked for those graphics files and haven't been able to find them. It should be relatively easy, though, to reconstruct them from the C code itself. The graphics were represented in .xbm format which is basically C source code to begin with.

    Dave Wheeler
  • Another "one" hand controller !!!

    Not much information about the board except the use of PIC12f683 chip.

    Looks small and nice.

  • Hello everyone,

    my platform is completed and running, but it's possible to Modify the minimum and maximum value of the tilt? indeed I am not able to have the tilt above the horizon and not have more than the vertical.
    Thanks in advance.

    ps: I am sorry for the spelling but I use a translator.
  • Laurent,

    In the file Model.h, change this:

    #define TILT_MIN (15)
    #define TILT_MAX (2)

    To this:

    #define TILT_MIN (18) // was 15
    #define TILT_MAX (0) // was 2

    That should do it.

    Dave Wheeler
  • I removed the tab stop on the pan servo, i'm trying to find the values that limit the pan movement, I changed the PAN_MAX value but that does not have any effect. can you lead me to what i may need to do?

    I have a 12 tooth gear on my servo and a 64 tooth gear on the shaft. The servo turns almost 180 but the rig doesn't move very far, i would like to get it to pan all the way around left and right.

    Thanks John
  • John - you need to put the 64 tooth gear on the servo and the 12 tooth one on the pan axle, like this:

  • is it normal for the servos to twitch and go crazy when first turned on until the receiver and transmitter sync? it did it once and stripped a gear in my servo, lucky i had another servo.

  • It is normal to get a big jump right after they are both turned on, unfortunately. It happens to me regardless of which order I turn on the Tx and Rx sides. I don't know how to avoid it. (And I gave up on plastic-gear servos in favor of metal gear ones.)

    Once past that initial pulse, though, the controller always uses a constant, low acceleration to move the rig. This is to minimize forces on the servos and reduce unwanted rig motions.

    John, as Dave pointed out, this control system isn't designed for continuous rotation servos. You need a standard servo with gearing set up the way Dave showed.

    Also, on the subject of gear ratios, back at the beginning of this thread Dave asked about my gear ratios. I told him I had 4:1 gearing but he would be better off with 5:1. But I discovered recently my actual gear ratio was only 3:1 and now I'm increasing it to 4:1. So I hope that gear ratio you have is working well, Dave, but I may have steered you wrong on that.

    Dave Wheeler
  • Are you using micro servos? i'm looking at getting HS-82MG from servo city. i have a 48 pitch 100 tooth and a 48 pitch 20 tooth which equates to a 5 to 1 ratio. do you recommend a 4 to 1? do your servos with this set up rotate 90 degrees or a 180 degrees with the pulses sent to the receiver? i have to redo the setup, after all the pieces where put on it doesn't balance, that's alway been a pain trying to figure out how to balance things.

    sorry for all the questions.

  • edited April 2016
    Dave and John

    I found it pretty easy to tune the pan and tilt 'magic numbers' by doing simple experiments - e.g. for tilt, adjust so the display showed first horizontal and then vertical and measure the resulting angular change in the rig. So if the rig moved through 120 degrees rather than 90, I just reduced the tilt factor by 25%. And for pan, just measure the actual rig rotation when the display shows a full rotation and do the same sort of adjustment to the pan factor.

    I think it's even easier to do this now you have moved all the magic numbers into tuning.h

    I used Tower Pro MG90S metal servos for both pan and tilt - 9 grams each
  • Did you ever share how you attached the servo horn the the gear?
  • John,

    I use the metal geared micro-servos like the Hobby King Turnigy™ BMS-380MAX Micro MG Servo or Futaba S3102.

    Pan servo

    One nice thing about metal gear micro servos is they have the same output spline as full-size servos. (The spline is the pattern of ridges on the output shaft where the servo horn mounts.) Then I buy servo mount gears from servocity that mount directly on the servo.

    There are two standard spline patterns, though, Hitec and Futaba. Make sure you order the right gears depending on the servo you have. Both of the servos I just mentioned have the Futaba spline.


  • Feeling frustrated, thought i had everything working, then i get new metal gear servos and when i plug them into the rec the link light goes out with the battery setup i have, but when i plug in 4 AAA batteries the servos work and the link light works also. I guess my 6v reg is not putting out enough amps it a 6v reg with 1 amp output and it's being feed by an 11.1 1000 mah lipo battery because i need the 12 volts for video transmitter. Any buddy have any idea? would appreciate any help.

    thanks John
  • Hmm, it does sound like a power issue if it works with 4 AAA's but not with your 6V regulated supply. And servos can sink a lot of current, especially when they "twitch" like they do at startup. Is your voltage regulator adjustable? I think receivers and servos ideally use about 4.8V, not 6V. If you adjust that down, it might cause the servo to pull less power and allow the regulator to supply more current? Just guessing.

    Also, you might try moving the servo a bit by hand to make sure it isn't stuck, that would also draw a lot of power. (But you said it worked with the AAA's so that's probably not it.)

  • 4 AAA's is 6 volts, but i don't know the amperage. the 6v reg is not adjustable. polou makes a 6v reg with a 2.5 amp rating.

    the spec say 4.8 v to 6 v.

  • I had problems with not having enough power to the servo on my tilt rig. I wanted to just use a 9v battery to power everything but have had to use 4xAAA batteries for the servo.
    I was in touch with Protopic and Peter Bults (peter at KAPSHOP) about the servo not working when I had it powered from the 5v supply from the Polulu maistro board. They said that the board have 0.3A and the servo I was using could need 3A so I had to use 4 AAA batteries to power the servo.
    I also use a separate battery for the video downlink but still trying to find a non lipo one which will last long enough. I've just bought a super Duracell and a Philips ultra alkaline one to try out. Watch this space

    Fly High

  • I ordered a 6v reg from polulu with a 2.5 amp output to see that works since the reg i had only had a 1 amp output, I could use to batteries, but i want to keep the weight down.

    fingers crossed for both of us.

  • Hmmm, I run two servos (pan and tilt) and USB shutter with a mini maestro. I power everything with a USB cell phone charger/battery (2200mah I think and instant 5 volts). Still plenty of charge after a flight.

    I haven't used it a lot but I have a couple flights of a couple hundred shots each using a Canon A590. AutoKap, no video.
  • edited May 2016
    Hello all,

    It has been a couple of months since I posted progress on my version of Dave Wheeler’s Arduino TX design. When I last touched base the circuit boards were complete and I’d decided to use Pololu’s little switching DC > DC step-down voltage regulator to power the RF module more efficiently. With the circuits sorted out and built, the next step was to work on the packaging. As I pondered how to handle the bezel for the little Sharp display and the opening for the thumb joystick I wandered into the idea of 3D printing, an area in which I had zero experience. The more I read the more interesting it sounded and in late April I ordered a kit to build a 3d printer. This little side trip has been great fun with ample new material to learn and a useful outcome.

    The kit I purchased and built was the Tevo Tarantula, a metal-framed take on the Prusa i3 design. Top selling points for me were an agreeable kit price (~$250 USD) and an active, and very helpful, community on Facebook. I worked on the printer build at a leisurely pace (a week or so) and then spent more time learning the software (Marlin for firmware, Simplify3D for slicing, and Fusion 360 for 3D design). Once the printer was dialed in I set about stiffening the frame by printing replacement parts in PLA for the printer’s acrylic components. In the end this was a enjoyable and productive project.


    My completed Tevo Tarantula 3D printer.

    With the 3D printer complete I’ve now turned my attention back to the TX build project and have just completed the exercise of designing and printing a set of standoffs to position the TX components relative to one another with the goal of having everything contained in a relatively compact volume. I am using a layout that puts the display at the top of vertical volume with the thumb joystick immediately below it (as viewed from the front). The 8-cell AAA Eneloop battery pack is placed below the thumb joystick. My standoff design had to make room for:

    the Ardulino Pro Micro and its motherboard
    the thumb joystick
    the RX module harvested from a Hobby King T6A
    the Sharp display
    a momentary switch for RX binding


    My set of standoffs

    I ended up with a standoff system that involved four components – a base plane, a bridge to hold the thumb joystick over the motherboard, a bridge to support the bottom of the display above the thumb joystick circuit board, and a bridge to support the top side of the display. The standoff components are assembled using M3 machine screws. Using a 3D printer let me work out the spacing for these components and make adjustments like a cutout for the Pololu voltage regulator and standoffs for the RF module in an iterative print > test fit > revise workflow.


    Assembly in progress.

    The design required some revision to my wiring leads on the thumb joystick board and Sharp display. Assembling the components involves a careful sequence of steps to make sure each wire ends up in its proper place. It worked out in the end.


    The assembled transmitter components on the workbench

    I am on track to have the assembled transmitter components fit inside a 1.6” W x 1.25” D x 6.5” L (41mm W x 32mm D x 165mm L) volume including the battery, switches, and charging jack. My next step is to design an outer case that holds the components and fits the hand. Sounds like a job for a 3d printer!


    The assembled transmitter components in the hand.

    Curious about whether an internal placement of the TX antenna will work I did a quick range test this morning to check. I walked down the block sending shutter fire commands while my son Charlie watched the servos move at the RX end. You can see the placement of the TX antenna in this last photograph - just along the base of my thumb. The system worked for the 400 feet I was able to walk. This bodes well methinks for an internal antenna placement.
  • Very neat Cris!

    And methinks I see a Tarantula crawling (slowly) towards me. Christmas maybe?
  • Very nice indeed!

    Cris, as you're designing the outer shell, you'll want to think about the size and shape of the joystick opening. On my unit, I made this hole just large enough that the head of the thumb stick can fit through. But that gives the stick too much movement -- it can be deflected beyond the limits of the potentiometers. In practice, this means the Arduino miscalculates the direction of joystick movements. The effect isn't terrible but it's noticeable and sometimes annoying.

    If you can create a smaller opening to give less stick movement, you'll be happier with the final result. How you create an opening that's too small to fit the head through is a problem left to the reader. :-)

  • Any way to make the hole " as needed " , and then reduce it's apparent size by slipping grommets or "o" rings
    over the shaft of the thumb stick...??
    I'd love to build one of these ..... I'm trying to "pay attention ".

  • edited March 2017
    Help! missing libraries?

    I have almost installed 'Kaptx.ino' onto a ATmega 32u4 8Mhz 3.3v board from the posted github version dated 20th March 2016 . It reports Adafruit_GFX.h and Adafruit_SharpMem.h as absent. I did a cut 'n paste from other bits of github and it loads but with 'invalid library found' error messages- I guess it needs the libraries properly linked- and this is where my 'beginner level' hack hits a wall.

    What's up?


    EDIT: I'm using the wrong sketch, Dave Mitchel has put me right: I'm on the Spektrum DSM route.

    I have to say using these tools is somewhat trying: finding the right suite of libraries, drivers etc is something of a faff.
  • Bill,

    Sorry I didn't see this sooner. I usually get an email when someone posts here but not this time. That's a bit odd.

    Anyway, I'm glad Dave Mitchell has you on the right course now.

    Dave Wheeler
  • edited April 2017
    After some tweaks to the code I got my Arduino KAP controller in use with a Ricoh GR for the first time today...and what a revelation- the wind was 'soft' so I stuffed the transmitter in my pocket and hauled line, recovered some height , yanked out the transmitter, popped off a few shots before repeating the process. Having a small unit in a robust case is indeed a good thing.

    this is my 4th attempt at optimising RC control for KAP and, by golly, I think it's the last. The prospect of adding programmable autoKAP seals the deal.

    I could have made the thing even smaller but I went for the 4x AA battery version of the the Hammond 'T' case. When I began in 2009 there was a scarcity of video components now, thanks to the drones, they are common and cheap. The 'stick-on' GTeng 5.8GHz receiver does the business remarkably well.

    I offer heartfelt thanks to Dave Mitchell who has been patient with me through out the build process and put up with all manner of email queries to deal with 360 servos and the like- thank-you!

    I'd also like to offer thanks and support to Dave Wheeler who has pioneered the idea of the Arduino KAP controller.


  • edited April 2017
    Bill's remark about 'adding programmable autoKAP' refers to modifications I've made to my Arduino TX. I've added a switch that turns on AutoKAP and an 8-way DIP switch that gives similar functionality to James Gentles' ClickPanPro. As yet I haven't added the DIP switches to my TX (so the switch just selects one of the 8 tilt sequences), but the code is written. I'll modify the webpage about the TX soon.

    Here's the new TX and circuit:

    Here's the tilt sequences selected by 3 of the DIP switches:

  • I've added pages describing the AutoKAP version and the continuous panning servo version of the transmitter (and updated the main page to point to both of them).
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion