Currently Browsing: multirotor

BlueSkyRc.com Micro Quad Build

This is a build log for the BlueSkyRC.com Micro Quad v2:

James’ Micro Quad:

 

I plan to use the HobbyKing MultiWii 328P flight controller with a spektrum satellite receiver.

Parts list:

BlueSkyRc.com:

Hobbyking.com:

 


JR/Spektrum Satellite and HK MultiWii 328P FC

This is a brief guide for how to get your JR/Spektrum Satellite working with the HobbyKing MultiWii 328P Flight Controller.  This would not have been possible without help from Danal Estes and his website at http://www.desquared.com/instructions.html.

  1. Download MultiWii dev_r1177
  2. Open the sketch in Arduino 1.001
  3. Select ‘Arduino Pro or Pro Mini (5V, 16 MHz) w/ ATmega328 for the ‘Board’ type
  4. Select ‘Arduino as ISP’ for the ‘Programmer’ type
  5. Select your correct ‘Serial Port’
  6. Edit config.h per one of the following options:
  7. Option 1 (my way): I used the following definitions (I have a JR X9503 w/ 2048-bit resolution): UPDATE: I am now using:
    #define I2C_SPEED 400000L
    #define ITG3200
    #define HMC5883
    #define BMA180 
    #define BMP085 
    #define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = -X; accADC[PITCH] = -Y; accADC[YAW] = Z;} 
    #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
    #define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = X; magADC[PITCH] = Y; magADC[YAW] = Z;}
    #undef INTERNAL_I2C_PULLUPS
    #define SPEKTRUM 2048
    #define SPEK_SERIAL_PORT 0
    // this is my old settings
    //#define QUADX
    //#define Bobs_10DOF_BMP_V1 // BobsQuads 10DOF V1 with ITG3200, BMA180, HMC5883L & BMP180 - BMP180 is software compatible with BMP085
    //#define SPEKTRUM 2048
    //#define SPEK_SERIAL_PORT 0
  8. Option 2 (hobbyking recommendation):
    a. Choose the copter configuration
    b. Reverse the yaw sense if needed
    c. Use: #define I2C_SPEED 400000L
    d. Use: #define INTERNAL_I2C_PULLUPS
    e. Use: #define RCAUXPIN8 or #define RCAUXPIN12 if you want to use AUX2 for mode selection in addition to AUX1
    f. Use: #define FREEIMUv035_BMP
    g. Use: #define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = -Y;magADC[PITCH] = X; magADC[YAW] = Z;} note this has to be entered manually, not already there but commented out…else compass heading is off 90deg
    h. Everything else is left as is…
  9. File menu –> Upload (make certain jumper is set to USB mode)
  10. Board is now ready to use.  (switch jumper back to SAT mode)

 

UPDATE: I am now using these settings:

#define I2C_SPEED 400000L
#define ITG3200
#define HMC5883
#define BMA180 
#define BMP085 
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = -X; accADC[PITCH] = -Y; accADC[YAW] = Z;} 
#define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] = Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
#define MAG_ORIENTATION(X, Y, Z) {magADC[ROLL] = X; magADC[PITCH] = Y; magADC[YAW] = Z;}
#undef INTERNAL_I2C_PULLUPS

Other reference material:



Minimal wiring for non-PWM receivers in multirotors

Image Credit by http://www.kkmulticopter.kr/

 


Uploading new sketch for ATMega2560 using SparkFun AVR Pocket Programmer

I spent 20+ hours trying to upload a new sketch onto a ATMega 2560 based flight controller (Spider board – MWC Mega 2560 on the X250 MultiRotor Quadcopter) using the built-in USB port. I believe it’s a Rev 3 2560 as well, given that it says “16U” on the chip itself. I was able to communicate with the board using the Serial USB drive so that the MultiWii software (2.0 at the time) could communicate with the board; I was able to read and write settings, but I could not upgrade to MultiWii 2.1 nor upload a new bootloader.

To solve this problem I purchased a SparkFun Pocket Programmer and thought it would be the magic cure-all. In the end it was, but I learned a couple things along the way. There is no need to install libusb. There is no need to install WinAVR. It’s most easily accomplished using Windows XP/Vista/7 32-bit.

So, the formula:

  1. SparkFun Pocket Programmer Driver
  2. Windows 7 32-bit
  3. Connect the Pocket Programmer to a USB port
  4. Let windows fail the installation
  5. Right-click “Computer” and select “Manage”, then open “Device Manager”
  6. Right-click on the AVR device with a yellow exclamation point and select “Update Drivers”
  7. Manually select the ‘pocket programmer’ from the unzipped driver folder
  8. Windows should install the device, Windows 7 may complain about an unsigned driver but you can proceed anyways
  9. All should be well with the driver at this point, no exclamation marks and it should be properly running
  10. Open the Arduino IDE 1.0
  11. Select “Arduino Mega 2560 or Mega ADK” from the board type menu
  12. Select “USBtinyISP” from the programmer type menu
  13. Open you sketch
  14. Select “Upload Using Programmer”
  15. Done!
Here’s how I connected my Pocket Programmer to the MWC 2560 board ISP header:

450-ish Quadrotor for FPV/AP

4x SunnySky 2212 KV980 Brushless Motor (19.75/ea)

1x Spidex FPV Frame (89)

4x SimonK (flashed) 30A ESCs (12.49/ea)

1x Crius MultiWii AIO Flight Controller (62.99)

1x Crius MultiWII GPS Add-on (24.99)

2x XT60 plugs (3.19)

2x 10×4.5 right hand rotation prop (GREEN) (2.90)

2x 10×4.5 left hand rotation prop (GREEN) (2.90)

2x 10×4.5 right hand rotation prop (BLACK) (2.90)

2x 10×4.5 left hand rotation prop (BLACK) (2.90)

1x 3s lipo low voltage alarm (2.03)

1x Servo leads (10/pack) (4)

 


Powered by WordPress | Designed by Elegant Themes