Search found 478 matches

by Sebbi
Fri Mar 22, 2013 1:02 am
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

Ok, updated the branch (m) to use a class with static members. That is basically equivalent to the what's currently used and static members are being optimized away by the compiler when not used ... ... but it's not elegant at all. Enough experimenting. Just thought it would be a good idea to have a...
by Sebbi
Thu Mar 21, 2013 11:51 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

Probably not, they used c++ code (libraries folder) before that switch
by Sebbi
Thu Mar 21, 2013 11:39 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

Regarding the size issue, I think I know what is happening here. When using the .cpp/.c/.h approach the compiler wont/may not know which (member-) functions are unused when generating the .o file. Apparently the linker used isn't smart enough to figure that out and thus more bytes are used. Just tes...
by Sebbi
Thu Mar 21, 2013 11:07 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

Because class->method(blabla) should be the same as function(blabla) except that no compiler complains when you fail to implement function(blabla) correctly.
by Sebbi
Thu Mar 21, 2013 4:33 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

it is not ... anyway, I had some time and made a small HAL implementation that abstracts all the I2C stuff. It only works for quadx/nanowii configuration, because I was too lazy to replace all the calls to i2c_functions. Compiled size increases (Leonardo) from 18792 bytes to 19230 bytes when using t...
by Sebbi
Thu Mar 21, 2013 2:45 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

uha ... ran into a rather big problem ... Arduino really requires all the files to be in the same directory. The only alternative is to use a libraries folder in the sketch folder. Should be ok for an experiment, but can get ugly very quickly ;-)
by Sebbi
Thu Mar 21, 2013 2:14 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

copterrichie wrote:If there is a code size reduction, this maybe a dream come true. ;)


Ideally there should be no difference. It's just an effort to make code more modular so it can be ported more easily (and to implement simulation stuff, that's my motivation).
by Sebbi
Thu Mar 21, 2013 2:07 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Re: Implementing a Hardware Abstraction Layer (HAL)?

Compilers are pretty good these days. There is no harm in replacing those i2c_init() i2_stop() i2c_write() etc functions with equivalent methods from a C++ class. I am willing to test that assumption ;-)

Replace the class and everything can run a totally different hardware.
by Sebbi
Thu Mar 21, 2013 1:41 pm
Forum: Software development
Topic: Implementing a Hardware Abstraction Layer (HAL)?
Replies: 35
Views: 9698

Implementing a Hardware Abstraction Layer (HAL)?

It's more an idea, but I thought I post it here, because it is more a software thing than a feature. Alex announced that the code should be split into .c/.h files and I am thinking that it would be interesting if some stuff moved to C++ code (like the GPS code and Arduino code in general). By using ...
by Sebbi
Tue Mar 19, 2013 1:50 pm
Forum: Software development
Topic: Multiwii 2.2 hangs when using FrSKY serialsum receiver
Replies: 26
Views: 10745

Re: Multiwii 2.2 hangs when using FrSKY serialsum receiver

Hmm ... I always thought this was because my NanoWii boards isn't providing enough power to the receiver. When I connect it to a battery instead of USB only it works (maybe because the receiver is powered before the board boots up?), but when USB (to the NanoWii board) is the only power source, it h...
by Sebbi
Sun Mar 17, 2013 8:53 pm
Forum: General discussions
Topic: pcDuino
Replies: 3
Views: 1375

Re: pcDuino

The problem here is that they ported some of the libraries to make it run Arduino code, BUT MultiWii is far from being only Arduino code and will probably not run on there without heavy modification.
by Sebbi
Sun Mar 17, 2013 3:26 pm
Forum: Pictures & Videos
Topic: naze32 FPV flights
Replies: 5
Views: 3327

Re: naze32 FPV flights

Wow!

What kind of video tx/rx are you using? Flying with goggles?
by Sebbi
Sun Mar 17, 2013 2:24 am
Forum: Software development
Topic: Need help with MSP_WP
Replies: 5
Views: 1865

Re: Need help with MSP_WP

