HobbyKing.com New Products Flash Sale
Steveis's blog
Posted by Steveis | Aug 02, 2014 @ 02:43 PM | 14,561 Views
I've update the Pro version with features that people have requested.

Pro version updates are:

a) Added board offset of -90, +90 & 180 degrees.

b) Added new self level setting to be Always On (Aux, Stick & Always)

c) Added receiver channel 8 to receiver sliders (only visible/available for CPPM and SBus).

d) Now allows you to switch between SS & PI profiles when self level is set to "stick".

e) You can now, individually, reverse the Roll, Pitch and Yaw directions by using negative stick scaling values in Profile 1. This enables people to use transmitters where you can't reverse the direction.

Donations for Merlin MS Centre

I’ve spent many hundreds of hours updating this firmware. If you would like to show your appreciation, I would be delighted if you made a donation to my favourite charity, even if it’s only 1 or $1. Please leave a message with your donation. The message needs to be left on the Paypal page under Special Instructions before clicking "Pay now".

www.merlinmscentre.org.uk

Enjoy
Posted by Steveis | Apr 11, 2014 @ 05:14 PM | 54,284 Views
If you are using the Pro firmware, please update to V1.17S2 as this has a fix for gimbal servo's jumping and also improves Outputs 7 & 8.

Thank you all for your donations. Total so far is just over 300.


Updated firmware and manual.

Both the Lite and Pro version have improved self level code to increase the angle accuracy so that your multicopter knows which way is up.

Pro version updates are:

a) Much improved self level code that more accurately calculates which way is up. This improves switching to self level after aggressive flying and will improve the Camera Gimbal operation as the accuracy of the angles is now much better. The receiver interrupts no longer screw with the Self Level calculation.

b) Fixed a bug where the Switch SS & PI flag wasn't cleared after a Factory Reset.

c) Added all 25 serial buffer bytes to debug. Only the first 16 used for a DSM satellite. All 25 are used for SBus. Note, only the first 16 bytes are used in the KK2.1.X control code. SBus channels above 16 bytes cannot be used to control the multicopter. When on the Safe screen, the servos will be centred. When in the menu, no signal is sent to the servos.

d) Servo Always On now user selectable in Misc Options 3 (Servos On Arm). If set to yes, servos will move (rather than centre) when armed and the throttle is at zero. Tricopter users will probably want to leave this as "No" so the yaw servo doesn't move when arming/disarming.


Donations for Merlin MS Centre

Ive spent many hundreds of hours updating this firmware. If you would like to show your appreciation, I would be delighted if you made a donation to my favourite charity, even if its only 1 or $1. Please leave a message with your donation. The message needs to be left on the Paypal page under Special Instructions before clicking "Pay now".

www.merlinmscentre.org.uk

Enjoy
Posted by Steveis | Apr 02, 2014 @ 02:31 PM | 32,328 Views
Attached is a fairly comprehensive instruction manual for the KK2.1 / KK2.1.5 board running V1.16S1 Pro firmware.

If you have questions about settings / features, please ask in the forums as there are lots of people there that will be able to help.

If you have suggestions for improvements to the manual, feel free to post them here.

Hope the manual helps.


Posted by Steveis | Mar 30, 2014 @ 07:09 AM | 30,803 Views
The firmware now supports the following receivers: -

Standard PPM
Combined PPM (CPPM)
DSM2 satellite (bind on power up holding down buttons 2&3)
DSMX satellite (bind on power up holding down buttons 3)
SBus

Please note, for the purest, most accurate flying experience, use a standard receiver. It has the least number of interrupts and very efficient code having minimal impact on motor/servo jitter and self level accuracy

A manual can be found here http://www.rcgroups.com/forums/showt...2#post27972843

Connecting a DSM satellite to the throttle input requires a level converter cable.

Connecting an SBus receiver to the throttle input requires an inverter cable.

