Crius GPS and I2C_GPS_NAV

This forum is dedicated to software development related to MultiWii.
It is not the right place to submit a setup problem.
Software download
cardboard
Posts: 183
Joined: Tue Mar 15, 2011 9:40 am

Re: Crius GPS and I2C_GPS_NAV

Post by cardboard »

MrDrone, a couple of points to be aware of

the I2C_GPS_NAV code goes onto the standalone gps arduino board.
The MTK Firmware Tool is for a specific GPS module. If you got the one from rctimer it uses a ublox chip and you can download the u-centre software from there website.
the gps shares the same com port as the programmer so remember to unplug the GPS module from the i2c gps board before trying to program it. You wont damage anything if you don't, the upload will just fail.

MrDrone
Posts: 6
Joined: Wed Aug 29, 2012 4:13 am

Re: Crius GPS and I2C_GPS_NAV

Post by MrDrone »

Thanks to cardboard regarding the MTK firmware and to pm for the I2C-NAV format information. I have posted a picture below and it looks pretty normal except the GPS is not being detected by the Nav board - it flashes once per second on, then off. My GUI shows GPS selected but the data alongside the event window is missing. Image
Image

I flashed my I2C-NAV board but I was unable to make the changes with EOSBandi's I2C_GPS_NAV.ino code modification (ver. 2.1),
put this code just after void setup(){
I would do so but the Arduino would not verify without a large list of errors below. As such I gave up on that aspect, as it does not seem necessary for basic detection.
Image

I have seen updated code references for the CN-06 GPS but I do not know if I need them, where to find them, or how to upload/flash them into the CN-06. Any advice would be appreciated.

So . . . no smoke (good;) but no GPS (not so good);. One more bit of confusion is a GPS baud setting. I see 9600 and 38400 being tossed around and I am not sure which is right and what I need to do to get my MultiWii SE to see satellites.

"Mr Drone is deeply appreciative of any and all who see some aspect of themselves flailing in their recent past through the lens of his present experiences" - Baran

Yellowboy63
Posts: 5
Joined: Sat Aug 11, 2012 5:12 am

Re: Crius GPS and I2C_GPS_NAV

Post by Yellowboy63 »

I make a cable to send the txt file included in the ic2- nav folder. http://diydrones.com/profiles/blogs/tutorial-programming-your?xg_source=activity Also you may need to reboot twice to get GPS going. Follow this link you should be up and running. http://www.rcgroups.com/forums/showthread.php?t=1724694

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

MrDrone wrote:I have seen updated code references for the CN-06 GPS but I do not know if I need them, where to find them, or how to upload/flash them into the CN-06. Any advice would be appreciated.

Perhaps have a look here:
http://www.rcgroups.com/forums/showthre ... 694&page=2

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

pm1 wrote:
MrDrone wrote:I have seen updated code references for the CN-06 GPS but I do not know if I need them, where to find them, or how to upload/flash them into the CN-06. Any advice would be appreciated.

Perhaps have a look here:
http://www.rcgroups.com/forums/showthread.php?t=1724694
There should be anything you need at one place ;)

Ébeo
Posts: 5
Joined: Sat Sep 08, 2012 2:44 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Ébeo »

Hello everyone and pm1.
I use the board CRIUS SE V1.0 with GPS-NAV and GPS uBlox.
I soldered pins.
I uploaded the new firmware for the card NAV.
I configured correctly the file gps.ino (for pids) and the parameters related to the config.h gps even hit the magnetic declination (and others) in config.h.
I did the calibration mag.
The led in the NAV blinks 3x indicating positioning 3D and the software MultiWiiConf show location and from about 10 satellites.
But anyway, I tried with several PIDs and does not hold position. Tried with pids standards and was increasing and then decreasing, gps hold woks inverse, on acc only is better.
Tried with mag mag on and then off and the result are the same.
The baro is disable.
It simply does not work.

See the video http://www.youtube.com/watch?v=Pwa5E0w-gzM
In this video I try 3 times, when I say "GPS on" i move the switch and wait, when it goes away I disable "GPS OFF".

Please someone help me.

Thank you very much (sorry by English)

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

Ébeo wrote:Tried with pids standards and was increasing and then decreasing, gps hold woks inverse, on acc only is better.
Tried with mag mag on and then off and the result are the same.


When the gui shows position and satellites, the gps setup should be ok.
But:

