f5soh

  • *****
  • 4007
    • LibrePilot
Re: Controlling CC3D using Raspberry Pi 3
« Reply #15 on: August 26, 2017, 02:04:00 pm »
Again : Do you select the serial port (because you enabled VCP) to be used in GCS to connect the CC3D ?

Re: Controlling CC3D using Raspberry Pi 3
« Reply #16 on: August 26, 2017, 06:06:51 pm »
There is what appears to me to be a bug in CC3D.  I can't take set up simple ComBridge to FlexiPort.  It tries to boot 3 times and then boots up with a default.  Possibly a stack size problem.  CC3D is low on RAM.  I recall that the RAM settings got tweaked to fix something and it may have broken this?

Quote
I have to erase and upgrade firmware again.

When you configure the USB connection to be something besides GCS telemetry connection it can seem that you are stuck there and cannot set it back the way it was.

With no external power or USB connected to FC (CC3D) go to Firmware page and press Rescue.  Then plug in USB.  After a few seconds you will have a couple options that can help you:
- Erase Settings will set settings back without re-flashing firmware
- Safe Boot will boot up with default settings.  Use this and set the USB connection back to GCS telemetry or make whatever other changes you want.

f5soh

  • *****
  • 4007
    • LibrePilot
Re: Controlling CC3D using Raspberry Pi 3
« Reply #17 on: August 27, 2017, 01:09:59 pm »
Quote
There is what appears to me to be a bug in CC3D.  I can't take set up simple ComBridge to FlexiPort.

Sorry, this is not a bug.
You simply try to run Combridge that need ~1.64Kb of memory while there is 1.37Kb left.
Remove the Telemetry from MainPort and Combridge will run fine in Flexiport.
When you configure Combridge in MainPort in fact you remove the default Telemetry and all is ok.

Quote
Then i connect my cc3d back to my computer via usb port, in GCS there is always no RX data so I have to earase and upgrade firmware again..
Back to topic.
After the board is configured with VCP and rebooted/reconnected to the USB port, the GCS still trying to connect to the device using HID because the option "Automatically connect a compatible USB device" option is checked. That's the default behavior.


So at this point the board is connected using HID but telemetry goes to serial VCP.
GCS send requests (one Tx bar), but no response:


You may need to disconnect HID using the "Disconnect" button, this take a few seconds because GCS is waiting a timeout.

And finally connect the serial device you configured with Telemetry over VCP:
- Select/Choose the FC's serial device like "Serial:/dev/ttyACM0" (linux) or "Serial:COM##" under Windows.
- Click the Connect button

Now you are retrieving the Telemetry over VCP as expected and Hardware page is fine.


The "Automatically connect a compatible USB device" option can be disabled to avoid HID disconnect timeout but next time you do a Upgrade&Erase you still need to connect the board manually.

sallyc

  • *
  • 34
Re: Controlling CC3D using Raspberry Pi 3
« Reply #18 on: August 28, 2017, 02:17:11 pm »
Thank you:)
I fully understand now;)
« Last Edit: August 28, 2017, 10:27:18 pm by f5soh »

sallyc

  • *
  • 34
Re: Controlling CC3D using Raspberry Pi 3
« Reply #19 on: August 28, 2017, 05:34:34 pm »
But there is still ERROR:root:CRC ERROR rasing, Here I am using the code from https://bitbucket.org/alessiomorale/librepilot, and the branch amorale/lp_python_porting.
I saw your other answer from https://forum.librepilot.org/index.php?topic=3287.0, then tried what you said and post my question there. :)

f5soh

  • *****
  • 4007
    • LibrePilot
Re: Controlling CC3D using Raspberry Pi 3
« Reply #20 on: August 28, 2017, 10:30:30 pm »
I fully understand now;)

Thanks, that's why i asked for serial connection since 3 posts :)

amorale/lp_python_porting is old stuff, you should use the next branch where the last python progress is merged and 'more' tested.