HW Version 2.1.X
SW Version 1.16S1 Pro
Steveis

Changes since V1.15S1Pro for KK2.1.X

a) Bug fix that prevented Orange R100's going into bind mode (was only in V1.15S1Pro).

b) Select receiver type in Mode Settings. Options are Std, CPPM, DSM2, DSMX, SBus. Note, if you change the receiver type, you will need to power cycle the KK2.1.X
Also note that if Profile 1 and Profile 2 have different receiver types, you will need to power cycle when changing between the two.

c) SBus support tested with Orange R710 (thanks to JustPlanesChris for the receiver). Note that you will need an SBus inverter cable. SBus uses throttle input.
Futaba receivers and Orange receivers also have a different channel order (as always) so you need to set that correctly in Rx Channel Map.
It may also be necessary to map some...Continue Reading
Posted by Steveis | Mar 22, 2014 @ 10:34 AM | 32,126 Views
Changes since V1.14S1Pro for KK2.1.X

a) Added menu option called "Channel Map" in Mode Settings 2 to map KK2.1 receiver inputs using the Receiver Channel Map list.
See Note 7 below.

b) Added menu option to change Safe screen info ("Alt Safe Screen" in Misc. Settings 2).

c) Added menu option to control gimbal pitch with aux input while allowing you to switch self level on or off.
-1000 to 0 and 0 to 1000 are both full servo offset so you can control full offset with SL on or SL off.
Gimbal Control in Misc. Settings 2 is now "No", "Aux" or "6&7" where 6&7 uses Ch6&Ch7 of Satellite or CPPM.

d) Small bug fix for Safe screen pwmgen error counter.

e) Added menu option to "trim" the battery voltage reading.

f) Improved SS Gimbal Offset. Now, 50% offset is 50%. Thanks to RC911.

g) SAFE screen says ERROR in big text if there is an error.

h) End Point Limit adjustment available for servos. Range is 0 to 100%. Set min and max limits for each output. Note, this is ignored for ESCs.
I don't recommend this method of adjusting end points. It is much better to set things up mechanically.

i) Profile selection. You can select between two profiles P1 & P2. P1 or P2 is displayed at the top right of the Safe screen.
Note that everything has to be set up in each profile - motor layout, acc calibration, receiver type, everything!
It may be easier to configure Profile 1 and use the...Continue Reading
Posted by Steveis | Mar 01, 2014 @ 03:43 AM | 43,155 Views
Finally, I cracked the issue with having to mess around with P&I when changing gyro rates and lack of self level when selecting using 1000 and 2000 deg/sec gyro rates.

***** No need to change P&I or stick scaling settings when changing gyro rate *****

A number of new features are in the Pro version.
A minor fix is in the Lite version.

If you are just starting out, use the Lite version and follow KK2.0 setup instructions.

If you fly aggressive acro, you will need to use the Pro version and increase the gyro rate to 2000 deg/sec.

New features (mostly under-the-hood) in both versions:
  • Check to ensure a model is loaded
  • Almost jitter free servos on M7 & M8 (Based on RC911 code)
  • New tricopter model with servo on M7
  • Better handling of intermittent receiver signal loss to hopefully prevent flips
  • Arming test in receiver test
  • Improved battery voltage accuracy

New features in the Pro Version:
  • Lost Model Alarm option when auto disarm occurs
  • Super Simple Gimbal option
  • TX Control of Gimbal option
  • Spin motors on arm option
  • Error counter on SAFE screen
  • Board offset (-45, 0, +45 deg)
  • Optimised maths routines for some of the new features

Please refer to the readme.txt file in each distro for comprehensive information.

And most of all - ENJOY

Tornadoframes WhirlWind 600 KK2.1 v1.14S1 Pro (10 min 8 sec)

Posted by Steveis | Feb 23, 2014 @ 10:11 AM | 33,080 Views
This is standard KK2.0 V1.6 code with Board Offset selection