ACC+MAG has to be switched on for succesful operation.
1. Calibrate ACC.
2. Trim ACC with stick *not* subtrims to godd level hold
3. calibrate mag.
4. switch on acc and mag.
5. The copter should now fly only with little drift
6. Now you may try PosHold.

Ébeo
Posts: 5
Joined: Sat Sep 08, 2012 2:44 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Ébeo »

Thanks pm1!!!!

I will try tomorrow. I calibrate acc and mag, but I do not trim the acc.

rizky_p
Posts: 14
Joined: Thu Sep 06, 2012 3:57 pm

Re: Crius GPS and I2C_GPS_NAV

Post by rizky_p »

Does anyone knows why on mine "distance to home" is always shows 0? while "direction to home" is fine. Do i need to enable anything?

thanks.

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

rizky_p wrote:Does anyone knows why on mine "distance to home" is always shows 0? while "direction to home" is fine. Do i need to enable anything?

thanks.


If copter is not armed, home position is deleted. It is set, when you arm. You can influence this with #define DONT_RESET_HOME_AT_ARM -> When you use this define, home is only set to a new point when you make a gyro calibration (with the sticks), but this also means, that you have to set it manually at every power on..

Ébeo
Posts: 5
Joined: Sat Sep 08, 2012 2:44 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Ébeo »

Hello!
Without any wind at all, I got the best PH.

Please some more questions:
In light wind, because he's doing great curves at high speed?
When I set the LCD PIDs they go to the plate NAV? Or I'll have to turn off / on FC?
The option NAV_SPEED_MAX influences the PH? Or just have the NAV_BANK_MAX for PH?
In the case of wind (weak) have to increase the PID I?
What is the "Velocity" that shows on the LCD?
How can further filter the GPS data? Increasing the value in the NAV GPS_FILTER_VECTOR_LENGTH config.h?

I did several tests (with other PIDs) and always makes curves increasing with every lap, like snail.

I disable then NAV_CONTROLS_HEADING in .h

Video with 2 tests: http://www.youtube.com/watch?v=39k7jjEZ ... e=youtu.be

Thanks for helping.

cardboard
Posts: 183
Joined: Tue Mar 15, 2011 9:40 am

Re: Crius GPS and I2C_GPS_NAV

Post by cardboard »

I had the same issues, I have currently got a P only loops (I and D are at 0) and on a dead clam day it holds pretty well. It doesn't recover well from high speed straight into PH but is ok. If there is any wind it goes crazy and starts overshooting, i need to tune in a tiny bit of I and D at this stage but weather around my part of the world hasn't helped much

rizky_p
Posts: 14
Joined: Thu Sep 06, 2012 3:57 pm

Re: Crius GPS and I2C_GPS_NAV

Post by rizky_p »

When using i2C_gps_nav board like the one on rctimers does the PID tuning using android app work? or it is only effected by the PID on the config file of the nav board therefore i have to compile/upload everytimes changes to the PID made?

thanks.

User avatar
polo_fly2
Posts: 34
Joined: Fri Aug 05, 2011 1:12 pm
Location: Munich - Bavaria

Re: Crius GPS and I2C_GPS_NAV

Post by polo_fly2 »

Hello :-)

I have just received one CRIUS-CN 06 - V2.O GPS Board and the I2C navModule from RCtimer.
Can I follow pm1`s receipe for a GPS-I2C setup ( http://www.rcgroups.com/forums/showthread.php?t=1724694),
or is this only suitable for the CN 06 - V1.0 boards and there is another way to go with V2.0 boards ?

Does somebody know ?
Thank you
Georg

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

polo_fly2 wrote:Hello :-)

I have just received one CRIUS-CN 06 - V2.O GPS Board and the I2C navModule from RCtimer.
Can I follow pm1`s receipe for a GPS-I2C setup ( http://www.rcgroups.com/forums/showthread.php?t=1724694),
or is this only suitable for the CN 06 - V1.0 boards and there is another way to go with V2.0 boards ?

Does somebody know ?
Thank you
Georg


1. The intended way is to configure the board with u-center, save configuration to eeprom and connect to i2c board. Then you are limited to NMEA protocol
2. You can configure i2c-nav to ublox, flash i2c, configure gps to ublox
3. You can flash my code to i2c nav and connect gps without further configuration

Any way should work. If course I like 3. , I need the improvements and bug fixes ;)

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

