Hello GoPro Karma Pilot!
Join our Go Pro Karma community today!
Sign up

Karma refusing to pair - Reverse engineering investigation

Argiris

Member
Joined
Mar 7, 2022
Messages
7
Reaction score
11
Location
Greece
Hi all,
I'm an engineer and my son's Karma stopped talking to the controller a few months ago. I was not able to deal with it for some time but I thought I would take my chances to bring it back to life.
I am starting this thread to log progress and report findings... I'm also hoping that maybe a more experienced fellow engineer might drop any ideas to help out.

The fault we are seeing is that the gimbal would not power on and the drone will not talk to the controller -- pairing is impossible. There is no other fault visible and the camera & gimbal work fine if connected to a handheld stabilizer.

I'm beginning to write this on my third second session on the drone -- so I do have some ideas of what is going on but allow me to document the steps so far at first.

Karma controller
The controller runs on an AMLogic chipset. Others have shown how to get the controller firmware downloaded to a PC. Look around this forum for more information. We'll also look inside the controller firmeare

Karma architecture - Initial inspection
Inside the drone there is a smaller STM32 ARM MCU and a more powerful TI DSP (DM368) running Linux. The smaller MCU handles the sensors and flight operations while the larger DSP handles the video coding from the camera.

- There are connectors that are marked "DEBUG" for both the STM and the DM CPUs (YEAH!!)
- Most of the fine-pitch components are potted. Although this is a good thing, it means there won't be any direct probing or component (re)soldering.
20220307_132457.jpg
First debug attempt
The first attempted action was to get a cheap USB logic probe and connect to the signals, especially those marked as "Debug". The are UARTs running on 3.3V 115200, as also shown on my vintage Tek 465 oscilloscope. When the UART pins were identified, the next step was to connect a USB-to-UART module to each connector, to get a console for each CPU.
20220307_201610.jpg
20220307_200901.jpg
20220307_200914.jpg
What seems to work....
The STM was working just fine and reports that it can talk to all of the sensors - except for the gimbal... It can't detect it. An interactive shell (nsh) is available and there are applications to run to test sensor status etc.

And what doesn't...
As you can see from the screenshots, the issue is that DM368 does not boot....(left terminal window). It reaches the user bootloader (UBL) but doesn't load the application code.... Is it some bad block in NAND, a misconfigured DDR, something else??
20220307_132658.jpg
 
WOW! Well done mate. This is great stuff. "Ave to you my friend!"

Interesting to see that "no valid boot image was found". Have you tried rolling back the firmware using an old image?

Sorry but I am not an engineer or anything but what you have discovered is very interesting.

Take care.
 
We have to figure out how to flash the DSP but seems difficult without changing the boot mode from nand boot to something else. According to the documentation it looks like the NAND might have some flipped bits/bad sectors that invalidate the checksums. The next steps would be to connect a JTAG adapter to the DM368 on order to read out the NAND or see if the STM can reflash the DM368 somehow... I am getting a jtag adapter in first.
 
  • Like
Reactions: Ironspear
Hi Argiris, i'm a french engineering student too and I try to resolve pairing problem of Karma drone, I found this vide on Youtube
 
  • Like
Reactions: Ironspear
It's obvious that GoPro has some serious defects in their programming and chips that causes these problems. It's also sad they wont take responsibility for these defects. GoPro isn't like they used to be. If you go on the GoPro forums you will find lots of people who have had problems with their cameras and find that it's almost impossible to get a hold of someone in their tech department to get them fixed. My latest GoPro is and 8 and I have no plans on purchasing another newer model due to their current attitude with their customers.
 
Interesting.
Ill be following this thread.

You will defenitly revive the karma trend.

I hope gopro wont release a new update that will render the consumers to do anything to the software or firmware once we get to fox these problems.
 
If i may add.

Has anyone here ever tried to diconnect the controllers internal battery to discharge the controllers system and tried to pair again?
 
  • Like
Reactions: TunaSimon
I have already downloaded the SDK and did some reading but did not have the time to work on it. It's on my list for this weekend.
Hope only for you. If you need help, you can write here.
 
Any news on the pairing? Battery from controller disconnected?
 
Hi all,
I'm an engineer and my son's Karma stopped talking to the controller a few months ago. I was not able to deal with it for some time but I thought I would take my chances to bring it back to life.
I am starting this thread to log progress and report findings... I'm also hoping that maybe a more experienced fellow engineer might drop any ideas to help out.

The fault we are seeing is that the gimbal would not power on and the drone will not talk to the controller -- pairing is impossible. There is no other fault visible and the camera & gimbal work fine if connected to a handheld stabilizer.

I'm beginning to write this on my third second session on the drone -- so I do have some ideas of what is going on but allow me to document the steps so far at first.

Karma controller
The controller runs on an AMLogic chipset. Others have shown how to get the controller firmware downloaded to a PC. Look around this forum for more information. We'll also look inside the controller firmeare

Karma architecture - Initial inspection
Inside the drone there is a smaller STM32 ARM MCU and a more powerful TI DSP (DM368) running Linux. The smaller MCU handles the sensors and flight operations while the larger DSP handles the video coding from the camera.