Under Mode Settings, you can change the orientation of the KK2.0 board.

Say you have a +Quad setup and want to change to an XQuad but can't rotate the KK board.
No problem, leave the board and motor connections as they are and select Board Offset -45.
You must also change the Motor Layout to XQuad.

Say you have an XQuad setup and want to change to a +Quad but can't rotate the KK board.
No problem, leave the board and motor connections as they are and select Board Offset +45.
You must also change the Motor Layout to +Quad.

Normal operation is with the KK pointing in the direction of flight and Board Offset 0.

Enjoy
Posted by Steveis | Jan 05, 2014 @ 06:07 AM | 61,975 Views
HW Version 2.1
SW Version 1.12S1Beginner With Spektrum (R) Satellite Support
Steveis

I realised that the KK2.1 configuration is becoming less simple for people new to the hobby so I have created this "Beginner" version which has all the bells and whistles removed. It's practically like the KK2.0 V1.6 and flies the same too.

I don't think I can improve the KK2.0 "look-a-like" any further so this will most likely be the only "Beginner" version I will produce.

If you fly aggressive acro, please update to the latest version without "Beginner" on the end of the version and crank the gyro up to 2000 deg per second.

Changes since HK V1.6 for KK2.1

Default settings are are close to KK2.0 so P&I and Stick Scale values should be close to those used on KK2.0. I've test flown both and I can't tell the difference.

Warnings:

i) Firmware will reset all settings

Critical bug(s) corrected:

i) Corrected pin assignment for Output 5 and Output 6
ii) Initialisation settings didn't get written to the MPU6050 so it was stuck on 250 deg/sec and 2g

Minor bug(s) corrected:

i) Updated KK1_6_MPU6050 to remove unused code for menu button press (thanks RC911)
ii) Updated KK1_6_MPU6050 to correct Meny code to disable OCR1A and B interrupt (thanks RC911)
iii) Changed/Corrected I2C routines so they actually work now
iV) Tidied up I2C routine for burst reading of sensor data
v) More accurate battery voltage - adjusted to read the same as my KK2.0 (...Continue Reading
Posted by Steveis | Dec 30, 2013 @ 12:05 PM | 60,875 Views
HW Version 2.1
SW Version 1.11S2 With Spektrum (R) Satellite Support
Steveis

Self level now working but you really need to run with a gyro setting of 250 or 500 if you want to use it. Any higher and it works but will probably let you flip and roll. I couldn't get it working as I wanted at 1000 and 2000 degrees per second as the numbers got too small for the 8.24 maths.

Changes since HK V1.6 for KK2.1

Default MPU6050 settings now 500 deg/sec and 4g which are close to KK2.0 so P&I and Stick Scale values should be close to those used on KK2.0

If you fly aggressive acro, you will need to increase the gyro rate to 2000 deg/sec and multiply up the P&I settings by a factor of 4.

Warnings:

i) Firmware will reset all settings
ii) P&I gains need to be changed if you change the MPU6050 setting (See Note 2 below)

Critical bug(s) corrected:

i) Corrected pin assignment for Output 5 and Output 6
ii) Initialisation settings didn't get written to the MPU6050 so it was stuck on 250 deg/sec and 2g

Minor bug(s) corrected:

i) Updated KK1_6_MPU6050 to remove unused code for menu button press (thanks RC911)
ii) Updated KK1_6_MPU6050 to correct Meny code to disable OCR1A and B interrupt (thanks RC911)
iii)Changed/Corrected I2C routines so they actually work now
iV) Tidied up I2C routine for burst reading of sensor data
v) More accurate battery voltage - adjusted to read the same as my KK2.0 (thanks HappySundays)
vi) Corrected low voltage alarm calculation
vii)Correct...Continue Reading
Posted by Steveis | Dec 24, 2013 @ 07:53 AM | 49,248 Views
After some testing by Senetor315 and rpmrpm and a lot of thinking and testing on my part, I have reverted back to a piece of original code that was in V1.6 which gives a crisper feel. P&I and SS settings are now back to 1.7S1 and 1.8S1.