rizky_p wrote:When using i2C_gps_nav board like the one on rctimers does the PID tuning using android app work? or it is only effected by the PID on the config file of the nav board therefore i have to compile/upload everytimes changes to the PID made?

thanks.


Every pid change is transferred to the i2c board. see my fix in multiwii, that you get the configured pids after power on

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

Ébeo wrote:Hello!
I did several tests (with other PIDs) and always makes curves increasing with every lap, like snail.

Sounds like mag needs calibration...
Which software version you run on the i2c nav board?

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

pm1 wrote:
rizky_p wrote:When using i2C_gps_nav board like the one on rctimers does the PID tuning using android app work? or it is only effected by the PID on the config file of the nav board therefore i have to compile/upload everytimes changes to the PID made?

thanks.


Every pid change is transferred to the i2c board, I configure always with android.. see my fix in multiwii, that you get the configured pids after power on

Ébeo
Posts: 5
Joined: Sat Sep 08, 2012 2:44 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Ébeo »

Yes! Thanks again, but I dont resolved.

My board is Crius Se v1.0 (with HMC5883L mag, the FC has L883 2124)
I use #define CRIUS_SE

See the video for better explanation http://www.youtube.com/watch?v=LrdjngsDkUU

The axis yaw and roll are swaped.

But I change the config.h MAG_ORIENTATION nothing happens, continue the same.

If I change the def.h
#if defined(CRIUS_SE)
#define ITG3200
#define BMA180
#define HMC5883
#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] = -Z; magADC[PITCH] = Y; magADC[YAW] = X;}
#endif

Works in right side (values) but the compass on the left dont work ok.

I calibrated mag always.

How i correctly swap the roll and yaw?

The mag HMC5883 and HMC5883L are the same?


Thanks ok for you helping.

Ébeo
Posts: 5
Joined: Sat Sep 08, 2012 2:44 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Ébeo »

Humm... I am looking the code for understanding how works, the value of 3 axis (roll, pitch, yaw) is used only for calc the heading?

Is right?

Thanks.

User avatar
polo_fly2
Posts: 34
Joined: Fri Aug 05, 2011 1:12 pm
Location: Munich - Bavaria

Re: Crius GPS and I2C_GPS_NAV

Post by polo_fly2 »

pm1 wrote:
polo_fly2 wrote:Hello :-)


1. The intended way is to configure the board with u-center, save configuration to eeprom and connect to i2c board. Then you are limited to NMEA protocol
2. You can configure i2c-nav to ublox, flash i2c, configure gps to ublox
3. You can flash my code to i2c nav and connect gps without further configuration

Any way should work. If course I like 3. , I need the improvements and bug fixes ;)





Hello pm1,

thank you for your clear reply :-)

I went the way nr. 3 , and got the Ublox/navboard really fast to work and to fix. The only problem before flashing was that my FTDI cable I had to connect in strange way to the navboard (GND was on BLK ).

Then I connected the Nav-Board with GPS attached to one Nanowii I2c Bus, connected to Battery and the GUI showed the GPS working and sending the Position codes etc. :-) :-)

BUT, now I have i2c Errors. I think this is a hardware problem. The Nanowii I2C bus runs on 3.3V level. I have connected the Naviboard also to 3.3V from Nanowii, possibly this is wrong ?


Cannot find any info on that. Do you know more about I2C voltage levels on CN06/Navboard ?


Thank you a lot

Georg

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

The power supply for the nav board normally is 5v. I don't know, if it does harm, when you pu 5v to the board. How much i2c errors do you have? Are they continously increasing?

User avatar
polo_fly2
Posts: 34
Joined: Fri Aug 05, 2011 1:12 pm
Location: Munich - Bavaria

Re: Crius GPS and I2C_GPS_NAV

Post by polo_fly2 »

Now I have connected the Ublox-I2c Navboard solo (without Magneto) on 3.3V again . The i2c error is constant staying at 136. I repeated it with same result.
The Navboard operates at 3.3V and is getting the Satelites too. Maybe I should go on with this I2c error ? What do you think ?

thank you
Georg

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

polo_fly2 wrote:Now I have connected the Ublox-I2c Navboard solo (without Magneto) on 3.3V again . The i2c error is constant staying at 136. I repeated it with same result.
The Navboard operates at 3.3V and is getting the Satelites too. Maybe I should go on with this I2c error ? What do you think ?

