Crius GPS and I2C_GPS_NAV
Re: Crius GPS and I2C_GPS_NAV
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.
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.
Re: Crius GPS and I2C_GPS_NAV
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.

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),

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


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),
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.put this code just after void setup(){

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
-
- Posts: 5
- Joined: Sat Aug 11, 2012 5:12 am
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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

Re: Crius GPS and I2C_GPS_NAV
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)
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)
Re: Crius GPS and I2C_GPS_NAV
É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.
Re: Crius GPS and I2C_GPS_NAV
Thanks pm1!!!!
I will try tomorrow. I calibrate acc and mag, but I do not trim the acc.
I will try tomorrow. I calibrate acc and mag, but I do not trim the acc.
Re: Crius GPS and I2C_GPS_NAV
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.
thanks.
Re: Crius GPS and I2C_GPS_NAV
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..
Re: Crius GPS and I2C_GPS_NAV
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.
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.
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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.
thanks.
Re: Crius GPS and I2C_GPS_NAV
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

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
Re: Crius GPS and I2C_GPS_NAV
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

Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
É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?
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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.
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.
Re: Crius GPS and I2C_GPS_NAV
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.
Is right?
Thanks.
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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?
Re: Crius GPS and I2C_GPS_NAV
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
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
Re: Crius GPS and I2C_GPS_NAV
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()
Re: Crius GPS and I2C_GPS_NAV
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?
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

Thank you for your assistance and your guide to walk a bit more comfortable through the GPS-Jungle

regards
georg
Re: Crius GPS and I2C_GPS_NAV
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.
recently I used I2C_GPS_NAV latest from pm1.
Re: Crius GPS and I2C_GPS_NAV
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" ?
Re: Crius GPS and I2C_GPS_NAV
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.
Re: Crius GPS and I2C_GPS_NAV
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

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
Re: Crius GPS and I2C_GPS_NAV
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.
Re: Crius GPS and I2C_GPS_NAV
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

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
Re: Crius GPS and I2C_GPS_NAV
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)?
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)?
Re: Crius GPS and I2C_GPS_NAV
And what do you expect to achieve by doing so?
Re: Crius GPS and I2C_GPS_NAV
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..
-
- Posts: 178
- Joined: Fri Apr 01, 2011 10:32 pm
- Location: Czech Republic, Prague
Re: Crius GPS and I2C_GPS_NAV
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.
Roman
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.

Roman
Re: Crius GPS and I2C_GPS_NAV
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
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
Re: Crius GPS and I2C_GPS_NAV
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.
-
- Posts: 178
- Joined: Fri Apr 01, 2011 10:32 pm
- Location: Czech Republic, Prague
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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
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
-
- Posts: 178
- Joined: Fri Apr 01, 2011 10:32 pm
- Location: Czech Republic, Prague
Re: Crius GPS and I2C_GPS_NAV
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
-
- Posts: 1630
- Joined: Wed Jan 19, 2011 9:07 pm
Re: Crius GPS and I2C_GPS_NAV
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)
-
- Posts: 178
- Joined: Fri Apr 01, 2011 10:32 pm
- Location: Czech Republic, Prague
Re: Crius GPS and I2C_GPS_NAV
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
Re: Crius GPS and I2C_GPS_NAV
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
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
-
- Posts: 178
- Joined: Fri Apr 01, 2011 10:32 pm
- Location: Czech Republic, Prague
Re: Crius GPS and I2C_GPS_NAV
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
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


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
-
- Posts: 1630
- Joined: Wed Jan 19, 2011 9:07 pm
Re: Crius GPS and I2C_GPS_NAV
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
-
- Posts: 178
- Joined: Fri Apr 01, 2011 10:32 pm
- Location: Czech Republic, Prague
Re: Crius GPS and I2C_GPS_NAV
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.

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