Please set acc to 2g in MPU settings

HW Version 2.1
SW Version 1.10S1 With Spektrum (R) Satellite Support
Steveis

Changes sice HK V1.6 for KK2.1

Warnings:

i) Firmware will reset all settings
ii) Stick scaling and P&I gains need to be changed if you change the MPU6050 setting

Critical bug(s) corrected:

i) Corrected pin assignment for Output 5 and Output 6
ii) Initialisation settings didn't get written to the MPU6050 so it was stuck on 250 deg/sec and 2g
iii)Default MPU6050 settings now 2000 deg/sec and 8g

Minor bug(s) corrected:

i) Updated KK1_6_MPU6050 to remove unused code for menu button press (thanks RC911)
ii) Updated KK1_6_MPU6050 to correct Meny code to disable OCR1A and B interrupt (thanks RC911)
iii)Changed/Corrected I2C routines so they actually work now
iV) Tidied up I2C routine for burst reading of sensor data
v) More accurate battery voltage - adjusted to read the same as my KK2.0 (thanks HappySundays)
vi) Corrected low voltage alarm calculation

Addition(s):

i) Debug Menu (added back in but not checked for accuracy) plus some extra values displayed
ii) Version Menu
iii)Sensor Max Min Menu (records max and min gyro and acc values when armed and SL is off)
iv) MPU6050...Continue Reading
Posted by Steveis | Dec 22, 2013 @ 09:21 AM | 51,833 Views
Seriously, I'm done now........

HW Version 2.1
SW Version 1.9S3 With Spektrum (R) Satellite Support & Plain English Max Min Gyro and Acc during flight
Steveis

Warnings:

i) Firmware will reset all settings
ii) Stick scaling and P&I gains need to be changed if you change the MPU6050 setting

Minor bug(s) corrected:

i) Tidied up i2c routine for burst reading of sensor data
ii) More accurate battery voltage - adjusted again in 1.9S3
iii) Corrected low voltage alarm calculation
iv) Corrected code to get an extra 1 bit of resolution on gyro and acc
v) Input Sliders menu display now works with CPPM or Satellite receivers

Addition(s):

i) Added support for Spektrum (R) Satellite and clones (improved code)
ii) Added more debug items

Please enjoy
Posted by Steveis | Dec 21, 2013 @ 04:00 PM | 44,079 Views
I think I'm done now...................

HW Version 2.1
SW Version 1.8S1
Steveis

Warnings:

i) Firmware will reset all settings
ii) Stick scaling and P&I gains need to be changed if you change the MPU6050 setting

Critical bug(s) corrected:

i) Initialisation settings didn't get written to the MPU6050 so it was stuck on 250 deg/sec and 2g

Minor bug(s) corrected:

i) Changed/Corrected I2C routines
ii) Default MPU6050 settings now 2000 deg/sec and 8g
iii)Adjusted battery voltage value calculation

Addition(s):

Added the following menu options

i) MPU6050 Settings (view and change deg/sec, acc g and digital low pass filter)
ii) MPU6050 Temperature on SAFE screen
iii) A screen that shows you the msec value and sliders for the receiver inputs - for info, not calibrated
iv) A screen that shows you the msec value and sliders for the motor/servo outputs - for info, not calibrated
v) A screen with a bubble level for accelerometers
vi) A screen with a bubble level for gyros (could be good for dynamic balancing)

Changes in operation

i) Defaults to AUX for Self Level
ii) All mixing resets to zero when you do a factory reset so you have to select a motor layout
iii)Lowered default stick scaling and increased default P&I gains for default MPU6050 settings

If you mess the settings up, you can always perform a Factory Reset.