Well it has some kind of waypoint system. If you manage to have a GUI connection all the time you can feed it locations it has to fly to and order it around. There is just no capability for mission planning (fly to several waypoints in a row, do stuff there, etc).
by Sebbi
Sat Mar 16, 2013 10:17 pm
Forum: Software development
Topic: Need help with MSP_WP
Replies: 5
Views: 1865

Re: Need help with MSP_WP

There are no waypoints in MultiWii yet. You can set what would be the home "waypoint" and a loiter/hold waypoint where the copter will wait for further commands (with I2C GPS it's only possible to set the current location as hold while serial GPS drones allow the coordinates to be set via ...
by Sebbi
Sat Mar 16, 2013 5:58 pm
Forum: Ideas
Topic: Airplane mode RTH
Replies: 824
Views: 330173

Re: Airplane mode RTH

I am using an I2C GPS and there seems to be enough space left on the 32u4 (Leonardo) to do something. With serial GPS it barely fits ... I know :/
by Sebbi
Sat Mar 16, 2013 1:12 pm
Forum: Ideas
Topic: Airplane mode RTH
Replies: 824
Views: 330173

Re: Airplane mode RTH

Oh boy, the sun is shining, but I have other things to do ... WANT to finally try this ;-)

P.S.: I know MultiWii has no support for air speed sensors, but can/will the gps speed be used to influence throttle? Maybe a stall condition could also be detected automatically if the throttle is too low?
by Sebbi
Sat Mar 16, 2013 1:00 pm
Forum: Software development
Topic: MultiConf Port to Android TabletWifi
Replies: 71
Views: 22496

Re: MultiConf Port to Android

2560 x 1600 ...
by Sebbi
Sat Mar 16, 2013 1:53 am
Forum: Software development
Topic: MultiConf Port to Android TabletWifi
Replies: 71
Views: 22496

Re: MultiConf Port to Android

Just had to post a Nexus 10 screenshot ... it's small, but looks complete and sliders seem to work ;-)

Screenshot Nexus 10
Screenshot Nexus 10
by Sebbi
Tue Mar 12, 2013 11:04 pm
Forum: Software development
Topic: MultiConf Port to Android TabletWifi
Replies: 71
Views: 22496

Re: MultiConf Port to Andriod

It only support Bluetooth and I am unable to install it from Google Play. Unsupported device or because of your region? Well ... there is always compiling the source for yourself. No more difficult than porting the GUI code Regarding bluetooth, what kind of Android device do you have and what is th...
by Sebbi
Tue Mar 12, 2013 10:10 pm
Forum: Software development
Topic: MultiConf Port to Android TabletWifi
Replies: 71
Views: 22496

Re: MultiConf Port to Andriod

Are you sure this is a good thing? The GUI code is horrible. Better support a native Android project that is also open source https://github.com/eziosoft/MultiWii_EZ_GUI ... just saying ;-)
by Sebbi
Tue Mar 12, 2013 10:07 pm
Forum: Ideas
Topic: Airplane mode RTH
Replies: 824
Views: 330173

Re: Airplane mode RTH

The computer survived... http://youtu.be/tgVza2NYfb4 Nice work! From the video it doesn't look like the plane is able to circle above the home point yet. It's just passing through, decending, returning and on second home-pass-through it disarms. Right? May I also suggest that it would be nice if we...
by Sebbi
Tue Mar 12, 2013 9:54 pm
Forum: Ideas
Topic: HOTT Telemetry integration
Replies: 63
Views: 36310

Re: HOTT Telemetry integration

I guess one needs a RX with HOTT module. Or is there another way to test if the transmission works? E.g. for FrSky there is a simple external monitor you can attach to the module. Enables you to receive telemetry without a fancy RX.
by Sebbi
Tue Mar 12, 2013 4:04 pm
Forum: Software development
Topic: MultiWii roadmap for 2.3
Replies: 62
Views: 21809

Re: MultiWii roadmap for 2.3