thank you
Georg

If it's staying constant, it might be, because the gps board initializes late... The this should be no problem. If you want to try, insert a delay(1000) in Multiwii code at the beginning of funtion setup()

User avatar
polo_fly2
Posts: 34
Joined: Fri Aug 05, 2011 1:12 pm
Location: Munich - Bavaria

Re: Crius GPS and I2C_GPS_NAV

Post by polo_fly2 »

pm1 wrote:The power supply for the nav board normally is 5v. I don't know, if it does harm, when you pu 5v to the board. How much i2c errors do you have? Are they continously increasing?

nanowii - crius I2C Navbord / Ublox V2 - HMC 5843 - Pm1 recipe nr3
nanowii - crius I2C Navbord / Ublox V2 - HMC 5843 - Pm1 recipe nr3

Hi pm1,

just to report an another try. Now the navoard was powered by 5V. The I2C error was the same (standing 136), but together with the HMC 5843 (3.3V) connected parallel
to the nanowii i2C bus I had 0 errors at start, and about 9 errors after 10 minutes connected (not armed). I think this is fine for now. Unfortunatly I cannot connect the baro at the same time. The actual sketch is a little bit too big for the nanowii :cry: But I hope the atitude hold team will find a way to reduce their code a bit.

Thank you for your assistance and your guide to walk a bit more comfortable through the GPS-Jungle :) I´ll report about flying later.

regards
georg

Imen
Posts: 20
Joined: Thu Sep 27, 2012 5:11 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Imen »

Hi,,, is there any issue about copter gone up when RTH nav, some time my X quad gone crazy if tilt angle or speed to high on RTH mode.
recently I used I2C_GPS_NAV latest from pm1.

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

Imen wrote:Hi,,, is there any issue about copter gone up when RTH nav, some time my X quad gone crazy if tilt angle or speed to high on RTH mode.
recently I used I2C_GPS_NAV latest from pm1.

Nothing known... The speed should be limited to 6m/s, the max bank angle to 30 degrees. But what means "gone crazy" ?

Imen
Posts: 20
Joined: Thu Sep 27, 2012 5:11 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Imen »

pm1 wrote:
Imen wrote:Hi,,, is there any issue about copter gone up when RTH nav, some time my X quad gone crazy if tilt angle or speed to high on RTH mode.
recently I used I2C_GPS_NAV latest from pm1.

Nothing known... The speed should be limited to 6m/s, the max bank angle to 30 degrees. But what means "gone crazy" ?


hi pm1 thanks for your concerns, I mean my quad suddenly increase its speed and altitude while on RTH. I didn't know why, but this happens sometimes.
I used ALT_HOLD when RTH.

User avatar
polo_fly2
Posts: 34
Joined: Fri Aug 05, 2011 1:12 pm
Location: Munich - Bavaria

Re: Crius GPS and I2C_GPS_NAV

Post by polo_fly2 »

pm1 wrote:
polo_fly2 wrote:Now I have connected the Ublox-I2c Navboard solo (without Magneto) on 3.3V again . The i2c error is constant staying at 136. I repeated it with same result.
The Navboard operates at 3.3V and is getting the Satelites too. Maybe I should go on with this I2c error ? What do you think ?

thank you
Georg

If it's staying constant, it might be, because the gps board initializes late... The this should be no problem. If you want to try, insert a delay(1000) in Multiwii code at the beginning of funtion setup()



Hello again,

you are right, the i2c errors were generating just after connecting to the battery. I have inserted a dalay of 1000 and now the errors came down halfway. But that´s not a problem at all.
All in all the setup is working fine, thank you very much for sharing your instructions :P . At first fresh start the GPS module needs about 1,5 minutes to find the needed 5 sattelites ( Munich) . At the next battery change, the 3D fix happens within seconds. Pausing overnigh,t the 1,5 minute procedure must be done again, but this can´t be a problem.

For me to do now, is a more accurate PID setup for POS -Hold . I was flying before only in acro modeso I´m not very familiar with the level mode. My level setup is possibly somewhat to soft but I´m comfortable with. The tri flies just very fine, and levels perfect. ( but It does not click into level very fast, should it level faster to have a better PosHold behavior ? )


My question : is the PosHold PID adjustment affected somehow by the Level PID setup too.