Enjoy
Posted by Steveis | Dec 20, 2013 @ 07:33 PM | 43,852 Views
HW Version 2.1
SW Version 1.7S1
Steveis

Firmware will reset all settings

Critical bug(s) corrected:

i) Initialisation settings didn't get written to the MPU6050 so it was stuck on 250 deg/sec and 2g

Minor bug(s) corrected:

i) Changed/Corrected I2C routines
ii) Default MPU6050 settings now 2000 deg/sec and 8g

Addition(s):

Added the following menu options

i) MPU6050 Settings (view deg/sec, acc g and digital low pass filter)

Changes in operation

i) Defaults to AUX for Self Level
ii) All mixing resets to zero when you do a factory reset so you have to select a motor layout

You will need to increase your P & I gains by a factor of 4.5

Enjoy
Posted by Steveis | Dec 18, 2013 @ 01:02 PM | 43,430 Views
HW Version 2.1
SW Version 1.6S1
Steveis

Critical bug(s) corrected:

i) Corrected pin assignment for Output 5 and Output 6

Above advised by HappySundays, confirmed and corrected by RC911 and tested by myself

Minor bug(s) corrected:

i) Updated KK1_6_MPU6050 to remove unused code for menu button press.
ii) Updated KK1_6_MPU6050 to correct Meny code to disable OCR1A and B interrupt.

Both these above were spotted by RC911

Addition(s):

Added the following menu options

a) Debug (added back in but not checked for accuracy)
b) Version
c) Sensor Max Min (records max and min gyro and acc values when armed and SL is off)

Enjoy
Posted by Steveis | Oct 19, 2013 @ 06:49 AM | 45,968 Views
!! This is not for beginners !!

Latest KK2.0 version here.

Latest KK2.1.X version here.

For use with SimonK Reversible ESC code that is currently being used for MultiWii3D project started by LittleMo.

Get used to how this firmware works/reacts, without your props on. Motors spin immediately when you arm the KK2.

Works for any craft. Allows the use of Mixer Editor.

Arming: Put throttle to minimum. Switch AUX on. Slowly raise throttle to mid point. ESCs will arm and motors start spinning immediately. Increase KK2 menu option "Minimum throttle" if the motors don't all start at the same time.

Disarming: Switch AUX off.

TX Throttle: If you can, use your TX end point setting to set the Throttle in the Receiver Test menu from -100 to 100.

Initial testing: If you can, set up a throttle curve with 50%, 63%, 75%, 87%, 100% points and test your craft with the normal motor direction, as if it wasn't 3D. Check you have the thrust expected. I had to bump my throttle stick scaling up to 130.

Remember, vibrations are bad!
Do not calibrate the ESCs.
Based on V1.2. You will lose all settings when you flash with this firmware, even if you are currently on V1.2.
Please check motor layout and prop direction.
Test without props.

Many thanks to kapteinkuk for the KK2.

More technical bits:

ESC signal from KK2 limited from 1060 to 1860 with 1460 mid point.
Mixer settings for ESC "Offset" should be set to 50%.
Servo signal from KK2 limited from 1060 to...Continue Reading
Posted by Steveis | Jun 29, 2013 @ 06:04 AM | 47,370 Views
NoLCD is a DOS program that enables you to set up you KK2 board without an LCD. It works with the standard KK2 code with reduced functionality. For enhanced usability, update the KK2 board with the specially made NoLCD software.

The soltion to a broken LCD (until HK start selling them) is as simple as possible. No cables to make up.

Requirements: -

Programming cable (the one you use to flash your board).
A PC that can run a command prompt.
A working LED on the board.
A working buzzer on the board.

Run the NOLCD program with the board connected to the programmer. The default programmer is 'usbasp' however, you can enter your programmer type at the command prompt: EG

c:\NOLCD\>NOLCD usbtiny

Don't connect the battery to the KK2 board when using this program.

