New firmware fork aimed at fun and responsive manual flight

Firmware/software/electronics/mechanics
Post Reply
Analogy
Beginner
Posts: 19
Joined: Fri Oct 24, 2014 6:55 am

New firmware fork aimed at fun and responsive manual flight

Post by Analogy »

I've been doing a lot of hacking on the firmware on my own CF2 and I've decided to open it up in case the work I'm doing might benefit anybody else. At minimum, I've got a super stable yet extremely responsive self-leveling mode going on that I think mainline devs might be interested in looking at.

https://github.com/Solomute/soloflie
chad
Expert
Posts: 555
Joined: Sun Sep 28, 2014 12:54 am
Location: New York, USA
Contact:

Re: New firmware fork aimed at fun and responsive manual flight

Post by chad »

Hey Analogy,

I wanted to try out your tuning but I ran into a couple issues building the firmware.

First one was with the Makefile. When I ran 'make' I got:

Code: Select all

Makefile:1: *** missing separator.  Stop.
I narrowed that to the file being saved as UTF-8 with BOM. When I re-saved it as UTF-8 without the BOM it worked OK.

The second one was:

Code: Select all

  CLEAN_VERSION
  CC    list.o
lib/FreeRTOS/list.c:238:1: fatal error: opening dependency file bin/dep/list.o.d: No such file or directory
 }
 ^
compilation terminated.
make: *** [list.o] Error 1
Do you have other dependencies for this fw to build?

I'm looking forward to trying the fw out. Thanks!!
Crazyflier - my CF journal...
4x Crazyflie Nano (1.0) 10-DOF + NeoPixel Ring mod.
3x Crazyflie 2.0 + Qi Charger and LED Decks.
Raspberry Pi Ground Control.
Mac OS X Dev Environment.
Walkera Devo7e, ESky ET6I, PS3 and iOS Controllers.
Analogy
Beginner
Posts: 19
Joined: Fri Oct 24, 2014 6:55 am

Re: New firmware fork aimed at fun and responsive manual flight

Post by Analogy »

I'm doing all of my editing in MacOS, what I should have done was clone the bitcraze repo into a folder in MacOS and edited that... What I actually did was copy-paste the files from my crazyflie VM into a folder in MacOS, and a bunch of them ended up with that UTF-8 issue. I thought I got them all, and things are building fine for me, so it's strange that it's acting up for you. Perhaps try a make clean before you compile? I'm not much of a programmer and don't have much insight into the build process other than that, sorry. I might have to end up cloning the bitcraze repo again.

Shouldn't be any dependencies that don't ship with the crazyflie VM environment... I didn't add any dependencies that weren't already there apart from #including math.h so I could use fabs(). That error might just be a consequence of that UTF-8 issue flaring up again.
chad
Expert
Posts: 555
Joined: Sun Sep 28, 2014 12:54 am
Location: New York, USA
Contact:

Re: New firmware fork aimed at fun and responsive manual flight

Post by chad »

The problem is that your fork does not have the "bin/deps" directory that the Bitcraze repository has - because it's not actually a fork. Since that directory structure is unpopulated (except for READ MEs) prior to compilation, I simply copied the bin directory from my Bitcraze crazyflie-firmware clone and that allowed your repo to compile.

You might want to actually fork the Bitcraze crazyflie-firmware repository in GitHub so you can pull upstream changes when they've modified files. You can merge those into your fork and keep up-to-date while preserving the tuning changes you've been making.
Crazyflier - my CF journal...
4x Crazyflie Nano (1.0) 10-DOF + NeoPixel Ring mod.
3x Crazyflie 2.0 + Qi Charger and LED Decks.
Raspberry Pi Ground Control.
Mac OS X Dev Environment.
Walkera Devo7e, ESky ET6I, PS3 and iOS Controllers.
Analogy
Beginner
Posts: 19
Joined: Fri Oct 24, 2014 6:55 am

Re: New firmware fork aimed at fun and responsive manual flight

Post by Analogy »

All right, I'll do that on my next day off from work. I've never worked with github before so thanks for the info.
Post Reply