I believe if not mistaken, this is how MegaPirate is doing it. In other to compile MegaPirate, you need to download the IDE with Libraries. And AeroQuad https://code.google.com/p/aeroquad/source/browse/#svn%2Ftrunk%2FAeroQuad%2FLibraries AeroQuad doesn't use c++ in it's libraries ... it's basically...
by Sebbi
Tue Mar 12, 2013 12:38 am
Forum: Software development
Topic: MultiWii roadmap for 2.3
Replies: 62
Views: 21809

Re: MultiWii roadmap for 2.3

Regarding the .c and .h split. Wouldn't it be nice to have all the hardware related stuff done in a library sub folder with clean C++ code? I know I am proposing the impossible, but it is a normal Arduino thing to have and use libraries for hardware functions and reduce the normal code to just the b...
by Sebbi
Mon Mar 11, 2013 11:51 pm
Forum: Software development
Topic: MultiWii roadmap for 2.3
Replies: 62
Views: 21809

Re: MultiWii roadmap for 2.3

install VS2012, install Visual Micro and VisualSVN, open VS, set where your arduinio ide is installed, open->Arduino project.... and there you are. I understood from the MS homepage that only Visual Express or the trail version (for 3 months) are free. The homepage directs to some local dealers off...
by Sebbi
Mon Mar 11, 2013 11:31 pm
Forum: Ideas
Topic: Airplane mode RTH
Replies: 824
Views: 330173

Re: Airplane mode RTH

You seem to use a Leonardo (32u4) Arduino, correct? From the documentation (m) A6 - A11 correspond to digital pins 4,6,8,9,10 and 12 which are on PORTB and PORTD (see m). A working, but slower way to switch on/off Arduino pins is by using the Arduino functions. So the code would become: #define STAB...
by Sebbi
Mon Mar 11, 2013 9:43 pm
Forum: Ideas
Topic: A super acccurate MultiWii version?
Replies: 28
Views: 11737

Re: A super acccurate MultiWii version?

Invensense released some new code, but I think DMP integration is not the way to go since it will still be a black box. And as you might have seen from the repository, I haven't done anything since the changes to the baro code (which are now in 2.2). However, I am still interested ;-)
by Sebbi
Mon Mar 11, 2013 4:15 pm
Forum: Ideas
Topic: HOTT Telemetry integration
Replies: 63
Views: 36310

Re: HOTT Telemetry integration

