HobbyKing.com New Products Flash Sale
pm1's blog
Posted by pm1 | Sep 03, 2012 @ 06:57 AM | 54,439 Views
This method modifies the software on the small i2c nav board, that it configures the GPS correctly at every power on. It is done with arduino 1.01. The connection is done via FTDI. There are no pins soldered to the i2c nav board, but the connector is there (6 pins in a row).

The gps exists in 2 versions:
V1. without the ability to store settings permanently (with the onboard battery lifetime of settings is typically fom hours to some days)
V2. can store settings permanently in an onboard eeprom. The rest should be identical

remark V2: some people reporting that rx/tx if i2c may be swapped on i2c board. If you see continously increasing i2c error or garbage data from the sensors, try to swap the two wires

Recipe for V1:
1. Download this version of firmware for i2c nav board: Download
either (Try 2a. If it does not work at every power on of copter, try version 2b, look below for reason)
2a. unmodified gps
or
2b. solder a bridge between pin 13+14 of gps board (picture included in download), set GPS_SERIAL_SPEED 38400 in I2c config.h
3. use arduino 1.01 to flash i2c_nav with downloaded version (use FTDI)
4. update fc multiwii 2.1 or later with activated #define I2C_GPS and your magnetic declination in config.h of multiwii http://magnetic-declination.com -> round up to next full degree, but consider sign
5. connect everything
6. If GPS sends valid frames, LED on I2C nav board should blink 100ms on/1s off
7. Calibrate and switch on mag! Check that that copter orientation...Continue Reading
Posted by pm1 | Jul 20, 2012 @ 12:13 PM | 2,302 Views
Stm32 multwii version (based on rev 183 of baseflight):
Link
(source and hex files)

special features:
- different altitude hold
- different loop time (5ms) (cfg.looptime)

In the pipeline:
Just testing a z axis dampener with acc data. Can be adjusted with cfg.gps_pos_d.
Posted by pm1 | Jul 20, 2012 @ 12:11 PM | 4,737 Views
For those, who need a recipe for a stm32 toolchain to compile baseflight (updated instructions made by CrazyLittle)
Arm Toolchain STM32:

Install CodeSourcery ARM G++ Lite toolchain. During the installation, set the PATH variable for all users when prompted.
http://www.mentor.com/embedded-softw.../lite-edition/

Follow these instructions to install Eclipse and some Plugins (rest not neccessary)
http://www.stf12.org/developers/ODeV.html

Eclipse:
http://www.eclipse.org/downloads/
Get the one for C/C++ (For Windows user: get the win32 version, unless you know, that you have a 64 bit java version on your computer)

Import the project using "Project from SVN" from http://afrodevices.googlecode.com/svn/trunk/baseflight as a "project configured using New Project Wizard"
* C-project
* ARM Cross Target App / Empty / Sourcery G++ Lite

I went ahead and deleted the "debug" build configuration because I'm not going to be using a JTAG or doing any on-board debug or sim-debugging.

Once the project is checked out from the SVN, here's the project properties that need to be changed in order to setup the environment properly: Do a "Properties" on the linker script "stm32_flash.ld" that's in the main folder. Copy down the full file path to it in the Resource page. You'll need it for the next step. Open up the properties on the main project folder.
C/C++ Build/Settings/Target Processor
cortex-m3
...Continue Reading
Posted by pm1 | Jul 01, 2012 @ 06:30 AM | 2,427 Views
Ok, let' s start. A picture is worth a thousand words...
Name: IOI.jpg
Views: 578
Size: 149.8 KB
Description:

First video (quality not very good..):
Mini Quadcopter fun flight (2 min 18 sec)


The list of materials:
Frame: Carbon fiber tubes 10 x 1 mm, carbon fiber plates 1 mm
Motors: C1404-3000 KV 9.6g
ESC: Hobbywing Flyfun 6A
Battery: 2s500 20C
Board: IOI Multiwii
Motor distance: 14cm (5.5")
AUW: 145g
Flight time: 7 to 10 minutes

Software: https://github.com/pm1/MultiWii_pm

My changes:

- different altitude hold algorithm
- Bug fix for mag
- different low pass filter factors for gyro and acc
- 7 channels usable with standard ppm receiver (aux1=mode, aux2=d8, aux3=d12)