My copter is a tri, 50cm arms, 9x4,5 Gemfan, 1000KV Rc-timer, simonk reflashed HK-SS 25-30HW - ESCs, Nanowii FC (MPU6050) with separate Mag HMC 5843, BMP 085, Rc-timer GPS module V2 through I2C Navboard. Weight about 950gr. with bat. I´m using Multiwii dev1143.

thank you
georg

pm1
Posts: 136
Joined: Sun Jan 22, 2012 7:26 pm

Re: Crius GPS and I2C_GPS_NAV

Post by pm1 »

polo_fly2 wrote:My question : is the PosHold PID adjustment affected somehow by the Level PID setup too.


I don´t think, that it has much influence, maybe if the I term of level is very high. The copter is nearly level when small corrections due to PH are happening. So P and D corrections from level are very small. I have a rock stable poshold nearly without visible movement short term, unless there are wind gusts. The hold position changes slowly up to about 1 m within some minutes due to GPS precision. But as I said in my instruction, this works perfectly since I limited the correction and made D term of PH/RTH to 0.

User avatar
polo_fly2
Posts: 34
Joined: Fri Aug 05, 2011 1:12 pm
Location: Munich - Bavaria

Re: Crius GPS and I2C_GPS_NAV

Post by polo_fly2 »

its fine now :-)

But first I had to re-tune my PIDs for pitch and roll . At the end I went down with I + D by about 40 %. (still comfortable now in acro mode for me, but much better

for the GPS features)

Now I am using the GPS-PIDs published in pm1 recipe, and the PosHold works just fine . Yesterday tested (no wind- 10kmh) and every try was a pleasure. GPS HOLD + GPS HOME

with and without BARO alt hold did what they should do. ( on shared MWii r1143) Many, many thanks to EOSBandy, Pm1 and others for their great work, and making this GPS features usable.


It´s really good to know, that loosing the orientation can be managed with one switch - click :-)

Georg

i3dm
Posts: 57
Joined: Tue Oct 01, 2013 4:48 pm

Re: Crius GPS and I2C_GPS_NAV

Post by i3dm »

Hello guys,

did anyone try to connect eh Ublox Neo6M I2C output (yes it has one already!) directly to the board's I2C inout (without the TTL->I2C converter board)?

timecop
Posts: 1880
Joined: Fri Sep 02, 2011 4:48 pm

Re: Crius GPS and I2C_GPS_NAV

Post by timecop »

And what do you expect to achieve by doing so?

i3dm
Posts: 57
Joined: Tue Oct 01, 2013 4:48 pm

Re: Crius GPS and I2C_GPS_NAV

Post by i3dm »

timecop wrote:And what do you expect to achieve by doing so?


Simple - im hoping to get the GPS working without the GPS-I2C-NAV board.
save weight, save complexity, save wiring mess, save cost etc..

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: Crius GPS and I2C_GPS_NAV

Post by rbirdie001 »

Hi,
I noticed your idea and have some comments which may be useful:

1) I wouldn't try to connect 3.3V and 5V logic directly - it's too risky and it's so simple to interface it. I have proven solution consisting just two SMD FETs soldered directly at the pins and it works PERFECTLY. It's based on well known bidirectional LLC solution (e.g. like here https://www.sparkfun.com/products/8745) but when you ensure that on both sides of I2C you have connected pullup resistors to respective logic HIGH level (which usually are), you just connect DRAIN to 5V I2C line, SOURCE to 3.3V I2C line and GATE to stabilized +3.3V - the same for both SDA and SCL lines. Transistors are any kind of FET which opens with 3V on the GATE, they are soldered between PCB pins and outgoing wires and secured with a drop of hot glue. If you need more info about this, just google or ask me.

2) I'm not a programmer but from my knowledge I suppose that direct connection of UBLOX module over I2C won't work until someone will write correcponding driver into MWI code - for sure inside UBLOX NEO6 are different registers than in eosbandi's I2C NAV module. Can you write it? Will you do it?

3) Anyway in last MWI dev. versions after 2.2 is broken communication with I2C NAV module so until someone (probably eosbandi himself) will update I2C NAV module software, it wil be impossible to use this kind connection with newer versions.

In every case I'm interested in your idea. :D
Roman

i3dm
Posts: 57
Joined: Tue Oct 01, 2013 4:48 pm

Re: Crius GPS and I2C_GPS_NAV

Post by i3dm »

