EN RU CN
I2C ERRORS
  • I setup dozes of gimbals and always used IMU cables of around 80 cms. I never had one single I2C error. Always used ferrites so everything was always errors free. Today however I setup another gimbal did everything exactly as I did before and strngely had loas of I2C errors. Changed cables and it was the same. Then I disconnected the cable and used a 45cm one and worked great. I thought it could be the length but as soon as I approached the cable to the carbon side boom I started having errors...when I kept the cable away from the side boom no more errors again. I wonder why this is happening when I always did exactly the same with other gimbals? Help anyone?

    Thanks
  • Could be broken controller, but more likely the frame is not exactly the same after all, motor leaking voltage to the frame, frames not similar grounded etc.

    If you shield the data cables (connect shield to GND only from one end), the problem will likely go away, and that might help other wise too, for me it did.
  • Sorry garug...but what do you mean connecting shield to ground? The IMU cable has 4 cables and no shield...and after swapping the controller and IMU exact same symptoms
  • I mean making a shielded cable. add shield to the two data lines (separate shield for each) and connect shields to GND from one end. I used the shield from a WLAN extension cable. Also it would be good to twist the power cables.

    I did this first, but finally build the hole cable of the WLAN extension cable for data lines, just removed the plastic shield of it (it made it flexible). I soldered the cables to the sensor and used the original connector on other end. Works great and is flexible enough for a big gimbal.
  • Ah ok...thank you very much for your idea. I will keep you posted...
  • Hi Garug...solved the problem...Thank you
  • You are welcome.

    The I2C is originally designed to be used on short distances "inside the box" now we are using it a bit differently, but luckily shielding seems to help.
  • Hi garug...another problem. I am having I2C errors but when I disconnect the roll axis motors they stop. Ok I thought the problem would be the motor cable but if I connect the motor to the tilt axis just to try no I2C errors...could this be the board?
  • Is this with a shielded I2C cable?

    But anyway it sounds strange that connecting the same motor from roll to tilt would remove the I2C errors. When everything is connected, is the gimbal still somehow working?

    There is normally a capacitor for each axis (just next to the motor connector), could be that the roll axis capacitor is faulty or loose, or something else. If you can easily try a different board, that would be the easiest way to narrow the error.

    Would be useful to measure the I2C data signals with oscilloscope, to see how the signals get distorted.

    One thing you could still try to eliminate the electrical noise that could distort the I2C signals is to ad ferrite rings to the motor wires. But the motor wires couple of rounds through the ferrite rings, near the board.

    One additional thing, the source of the error could be also external, electrical wiring on the house, lights etc. would be good to try in a different location also.
  • Hi garug...all the wires have ferrites. I set ferrites on all cables motors and IMU. That is something I never forget to do. The gimbal works ok but of course I2C errors have to be fixes. Even the interference I experience with the IMU cable it´s gone when the roll motor is switched off or motor changed to a different output (like roll). I will swap boards today and willl check.
  • I had one time put 2 ferrite rings on my imu cable close to the board on a 45cm wire, the imu wire going from the yaw board to the sensor, not the imu cable between the main board and yawboard.Most of the time it was fixed by one ferrite ring.( well its not a ring they sell over here but a magnet like a tube and u have to tight the magnet around the cable) . So when i put 2 of these tubes after eachother its a lenght of about 6 cm thats shielded. Also what i always do but dont now if this helps is cover al the wires, imu and motor wires whit black gaffer tape, this way it looks cleaner when i sell the gimbal, maybe also contibute to a little bit of shielding.
    Funny thing is i never had to put a magnet arount the motor cables close to the board. One time the yaw but never roll and pitch. Always was a problem with imu cable. Also never used longer then 45cm because the manufacturers prescripted it like this and dont want to risk a clients gets into trouble after a while.
  • Hi vandepoel. I use always 80 cms cable and that is not a problem. All my gimbals have it and never had one problem. The ferrites can be inside the booms so you can hide them :-)
    If you try removing the ferrites most of the times you will never get I2C erros but to be safe I keep them. My problem now is strange so I will try with another board.

    Thank you
  • hi kikojiu,

    how did you solve this issue?

    I think I have the same problem on the roll axis. After a lot of headache and trying different things I now think the problem is with the connection from the extension board to the main board. But I haven't solved it yet.

    The GUI doesn't show any I2C error, or only very few (3-5). But in Realtime Data you can see how there's spikes on Gyro ROLL axis, with the motor connected it jerks up a bit, but the spikes are there without having any motor connected. And it seemed to be better without the extension board, although the roll motor is connected to the main board.
    And if I change the IMU orientation the spikes are on a different axis. It seems to be the axis that isn't specified as top or right in the GUI. For me it's on X axis and Roll. But if I change the IMU orientation it might be on Y and Pitch.

    The problem comes and goes. Sometimes it's not there at all and then it's back and the gimbal isn't usable. I've had it before and it went away and I worked with the gimbal for a few days with great results and all of a sudden the problem is back.

    I have not yet tried to shield the imu cables, because I just found this post. Any help would be great.

    Thank you
  • From what you are describing it looks like PID problem. Perhaps P too high or D too low... My problem was a motor which was not right...Just replaced it problem gone
  • Battery voltage affects the operation too, normally if PID and Power values are ok, it should not affect greatly, but if they are tuned just to the edge with full battery, maybe battery voltage will affect. (full LiPo has 4.2 V per cell but after a while only 3.7 V.)

    But this is more related to PID than I2C errors. Battery voltage should not affect I2C errors.



  • I had a broken IMU (provided only gyro data, and one component, maybe resistor, clearly broken on the board) and have to send it back to Flyduino, and as this will take time :-( , I took a IMU that was used for data logger.

    This IMU looks almost the same than the broken one (and it is also from Flyduino) but it does not have connector and it is missing one small IC component. First it appeared to work fine until all the wires where routed back. Plenty of I2C errors with the standard cable. I tried shielding the data cables as this had worked well on the other, bigger gimbal. It did not work at all.

    Then I tried twisting the red and blue wires and black and green wires and at the end those 2 together, as result a very nice and flexible cable and it works, no I2C errors. (well the cables are now also routed differently.)

    So it seems that different things work with different gimbals and IMUs and there is difference in the IMUs. And cable routing affects too.
  • thank you for your replies. this is interesting.

    It wasn't a PID problem. I added a second ferrit core to both IMU cables and improved the wiring and the spikes in the gyro are gone. It must have been the connection from the main board to the extension board, because I didn't get I2C Errors in the GUI.

    We still have the issue when connecting the receiver. We will try to shield the cables properly and clean up the wiring as good as possible.

    how do you route your I2C cable?
  • I have shortened the internal I2C (between the boards) cable as shot as possible and IMU cable is separated from any other cables, it can cross them but not go long (several centimetres) parallel to any of the other cables. My gimbal is currently for Canon 5D and with GB85 motors. I use no ferrits, but the IMU cable is shielded.
  • ah interesting. We will try to shield the cables today. thank you for your help!
  • We did try to make shielded cables without ferrits. And the problem was back. So after having tried everything we ordered a new board. ARMBGC 3.5. It works perfectly. Seemed to be almost to easy :)

    I guess we haven't been very lucky, because we this was the second time we had to replace the board.

    But it's great now and very impressive what can be done with it. We did a flight on the copter with a 5D and a 50mm. Incredible!

    thank you for your help!
  • Forgot to leave the solution for this...After I changed boards I kept having I2C errors. Unplugged all the motors and tried one by one. Only one had the errors. Had changed boards and IMU with no success...I changed the motor. It worked. It was one of the motors which was not ok....
  • I had problem with 12C errors and I figure that the body IMU was attached on same carbon part where was attached roll motor. Motor was inducted some current on carbon (I measured 0,1-0,5 V between minus and screw with was IMU attached !!!) which was passed thru negative contact on second IMU board! After isolated second IMU, 12C errors gone! I had 12C errors only when gimbal was attached on battery, not when was attached on PC with USB without battery.