Hi there, is there any cheap way to test HOTT telemetry with hardware? I mean, what would I need to have/buy to test if what I do works? Or is there someone willing to test for me if I come up with updated code (I am currently trying to better integrate FrSky into MultiWii, so why not do both teleme...
by Sebbi
Mon Mar 11, 2013 2:34 am
Forum: Software development
Topic: MultiWii roadmap for 2.3
Replies: 62
Views: 21809

Re: MultiWii roadmap for 2.3

Generic telemetry functions to send data to different receivers (FrSky, HoTT, Telnet or data logger, like suggested by EOSBandi) would be nice to have on such a roadmap when code is already being rearranged.
by Sebbi
Fri Mar 08, 2013 12:40 am
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

Same here btw ... the GUI does crash half the time (not responding) when disconnecting. Windows 7 64bit using the 32bit version of the GUI. Killing the Java process lets me reconnect and while the process is still alive the com port is blocked for other applications. RXTX bug?
by Sebbi
Fri Mar 08, 2013 12:36 am
Forum: Software development
Topic: Problem reverse rotors (solved)
Replies: 5
Views: 1632

Re: Problem reverse rotors

Isn't that usually a hardware problem? If the motors are spinning in the wrong direction (see diagrams on MultiWii homepage), switch two of the three lines going to your motors, and they should turn in the opposite direction.
by Sebbi
Thu Mar 07, 2013 4:22 pm
Forum: Software development
Topic: UART Radio project
Replies: 112
Views: 51000

Re: UART Radio project

iPhones need a Jailbreak to connect to SPP devices without Apples authentication chip ...
by Sebbi
Thu Mar 07, 2013 3:08 am
Forum: Ideas
Topic: Airplane mode RTH
Replies: 824
Views: 330173

Re: Airplane mode RTH

Hi Patrik, thanks for the correction, now RC read is OK! Is there any reason why this your work isn't merged in the project? (I noticed that otherwise you have in Multiwii many pieces of the code ) I also hope this can be part of the normal code soon and the zip file trading stops. Maybe in the dev...
by Sebbi
Thu Mar 07, 2013 2:50 am
Forum: Software development
Topic: Raspberry+MultiWii
Replies: 10
Views: 4038

Re: Raspberry+MultiWii

Strange drone you are building ... so there is a MultiWii board with sensors flying the thing and a raspberrypi and an Android device onboard? What are you trying to accomplish? For your task: you wrote that you want to control the angle of your drone. I recommend that you use the serial protocol wi...
by Sebbi
Sat Mar 02, 2013 9:47 pm
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

I made a diff from the 15.7.2012 release-2.1 commit. Addtitional changes I could identify: + new file Alarms.ino, probably with new stuff in there that wasn't in Buzzer.ino or LED.ino (both gone) + GPS.ino: MTK support, GPS Lead Filter, Ublox support + IMU.ino: default ACC LPF factor reduced from 10...
by Sebbi
Fri Mar 01, 2013 4:19 pm
Forum: Ideas
Topic: wishlist for v2.3
Replies: 104
Views: 43681

Re: wishlist for v2.3

Protocols/telemetry seem to be a big thing on the wishlist. Maybe it should be programmed in a way so MultiWii allows different protocols and telemetry options to be compiled in. MSP or Mavlink or LCD-Terminal-thingy or CLI for bidirectional communication. HoTT and FrSky (or maybe even MSP over FrSk...
by Sebbi
Wed Feb 27, 2013 6:32 pm
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

I tested around and ACC_ORIENTATION( ((rawADC[0]<<8) | rawADC[1])>>3 , ((rawADC[2]<<8) | rawADC[3])>>3 , ((rawADC[4]<<8) | rawADC[5])>>3 ); looks like the correct way to do it. It works since ACC_ORIENTATION takes an int16_t argument so the bitshifting <<8 works and the 2-complements fit naturally i...
by Sebbi
Wed Feb 27, 2013 12:44 pm
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

Is it about the casts or about replacing the '>>3' with '/8'? Anyone to confirm this fix? I would like to copy this and other tidbits into the dev tree. Would not the same have to be applied for the gyro? rawADC is uint8_t; accADC from the ACC_ORIENTATION macro is int16_t. I do not understand why e...
by Sebbi
Tue Feb 26, 2013 6:53 pm
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

So ... the shifting is the cause of this error? Because it is an unsigned value that is being shifted and the µC doesn't care for the 2-compliment (i.e. signed) format then? If so, this error was really introduced with r1343 and other "small optimisations" in that update should be tested i...
by Sebbi
Tue Feb 26, 2013 6:45 pm
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

m states that Gyro values are also 2-compliment ... (page 32 of 47). Which is expected, since it is also a signed value like the acc-values btw: ">>3" wasn't in the code before ... the /8 should be enough to fix the signed/unsigned issue (but shifting should be the same as dividing for 2-c...
by Sebbi
Tue Feb 26, 2013 6:01 pm
Forum: Software development
Topic: Release 2.2 is coming
Replies: 167
Views: 57870

Re: Release 2.2 is coming

Whether it is 2-compliment or not doesn't matter in this case. Why? Because there is a bias calculated as the zero-value and subtracted from every acc measurement. The original problem (pitch moves when roll is greater than x degrees) comes from the atan functions calculating the actual degrees whic...
by Sebbi
Sun Feb 24, 2013 2:06 am
Forum: Software development
Topic: MultiWii EZ-GUI
Replies: 1434
Views: 675829

Re: MultiWii EZ-GUI

Offset could come from the really strong magnets in the motors which the phone is not calibrated for? Or do both (phone & copter) show the correct heading, but the copter wont match it exactly (like in the video)?
by Sebbi
Sun Feb 24, 2013 1:57 am
Forum: Software development
Topic: UART Radio project
Replies: 112
Views: 51000

Re: UART Radio project

What ranges are we talking about here? OpenLRS seems to use frequencies between 400 and 460 MHz. I don't know about other countries, but those frequencies are very limited in Germany (10 mW?!). You are not supposed to constantly fill those bands with data as it is a shared medium (babyphones, thermo...
by Sebbi
Sat Feb 23, 2013 1:23 am
Forum: Software development
Topic: MultiWii EZ-GUI
Replies: 1434
Views: 675829

Re: MultiWii EZ-GUI

Alexinparis wrote:MAG sensor is mandatory for GPS navigation
but MAG activation is not mandatory for GPS navigation


GPS navigation for planes _should_ be possible without a mag, because they are always moving and GPS can provide the direction they are moving towards. In 2.3 then ;-)
by Sebbi
Fri Feb 22, 2013 10:49 pm
Forum: Software development
Topic: MultiWii EZ-GUI
Replies: 1434
Views: 675829

Re: MultiWii EZ-GUI

ezio, you can have that feature active for everyone with a compatible phone, but still have the app working on others phones too. However, it is not exactly easy to enable usb support for all kind of devices. There are a few libraries, but if those 433mhz modules use something different ... well ......
by Sebbi
Fri Feb 22, 2013 10:45 pm
Forum: Software development
Topic: Release more often?
Replies: 17
Views: 4852

Re: Release more often?

copterrichie wrote:+1 to what Deet Stated. Make a plan and stick to it.


I'll go and +1 that too. An outline of features similar to the wishlist thread, but a lot shorter would be a good thing ... also a proper bugtracker. This thread will probably get very confusing, very quickly ;-)
by Sebbi
Thu Jan 31, 2013 10:02 pm
Forum: Software development
Topic: GY-80 mag heading flip while rolling
Replies: 13
Views: 7377

Re: GY-80 mag heading flip while rolling

That's a bug caused by the way orientation is calculated heading = _atan2( EstG.V.X * EstM.V.Z - EstG.V.Z * EstM.V.X , EstG.V.Z * EstM.V.Y - EstG.V.Y * EstM.V.Z ); A tilt compensated heading would be calculated similar to this Xh = magADC[0] * cos(Pitch) + magADC[2] * sin(Pitch) Yh = magADC[0] * sin...
by Sebbi
Thu Jan 31, 2013 3:07 pm
Forum: Pictures & Videos
Topic: MultiWii on an Airplane (Easy Star II)
Replies: 24
Views: 11506

Re: MultiWii on an Airplane (Easy Star II)

I used (and still use) the standard PID settings on my Easy Star 2. Don't know if there are better setups, but the plane is very forgiving and stable by itself ... so MultiWii has to do very little to keep it stable in the air ;-)
by Sebbi
Thu Jan 31, 2013 3:04 pm
Forum: Software development
Topic: shrink memory footprint for 32u4 - so much bigger than 328p
Replies: 31
Views: 8963

Re: shrink memory footprint for 32u4 - so much bigger than 3

I think you are on to something ... an empty program for the 328 P is 466 bytes in size ... for the Leonardo ist 4256 bytes. That has to be the additional code that is needed for USB communication (including Mouse/Keyboard HID support). Maybe it is possible to deactivate this? Then we wouldn't have ...
by Sebbi
Thu Jan 31, 2013 12:16 am
Forum: Software development
Topic: shrink memory footprint for 32u4 - so much bigger than 328p
Replies: 31
Views: 8963

Re: shrink memory footprint for 32u4 - so much bigger than 3

I can confirm this. With my airplaine config (MPU6050 + I2CGPS) I get:

- ProMini (328P): 16.646 bytes
- Mega2560: 19.650 bytes
- Leonardo (32u4): 21.124 bytes