Roman, thanks for your reply.
im afraid i dont have the programming knowledge to get this to work, i was just curious why people use the TTL output converted to I2C when an I2C output is available.
perhaps its a driver issue indeed

User avatar
shikra
Posts: 783
Joined: Wed Mar 30, 2011 7:58 pm

Re: Crius GPS and I2C_GPS_NAV

Post by shikra »

is this right? I did a quick poshold and RTH on mine with one of the latest devs and it worked for me. Just using default settings.

rbirdie001 wrote:
3) Anyway in last MWI dev. versions after 2.2 is broken communication with I2C NAV module so until someone (probably eosbandi himself) will update I2C NAV module software, it wil be impossible to use this kind connection with newer versions.


rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: Crius GPS and I2C_GPS_NAV

Post by rbirdie001 »

shikra wrote:is this right? I did a quick poshold and RTH on mine with one of the latest devs and it worked for me. Just using default settings.

rbirdie001 wrote:
3) Anyway in last MWI dev. versions after 2.2 is broken communication with I2C NAV module so until someone (probably eosbandi himself) will update I2C NAV module software, it wil be impossible to use this kind connection with newer versions.


Hi,
do I understand right, that you use some 328 (Promini) based board with I2C_GPS_NAV_v2_2 connected via I2C and you don't have neither I2C errors nor "getting frozen" FC when you write settings from GUI to EEPROM?
I have both - on the same hardware which works perfect with MWI 2.2.
I have all boards the same (Crius SE boards) so I can't confirm whether the problem is general or specific for me. ;)
More info here: viewtopic.php?f=8&t=4077&start=60#p41872
Thanks for any additional info.
Roman

User avatar
shikra
Posts: 783
Joined: Wed Mar 30, 2011 7:58 pm

Re: Crius GPS and I2C_GPS_NAV

Post by shikra »

Hi Roman,
yes 328p + I2C board
running r1570

maybe I2C errors - I didnt notice. or look!
Not getting frozen FC on write for sure. I wrote a few times getting servo directions and PIDS etc correct.
WIll try the I2C errors in next couple of days

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: Crius GPS and I2C_GPS_NAV

Post by rbirdie001 »

shikra wrote:Hi Roman,
yes 328p + I2C board
running r1570

maybe I2C errors - I didnt notice. or look!
Not getting frozen FC on write for sure. I wrote a few times getting servo directions and PIDS etc correct.
WIll try the I2C errors in next couple of days

Hi shikra,
I'm using r1573 (I use only "packed" versions, I'm afraid to go to shared) so this can be difference. But Alex also wrote that he can't reproduce it... :?:
If you won't have freeze at write even with r1573, I'll have to continue discovering if it isn't related to some specific option in my config.h (because I2C NAV module has all options on defaults).
Description of my problem and my config.h is here:
viewtopic.php?f=8&t=4077&start=60#p41872
You can try reproduce it with my config and opposite - if you can post your config.h I'll test it on my HW.
I hope to find it because I like some new things on 2.3 but with this errors I don't dare to use it.
Roman

Alexinparis
Posts: 1630
Joined: Wed Jan 19, 2011 9:07 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Alexinparis »

rbirdie001 wrote:
shikra wrote:Hi Roman,
yes 328p + I2C board
running r1570

maybe I2C errors - I didnt notice. or look!
Not getting frozen FC on write for sure. I wrote a few times getting servo directions and PIDS etc correct.
WIll try the I2C errors in next couple of days

Hi shikra,
I'm using r1573 (I use only "packed" versions, I'm afraid to go to shared) so this can be difference. But Alex also wrote that he can't reproduce it... :?:
If you won't have freeze at write even with r1573, I'll have to continue discovering if it isn't related to some specific option in my config.h (because I2C NAV module has all options on defaults).
Description of my problem and my config.h is here:
viewtopic.php?f=8&t=4077&start=60#p41872
You can try reproduce it with my config and opposite - if you can post your config.h I'll test it on my HW.
I hope to find it because I like some new things on 2.3 but with this errors I don't dare to use it.
Roman


