|
From: | Stephen L Hulme |
Subject: | Re: [Paparazzi-devel] mag_micromag_fw module build errors |
Date: | Sat, 11 Dec 2010 12:31:24 +1300 |
Hi Felix
Once again thank you.
I made the requested changes with the resultant
error:
home/stephen/paparazzi/var/FJSR/ap/mcu.o: In function
`mcu_init':
mcu.c:(.text.mcu_init+0x88): undefined reference to `spi_init' collect2: ld returned 1 exit status make[1]: *** [/home/stephen/paparazzi/var/FJSR/ap/ap.elf] Error 1 make[1]: Leaving directory `/home/stephen/paparazzi/sw/airborn using this airframe.xml config: <airframe name="Funjet 3sw Tiny 2.11">
<firmware name="fixedwing"> <target name="ap" board="tiny_2.11"> <define name="AGR_CLIMB"/> <define name="LOITER_TRIM"/> <define name="ALT_KALMAN"/> <define name="WIND_INFO"/> <define name="WIND_INFO_RET"/> <define name="STRONG_WIND"/> <define name="USE_I2C0"/> <define name="USE_SPI_MASTER"/> <define name="MICROMAG_DRDY_VIC_SLOT" value="9"/> <define name="SSP_VIC_SLOT" value="11"/> <define name="USE_ADC_5"/> <define name="SENSOR_SYNC_SEND"/> </target> <target name="sim" board="pc"> <define name="AGR_CLIMB"/> <define name="LOITER_TRIM"/> <define name="ALT_KALMAN"/> <define name="WIND_INFO"/> <define name="WIND_INFO_RET"/> </target> <!-- RC --> <subsystem name="radio_control" type="ppm"/> <!-- Communication --> <subsystem name="telemetry" type="transparent"> <param name="MODEM_BAUD" value="B9600"/> </subsystem> <!-- Actuators are automatically chosen according to board--> <subsystem name="control"/> <!-- Sensors --> <subsystem name="attitude" type="infrared"/> <subsystem name="gps" type="ublox_lea4p"> <param name="GPS_BAUD" value="B38400"/> </subsystem> <!-- Nav --> <subsystem name="navigation"/> <!-- Interfaces --> <subsystem name="i2c"/> <subsystem name="spi"/> </firmware> <firmware name="setup"> <target name="tunnel" board="tiny_2.11"/> <target name="usb_tunnel_0" board="tiny_2.11"/> <target name="usb_tunnel_1" board="tiny_2.11"/> <target name="setup_actuators" board="tiny_2.11"/> </firmware> <!-- modules --> <modules> <load name="mag_micromag_fw.xml"/> <!--load name="baro_scp_i2c.xml"/--> <load name="digital_camo.xml"/> </modules> Regards Stephen
On Fri, 10 Dec 2010 23:49:30 +0100 Felix Reuss wrote:
Hi Stephen,
seems DOWNLINK_DEVICE is not defined when trying to send a message in these modules (probably include order issue). I just pushed a fix for this. You also do NOT need to define USE_MAG_MICROMAG_FW, that does not exist anywhere. But you should define MICROMAG_DRDY_VIC_SLOT to an appropriate otherwise free slot. (You had it misspelled as MAG_MICROMAG_FW_DRDY_VIC_SLOT). And you probably need to define SPI_MASTER. There is some work going on to clean up the SPI defines a bit and make them more clear. Martin? Cheers, Felix On Fri, Dec 10, 2010 at 10:25 PM, Stephen L Hulme <address@hidden> wrote: > Hi Felix > > Thank you for that. I added spi firmware subsystem "spi" > > Now I get the following in ap build mode. > > CC /home/stephen/paparazzi/var/FJSR/ap/modules/sensors/mag_micromag_fw.o > modules/sensors/mag_micromag_fw.c: In function `micromag_event': > modules/sensors/mag_micromag_fw.c:38: warning: implicit declaration of > function `DOWNLINK_DEVICECheckFreeSpace' > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICECheckFreeSpace' > modules/sensors/mag_micromag_fw.c:38: warning: implicit declaration of > function `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: redundant redeclaration > of 'DOWNLINK_DEVICETransmit' > modules/sensors/mag_micromag_fw.c:38: warning: previous implicit > declaration of 'DOWNLINK_DEVICETransmit' was here > modules/sensors/mag_micromag_fw.c:38: warning: nested extern declaration > of `DOWNLINK > Regards > > Stephen > > On Fri, 10 Dec 2010 20:17:41 +0100 Felix Reuss wrote: > > Hi Stephen, > > I think you are missing the > <subsystem name="spi"/> > > Cheers, Felix > > On Fri, Dec 10, 2010 at 6:10 AM, Stephen L Hulme <address@hidden> wrote: >> Hi Martin (I Guess) >> >> I am having trouble building the mag_micromag_fw module in ap mode. >> >> I get the following message in the paparazzi centre >> >> CC >> >> /home/stephen/paparazzi/var/FJSR/ap/arch/lpc21/modules/sensors/mag_micromag_fw_hw.o >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c: In function `SSP_ISR': >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c:22: warning: implicit >> declaration of function `SpiClearRti' >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c:22: warning: nested >> extern declaration of `SpiClearRti' >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c:22: warning: implicit >> declaration of function `SpiDisableRti' >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c:22: warning: nested >> extern declaration of `SpiDisableRti' >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c:22: warning: implicit >> declaration of function `SpiDisable' >> arch/lpc21/modules/sensors/mag_micromag_fw_hw.c:22: warning: nested >> extern declaration of `SpiDisable' >> arch/lpc21/modules/sensors/mag_micromag_fw_hw. >> >> The relevant section of my airframe.xml file is: >> >> airframe name="Funjet 3sw Tiny 2.11"> >> >> Ã <firmware name="fixedwing"> >> ÃÃÃ <target name="ap"ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃ board="tiny_2.11"> >> ÃÃÃÃÃ <define name="AGR_CLIMB"/> >> ÃÃÃÃÃ <define name="LOITER_TRIM"/> >> ÃÃÃÃÃ <define name="ALT_KALMAN"/> >> ÃÃÃÃÃ <define name="WIND_INFO"/> >> ÃÃÃÃÃ <define name="WIND_INFO_RET"/> >> ÃÃÃÃÃ <define name="STRONG_WIND"/> >> ÃÃÃÃÃ <define name="USE_I2C0"/> >> ÃÃÃÃÃ <define name="USE_MAG_MICROMAG_FW"/> >> ÃÃÃÃÃ <define name="MAG_MICROMAG_FW_DRDY_VIC_SLOT" value="9"/> >> ÃÃÃÃÃ <define name="SSP_VIC_SLOT" value="11"/> >> ÃÃÃÃÃ <define name="SENSOR_SYNC_SEND"/> >> ÃÃÃ </target> >> >> ÃÃÃ <target name="sim"ÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃÃ board="pc"> >> ÃÃÃÃÃ <define name="AGR_CLIMB"/> >> ÃÃÃÃÃ <define name="LOITER_TRIM"/> >> ÃÃÃÃÃ <define name="ALT_KALMAN"/> >> ÃÃÃÃÃ <define name="WIND_INFO"/> >> ÃÃÃÃÃ <define name="WIND_INFO_RET"/> >> ÃÃÃ </target> >> >> ÃÃÃÃÃÃ <!-- RC --> >> ÃÃÃ <subsystem name="radio_control"ÃÃÃ type="ppm"/> >> ÃÃÃ <!-- Communication --> >> ÃÃÃ <subsystem name="telemetry"ÃÃÃÃÃÃÃ type="transparent"> >> ÃÃÃÃÃ <param name="MODEM_BAUD"ÃÃÃÃÃÃÃÃ value="B9600"/> >> ÃÃÃ </subsystem> >> ÃÃÃ <!-- Actuators are automatically chosen according to board--> >> ÃÃÃ <subsystem name="control"/> >> ÃÃÃ <!-- Sensors --> >> ÃÃÃ <subsystem name="attitude"ÃÃÃÃÃÃÃÃ type="infrared"/> >> ÃÃÃ <subsystem name="gps"ÃÃÃÃÃÃÃÃÃÃÃÃÃ type="ublox_lea4p"> >> ÃÃÃÃÃ <param name="GPS_BAUD"ÃÃÃÃÃÃÃÃÃÃ value="B38400"/> >> ÃÃÃ </subsystem> >> ÃÃÃ <!-- Nav --> >> ÃÃÃ <subsystem name="navigation"/> >> ÃÃÃ <!-- Interfaces --> >> ÃÃÃ <subsystem name="i2c"/> >> Ã </firmware> >> >> Ã <firmware name="setup"> >> ÃÃÃ <target name="tunnel"ÃÃÃÃÃÃÃÃÃÃÃÃÃ board="tiny_2.11"/> >> ÃÃÃ <target name="usb_tunnel_0"ÃÃÃÃÃÃÃ board="tiny_2.11"/> >> ÃÃÃ <target name="usb_tunnel_1"ÃÃÃÃÃÃÃ board="tiny_2.11"/> >> ÃÃÃ <target name="setup_actuators"ÃÃÃÃ board="tiny_2.11"/> >> Ã </firmware> >> >> Ã <!-- modules --> >> Ã <modules> >> ÃÃÃ <load name="mag_micromag_fw.xml"/> >> ÃÃÃ <load name="baro_scp_i2c.xml"/> >> ÃÃÃ <load name="digital_camo.xml"/> >> Ã </modules> >> >> >> Ã<section name="MAG_MICROMAG"> >> >> ÃÃÃ <define name="MM_SS_PIN" value="20"/> >> ÃÃÃ <define name="MM_SS_IODIR" value="IO0DIR"/> >> ÃÃÃ <define name="MM_SS_IOSET" value="IO0SET"/> >> ÃÃÃ <define name="MM_SS_IOCLR" value="IO0CLR"/> >> >> ÃÃÃ <define name="MM_RESET_PIN" value="29"/> >> ÃÃÃ <define name="MM_RESET_IODIR" value="IO0DIR"/> >> ÃÃÃ <define name="MM_RESET_IOSET" value="IO0SET"/> >> ÃÃÃ <define name="MM_RESET_IOCLR" value="IO0CLR"/> >> >> ÃÃÃ <define name="MM_DRDY_PINSEL" value="PINSEL1"/> >> ÃÃÃ <define name="MM_DRDY_PINSEL_BIT" value="0"/> >> ÃÃÃ <define name="MM_DRDY_PINSEL_VAL" value="1"/> >> ÃÃÃ <define name="MM_DRDY_EINT" value="0"/> >> ÃÃÃ <define name="MM_DRDY_VIC_IT" value="VIC_EINT0"/> >> Ã </section> >> >> >> Any help appreciated. >> >> Regards >> >> Stephen |
[Prev in Thread] | Current Thread | [Next in Thread] |