Why upgrade the KK2 board firmware with the NoLCD firmware: -

- Provides a way of checking the receiver signals (Receiver Test).
- Provides a way ot checking the transmitter trims (Receiver Test).
- Enables you to see sensor values when calibration fails (Sensor Test).
- Provides audio and visual feedback of status and errors.
- You still get the full menu so it can be used with an LCD or try to navigate blindly!
- Skips some menu key presses - like asking you to press continue after a Factory Reset.

Changes are not made on the fly. You load the boards config, make changes and then write the changes back to the board. Current settings are read when you run the program but there...Continue Reading
Posted by Steveis | May 26, 2013 @ 06:05 AM | 45,600 Views
This code (based on V1.6) stores the peak values for the Gyros and Accelerometers during flight.

There is a new menu option called "Sensor Max Min". You can't get in there unless you have armed and then disarmed the KK2 - i.e. flown it! When the KK2 is not armed, the values do not get updated which allows you to pick it up without changing the flight data.

To reset the values, you need to power cycle the KK2.

I ran out of programming space so removed the camstab option. I guessed if you were checking out extreme throws and G's that you wouldn't need the camera gimbal.

I've not really studied the data sheets for the gyro and acc chip. The range you should see is 0 to 1023. I assume a value of 0 or 1023 for a gyro means you exceeded the 440 degrees per second and 0 or 1023 for an acc means you exceeded +/-3G's. But I may be wrong.

Let me know how you get on.

Enjoy

Edit: Updated version that only records the max and min values when the KK2 is Armed AND Self Level is Off. So you can switch SL on, arm, take off, switch SL off to get some readings, switch SL on and land. Disarm and check readings.
Posted by Steveis | May 25, 2013 @ 01:14 PM | 48,112 Views
I've updated my Camera Gimbal Control from Transmitter firmware with the V1.6 updates.

Be careful if you use M6 as an input. Only connect the signal wire from the receiver to avoid the BEC connected to M1 fighting with BECs on M2-M5.

Standard Gimbal Firmware

KK2_1V6_XY_RAux_PM6 - Uses Aux for Roll offset and M6 for Pitch offset. Sorry, no Hex. Self level can be always on in the menu or switched on using the sticks when you arm.

KK2_1V6_XY_CPPM_RCH6_PCH7 - Uses Aux to switch self level on and off, Channel 6 for Roll offset and Channel 7 for Pitch offset.

KK2_1V6_Gimbal_PAux_4Hex - Uses Aux for Pitch offset so you can run a Hex. Self level can be always on in the menu or switched on using the sticks when you arm.

KK2_1V6_SLAux_PM6 - Uses Aux to switch self level on and off and M6 for Pitch offset. Sorry, no Hex.

Super Simple Gimbal Firmware

KK2_1V6_SSG_SLAux_PM6 - Uses Aux to switch self level on and off and M6 for Pitch offset. Sorry, no Hex.

Enjoy
Posted by Steveis | May 24, 2013 @ 03:57 PM | 45,488 Views
Custom firmware for a broken accelerometer and wider gyro window.

Keeping you flying
Posted by Steveis | May 18, 2013 @ 05:07 AM | 48,165 Views
This is the standard V1.5 code with the following additions: -

Acro fix identified by RC911, updated with KK's recommendation.
Improved (well, I'll let you be the judge of that) Lost Model Alarm.

KK2 will now buzz continuously if: -

1. You are on the Armed or Safe screen AND
2. Throttle has been at zero for 1 minute OR
3. Throttle Signal is Invalid for 1 minute OR
4. Aux channel is approximately zero (you could use a 3 position switch for SL on, Buzzer on, SL off).

To turn the buzzer off, increase throttle or switch Aux. If you are on the Safe screen, you can push the menu button.

Lost Model Alarm does not sound the buzzer if you are in the menu options.

Feedback appreciated.

Enjoy

Edit: Added V1.6