- There are connectors that are marked "DEBUG" for both the STM and the DM CPUs (YEAH!!)
- Most of the fine-pitch components are potted. Although this is a good thing, it means there won't be any direct probing or component (re)soldering.
View attachment 615
First debug attempt
The first attempted action was to get a cheap USB logic probe and connect to the signals, especially those marked as "Debug". The are UARTs running on 3.3V 115200, as also shown on my vintage Tek 465 oscilloscope. When the UART pins were identified, the next step was to connect a USB-to-UART module to each connector, to get a console for each CPU.
View attachment 611
View attachment 613
View attachment 612
What seems to work....
The STM was working just fine and reports that it can talk to all of the sensors - except for the gimbal... It can't detect it. An interactive shell (nsh) is available and there are applications to run to test sensor status etc.

And what doesn't...
As you can see from the screenshots, the issue is that DM368 does not boot....(left terminal window). It reaches the user bootloader (UBL) but doesn't load the application code.... Is it some bad block in NAND, a misconfigured DDR, something else??
View attachment 614
Awesome job, we were wondering if those ports would be any good. Apparently there are a couple of issues that can occur, one is that the logs fill up to the point where there is no space left. Another is that the flash NAND corrupts and the third is that some components fail. There has been allot of discussion about this issue in the following facebook group GoPro Karma . Apparently there is a company in France that has the equipment to repair these faults. This is the companies email address [email protected] they might be willing to give you some assistance.
 
Hi all,
I'm an engineer and my son's Karma stopped talking to the controller a few months ago. I was not able to deal with it for some time but I thought I would take my chances to bring it back to life.
I am starting this thread to log progress and report findings... I'm also hoping that maybe a more experienced fellow engineer might drop any ideas to help out.

The fault we are seeing is that the gimbal would not power on and the drone will not talk to the controller -- pairing is impossible. There is no other fault visible and the camera & gimbal work fine if connected to a handheld stabilizer.

I'm beginning to write this on my third second session on the drone -- so I do have some ideas of what is going on but allow me to document the steps so far at first.

Karma controller
The controller runs on an AMLogic chipset. Others have shown how to get the controller firmware downloaded to a PC. Look around this forum for more information. We'll also look inside the controller firmeare

Karma architecture - Initial inspection
Inside the drone there is a smaller STM32 ARM MCU and a more powerful TI DSP (DM368) running Linux. The smaller MCU handles the sensors and flight operations while the larger DSP handles the video coding from the camera.

- There are connectors that are marked "DEBUG" for both the STM and the DM CPUs (YEAH!!)
- Most of the fine-pitch components are potted. Although this is a good thing, it means there won't be any direct probing or component (re)soldering.
View attachment 615
First debug attempt
The first attempted action was to get a cheap USB logic probe and connect to the signals, especially those marked as "Debug". The are UARTs running on 3.3V 115200, as also shown on my vintage Tek 465 oscilloscope. When the UART pins were identified, the next step was to connect a USB-to-UART module to each connector, to get a console for each CPU.
View attachment 611
View attachment 613
View attachment 612
What seems to work....
The STM was working just fine and reports that it can talk to all of the sensors - except for the gimbal... It can't detect it. An interactive shell (nsh) is available and there are applications to run to test sensor status etc.

And what doesn't...
As you can see from the screenshots, the issue is that DM368 does not boot....(left terminal window). It reaches the user bootloader (UBL) but doesn't load the application code.... Is it some bad block in NAND, a misconfigured DDR, something else??
View attachment 614
Hi Argiris, many thanks for sharing you works, I propose to open a fund to support your work!!

I hope you will not stop, we all trust in you to revive the drone!
ciao
antonello
 
  • Like
Reactions: webbs
Tolle Arbeit, wir haben uns gefragt, ob diese Ports gut wären. Anscheinend gibt es ein paar Probleme, die auftreten können, eines ist, dass sich die Protokolle bis zu dem Punkt füllen, an dem kein Platz mehr vorhanden ist. Eine andere ist, dass die Flash-NAND beschädigt wird und die dritte ist, dass einige Komponenten ausfallen. Es gab viele Diskussionen über dieses Thema in der folgenden Facebook-Gruppe GoPro Karma . Anscheinend gibt es eine Firma in Frankreich, die die Ausrüstung hat, um diese Fehler zu reparieren. Dies ist die E-Mail-Adresse des Unternehmens, [email protected] sie möglicherweise bereit sind, Ihnen Hilfe zu leisten.
 
I'm really new to this topic, but i noticed within this discussion thread

"Fixing flash programming in DM365 chip within GL300 remote controller"​

on 1649531412807.png forum, that they have an extensive experience with FW programming for DJI Drones.
Now the fact is that the DJI board uses the same architecture with DM368, NAND etc ...
Really i do not know if it could be helpful, but in terms of tools and procedures to interact with that kind of board's architecture hey seems to have some knowdledge.

My hope is that someone can finally identify a procedure for accessing the board and fixing the bug.
 
I am in process of getting myself geared up once more to fly my Karma drone again. After a couple of years of moving and getting settled down on the Eastern shore of Canada in Nova Scotia. To get the pairing system working again I am going to try pairing in three stages, first pairing the drone body on its own without stabiliser and camera, if that works, \i will add the stabiliser without the camera. If that works I will add the camera. If they all work I will go out on my deck and fly my drone once more.
I am open to any thoughts and suggestions.
 
  • Like
Reactions: TunaSimon

Members online

No members online now.

Forum statistics

Threads
1,039
Messages
7,639
Members
2,564
Latest member
wheezy