could you try to activate internal pullups ? (#define INTERNAL_I2C_PULLUPS)

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: Crius GPS and I2C_GPS_NAV

Post by rbirdie001 »

Alexinparis wrote:could you try to activate internal pullups ? (#define INTERNAL_I2C_PULLUPS)

Hi Alex,
I tested it and with pullups active there is no change: 3 I2C errors and when writing to EEPROM - reboot.
When I have more time I'll try different optins like Quad or different board.
Thanks for effort!
Roman

Pat1300
Posts: 12
Joined: Fri Aug 03, 2012 11:31 am
Location: Wavre - BELGIUM

Re: Crius GPS and I2C_GPS_NAV

Post by Pat1300 »

Hi,

I also have Crius SE, I2C_GPS_NAV and have 3 I2C errors.
No problem ( no reboot) when writing to EEPROM.

I currently don't yet use MW 2.3, but 2.2.1.1555

Idea: I suspect that the I2C_GPS_NAV takes more time to boot : not yet ready and so refuses the first 3 I2C command that Crius SE send.

FYI : I also actiavted SONAR type PINGPONG on I2C_GPS_NAV board.

Patrick

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: Crius GPS and I2C_GPS_NAV

Post by rbirdie001 »

Hi,
I did more discovering about my I2C GPS reboot problem in r1573 and I found the dependecy:
Reboot when writing to EEPROM happens with TRI and with HEX motor config (only with I2C GPS selected and connected) but doesn't happen for QUADX and QUADP configs :!: :?: (This is why most of you didn't see it...)
I didn't test other motor configurations. Problem is exactly the same in r1555.
Additionally I noticed that with HEX config there was wrong reading of baro (which is OK on TRI) but it could be also some inconsistency in the config - I kept whole config unchanged except of the motor configuration in the beginning. Pullups setting doesn't have any effect. Three I2C errors are always there.
I'm compiling with Arduino IDE 1.0.5., using CRIUS SE board (328p, ITG3205,BMA180, BMP085, HMC5883) and I2C_GPS_NAV_v2_2 in Arduino promini.
Does anyone have any idea? (Alex, I can't say I know more now :( )
Can someone try to reproduce fault?
Thanks!
Roman

Alexinparis
Posts: 1630
Joined: Wed Jan 19, 2011 9:07 pm

Re: Crius GPS and I2C_GPS_NAV

Post by Alexinparis »

rbirdie001 wrote:Hi,
I did more discovering about my I2C GPS reboot problem in r1573 and I found the dependecy:
Reboot when writing to EEPROM happens with TRI and with HEX motor config (only with I2C GPS selected and connected) but doesn't happen for QUADX and QUADP configs :!: :?: (This is why most of you didn't see it...)
I didn't test other motor configurations. Problem is exactly the same in r1555.
Additionally I noticed that with HEX config there was wrong reading of baro (which is OK on TRI) but it could be also some inconsistency in the config - I kept whole config unchanged except of the motor configuration in the beginning. Pullups setting doesn't have any effect. Three I2C errors are always there.
I'm compiling with Arduino IDE 1.0.5., using CRIUS SE board (328p, ITG3205,BMA180, BMP085, HMC5883) and I2C_GPS_NAV_v2_2 in Arduino promini.
Does anyone have any idea? (Alex, I can't say I know more now :( )
Can someone try to reproduce fault?
Thanks!
Roman


Hi,
I managed to reproduce the problem with your config.h
I think the problem comes from too much functionality simultaneously.
If I remove: #define BUZZER or #define RCAUXPIN12 it works ok.
I suspect a limitation of RAM memory

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: Crius GPS and I2C_GPS_NAV

Post by rbirdie001 »

Alexinparis wrote:Hi,
I managed to reproduce the problem with your config.h
I think the problem comes from too much functionality simultaneously.
If I remove: #define BUZZER or #define RCAUXPIN12 it works ok.
I suspect a limitation of RAM memory

Hi Alex,
I think that you are right. In meantime I tried to reproduce the problem on Crius Lite board (only MPU6050) and there the reboot problem didn't appear at all even with GPS. (Only strange was that I have on that board from the beginning much more I2C errors (200-300) but after complete boot the number of errors is stable.)
Then I tested (on the Crius SE with all sensors active + I2C GPS) removing option by option and found that removing any single fuctionality removes the reboot problem and adding one more functionality (I tested adding SUM PPM) crashes software permanently. From this I think that overflow of RAM looks very likely. :o
If final 2.3 won't be even more RAM hungry than r1573, I hope I'll be able to use it with disabled RSSI reading (I'll measure it directly from OSD) but complexity of software obviously reached the limit of 328p CPU.
Thank you for your help!
Roman

Post Reply