Get 'SIGBUS error' when I run the program

HI all,I need your help!

I use BBG and BBBmini ,when I run arducopter-quad or INS_generic ,I get the error info "RCOutputAioPRU.cpp:SIGBUS error gernerated",I don't why I get this error.

I am not good at English.If anyone know how to solve it ,please give me your hand. Thank you!

You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –

Replies

  •     Today,I know why i can't run program normally.

        The problem is that pruss isn't working normally.Before run the ardu* program ,we should enable pruss. run following shell cmd:

         sudo modprobe uio_pruss

         OK!

  • Hi

    I try the BARO_generic and Hello program,then I get the same error.I think I have to read code to find way to solve it.

    Vinicius Juvinski said:

    Hi,

    have you tried to run examples for sensors ( Baro, Compass, etc) ?
  • Hi,

    have you tried to run examples for sensors ( Baro, Compass, etc) ?
  • Hi,

    have you tried to run examples for sensors ( Baro, Compass, etc) ?
  • Hi,

    have you tried to run examples for sensors ( Baro, Compass, etc) ?
  • Hi,

    have you tried to run examples for sensors ( Baro, Compass, etc) ?
  • HI ,today I use gdb to debug my program,I get the following info:

              Program received signal SIGBUS, Bus error. 0x000c53b4 in Linux::RCOutput_AioPRU::init (this=0x11e2a4 ) at ../../libraries/AP_HAL_Linux/RCOutput_AioPRU.cpp:48

              48 *ctrl = 0;

             (gdb) l

             43 ctrl = (uint32_t*)mmap(0, 0x1000, PROT_READ|PROT_WRITE, MAP_SHARED, mem_fd,RCOUT_PRUSS_CTRL_BASE);

             44

             45 close(mem_fd);

             46

             47 // Reset PRU 1

             48 *ctrl = 0;

             49

             50 // Load firmware

             51 memcpy(iram, PRUcode, sizeof(PRUcode));

    I think maybe it is mem writing problem, but I am not familar with it ,Can anyone tell me how to solve it ? What should I do next?

    Thank you!

  • HI

    I have done that step and check /boot/uEnv.txt file . But I don't know how can I make sure the dtb file loaded successfully, can you give me some suggestion?

    Is there logs out when run the program? I have a usb-to-ttl tool,can I use it to get log ?

    Thank you !

  • Hi,

    if you are not loading the dtb ( pass 16) you will not have your beaglebone pinmux configured for use with ardupilot - I dont know how much you know about it, but the pins of your beaglebone can be configured for a lot of options, and the DTO is what does this configuration, so the first step is to ensure  this dtb is loaded.

  • Hi Vinicius Juvinski

    My debian image is download from http://beagleboard.org/latest-images ,and version is Debian 8.6 2016-12-09 4GB SD IoT.

    I don't know whether it's ok or not.When I upgrade the system,the version of debian is 8.8.I use Micro SD instead of emmc.

    All the other steps are the same as Mirko's.

    I'm using Copter-3.4.6
    I will try ArduPlane 3.7.1 later and check the uEnv file.

    Thank you!
    Vinicius Juvinski said:

    Hi,

    do you have followed all steps at Mirko's github?

    What version are you using ? I'm using ArduPlane 3.7.1 and is working, please try to checkout this version and see if the compilation are ok.

    Another question, in your uEnv file is correctly configured the bbbmini dbt ?

This reply was deleted.