ArduCopter Mega: порт на обычную Arduino (тестим)
C Arduino без программатора - как в машине без бенза…
хочется userfriendly, как wookong, но за дешево =)
Ардуину можно прошить ардуиной
я это и называю ардуинкопрограмматором
ща попробую собрать всю эту белиберду под Linux, в прошлый раз с БК контроллером прокатило (в винде упорно не лилось)
после небольшого хакарния папки mk (добавление во всякие файлы инфы о mpng), удалось четого то собрать, правда с горой варнингов незначительных, но hex файлик появился =)
sovgvd@sovgvd-nb:~/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter$ make mpng
building /tmp/ArduCopter.build/ArduCopter.cpp
%% ArduCopter.cpp
%% ArduCopter.o
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Attitude.pde: In function 'void get_stabilize_yaw(int32_t)':
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Attitude.pde:40:13: warning: unused variable 'output'
autogenerated: At global scope:
autogenerated:11:14: warning: 'void update_optical_flow()' declared 'static' but never defined
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/ArduCopter.pde:1952:14: warning: 'float get_target_alt_for_reporting()' defined but not used
autogenerated:54:18: warning: 'int16_t get_heli_rate_roll(int32_t)' declared 'static' but never defined
autogenerated:55:18: warning: 'int16_t get_heli_rate_pitch(int32_t)' declared 'static' but never defined
autogenerated:56:18: warning: 'int16_t get_heli_rate_yaw(int32_t)' declared 'static' but never defined
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/GCS_Mavlink.pde:275:22: warning: 'void send_simstate(mavlink_channel_t)' defined but not used
autogenerated:118:15: warning: 'bool print_log_menu()' declared 'static' but never defined
autogenerated:119:15: warning: 'void do_erase_logs()' declared 'static' but never defined
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:849:13: warning: 'void Log_Write_Optflow()' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:834:13: warning: 'void Log_Write_Startup()' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:843:13: warning: 'void Log_Write_Data(uint8_t, int16_t)' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:844:13: warning: 'void Log_Write_Data(uint8_t, uint16_t)' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:847:13: warning: 'void Log_Write_Data(uint8_t, float)' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:854:13: warning: 'void Log_Write_PID(uint8_t, int32_t, int32_t, int32_t, int32_t, int32_t, float)' defined but not used
autogenerated:165:14: warning: 'void Log_Write_DMP()' declared 'static' but never defined
autogenerated:142:14: warning: 'void Log_Read(uint16_t, uint16_t, uint16_t)' declared 'static' but never defined
autogenerated:143:14: warning: 'void start_logging()' declared 'static' but never defined
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:837:13: warning: 'void Log_Write_IMU()' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/Log.pde:838:13: warning: 'void Log_Write_GPS()' defined but not used
autogenerated:259:14: warning: 'void copter_leds_init()' declared 'static' but never defined
autogenerated:260:15: warning: 'void update_copter_leds()' declared 'static' but never defined
autogenerated:261:15: warning: 'void copter_leds_reset()' declared 'static' but never defined
autogenerated:262:15: warning: 'void copter_leds_on()' declared 'static' but never defined
autogenerated:263:15: warning: 'void copter_leds_off()' declared 'static' but never defined
autogenerated:264:15: warning: 'void copter_leds_slow_blink()' declared 'static' but never defined
autogenerated:265:15: warning: 'void copter_leds_fast_blink()' declared 'static' but never defined
autogenerated:266:15: warning: 'void copter_leds_oscillate()' declared 'static' but never defined
autogenerated:267:15: warning: 'void copter_leds_GPS_on()' declared 'static' but never defined
autogenerated:268:15: warning: 'void copter_leds_GPS_off()' declared 'static' but never defined
autogenerated:269:15: warning: 'void copter_leds_GPS_slow_blink()' declared 'static' but never defined
autogenerated:270:15: warning: 'void copter_leds_GPS_fast_blink()' declared 'static' but never defined
autogenerated:271:15: warning: 'void copter_leds_aux_off()' declared 'static' but never defined
autogenerated:272:15: warning: 'void copter_leds_aux_on()' declared 'static' but never defined
autogenerated:313:14: warning: 'void init_sonar()' declared 'static' but never defined
autogenerated:329:14: warning: 'void report_heli()' declared 'static' but never defined
autogenerated:330:15: warning: 'void report_gyro()' declared 'static' but never defined
autogenerated:337:23: warning: 'RC_Channel* heli_get_servo(int16_t)' declared 'static' but never defined
autogenerated:338:17: warning: 'int16_t read_num_from_serial()' declared 'static' but never defined
autogenerated:352:14: warning: 'void check_usb_mux()' declared 'static' but never defined
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/ArduCopter.pde:460:16: warning: 'pid_log_counter' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/ArduCopter.pde:469:16: warning: 'copter_leds_GPS_blink' defined but not used
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter/ArduCopter.pde:471:16: warning: 'copter_leds_motor_blink' defined but not used
%% libraries/AC_Fence/AC_Fence.o
%% libraries/AC_PID/AC_PID.o
%% libraries/AC_WPNav/AC_WPNav.o
%% libraries/APM_PI/APM_PI.o
%% libraries/AP_ADC/AP_ADC_ADS7844.o
%% libraries/AP_ADC/AP_ADC.o
%% libraries/AP_ADC/AP_ADC_HIL.o
%% libraries/AP_ADC_AnalogSource/AP_ADC_AnalogSource.o
%% libraries/AP_AHRS/AP_AHRS.o
%% libraries/AP_AHRS/AP_AHRS_DCM.o
%% libraries/AP_AHRS/AP_AHRS_HIL.o
%% libraries/AP_AHRS/AP_AHRS_MPU6000.o
%% libraries/AP_Airspeed/AP_Airspeed.o
%% libraries/AP_Baro/AP_Baro_BMP085.o
%% libraries/AP_Baro/AP_Baro.o
%% libraries/AP_Baro/AP_Baro_HIL.o
%% libraries/AP_Baro/AP_Baro_MS5611.o
%% libraries/AP_Baro/AP_Baro_PX4.o
%% libraries/AP_Buffer/AP_Buffer.o
%% libraries/AP_Camera/AP_Camera.o
%% libraries/AP_Common/c++.o
%% libraries/AP_Compass/AP_Compass_HIL.o
%% libraries/AP_Compass/AP_Compass_HMC5843.o
%% libraries/AP_Compass/AP_Compass_PX4.o
%% libraries/AP_Compass/Compass.o
%% libraries/AP_Curve/AP_Curve.o
%% libraries/AP_Declination/AP_Declination.o
%% libraries/AP_GPS/AP_GPS_406.o
%% libraries/AP_GPS/AP_GPS_Auto.o
%% libraries/AP_GPS/AP_GPS_HIL.o
%% libraries/AP_GPS/AP_GPS_MTK19.o
%% libraries/AP_GPS/AP_GPS_MTK.o
%% libraries/AP_GPS/AP_GPS_NMEA.o
%% libraries/AP_GPS/AP_GPS_SIRF.o
%% libraries/AP_GPS/AP_GPS_UBLOX.o
%% libraries/AP_GPS/GPS.o
%% libraries/AP_HAL_AVR/AnalogIn_ADC.o
%% libraries/AP_HAL_AVR/AnalogIn_Common.o
%% libraries/AP_HAL_AVR/Console.o
%% libraries/AP_HAL_AVR/GPIO.o
%% libraries/AP_HAL_AVR/HAL_AVR_APM1_Class.o
%% libraries/AP_HAL_AVR/HAL_AVR_APM2_Class.o
%% libraries/AP_HAL_AVR/I2CDriver.o
%% libraries/AP_HAL_AVR/RCInput_APM1.o
%% libraries/AP_HAL_AVR/RCInput_APM2.o
%% libraries/AP_HAL_AVR/RCOutput_APM1.o
%% libraries/AP_HAL_AVR/RCOutput_APM2.o
%% libraries/AP_HAL_AVR/Scheduler.o
%% libraries/AP_HAL_AVR/Scheduler_Timer.o
%% libraries/AP_HAL_AVR/Semaphores.o
%% libraries/AP_HAL_AVR/SPIDeviceManager_APM1.o
%% libraries/AP_HAL_AVR/SPIDeviceManager_APM2.o
%% libraries/AP_HAL_AVR/SPIDevice_SPI0.o
%% libraries/AP_HAL_AVR/SPIDevice_SPI2.o
%% libraries/AP_HAL_AVR/SPIDevice_SPI3.o
%% libraries/AP_HAL_AVR/Storage.o
%% libraries/AP_HAL_AVR/UARTDriver.o
%% libraries/AP_HAL_AVR/Util.o
%% libraries/AP_HAL_AVR_SITL/AnalogIn.o
%% libraries/AP_HAL_AVR_SITL/Console.o
%% libraries/AP_HAL_AVR_SITL/HAL_AVR_SITL_Class.o
%% libraries/AP_HAL_AVR_SITL/RCInput.o
%% libraries/AP_HAL_AVR_SITL/RCOutput.o
%% libraries/AP_HAL_AVR_SITL/Scheduler.o
%% libraries/AP_HAL_AVR_SITL/sitl_barometer.o
%% libraries/AP_HAL_AVR_SITL/sitl_compass.o
%% libraries/AP_HAL_AVR_SITL/sitl_gps.o
%% libraries/AP_HAL_AVR_SITL/sitl_ins.o
%% libraries/AP_HAL_AVR_SITL/SITL_State.o
%% libraries/AP_HAL_AVR_SITL/Storage.o
%% libraries/AP_HAL_AVR_SITL/UARTDriver.o
%% libraries/AP_HAL_AVR_SITL/Util.o
%% libraries/AP_HAL_Empty/AnalogIn.o
%% libraries/AP_HAL_Empty/Console.o
%% libraries/AP_HAL_Empty/GPIO.o
%% libraries/AP_HAL_Empty/HAL_Empty_Class.o
%% libraries/AP_HAL_Empty/I2CDriver.o
%% libraries/AP_HAL_Empty/PrivateMember.o
%% libraries/AP_HAL_Empty/RCInput.o
%% libraries/AP_HAL_Empty/RCOutput.o
%% libraries/AP_HAL_Empty/Scheduler.o
%% libraries/AP_HAL_Empty/Semaphores.o
%% libraries/AP_HAL_Empty/SPIDriver.o
%% libraries/AP_HAL_Empty/Storage.o
%% libraries/AP_HAL_Empty/UARTDriver.o
%% libraries/AP_HAL_Empty/Util.o
%% libraries/AP_HAL_MPNG/AnalogIn_ADC.o
%% libraries/AP_HAL_MPNG/AnalogIn_Common.o
%% libraries/AP_HAL_MPNG/Console.o
%% libraries/AP_HAL_MPNG/GPIO.o
%% libraries/AP_HAL_MPNG/HAL_MPNG_Class.o
%% libraries/AP_HAL_MPNG/I2CDriver.o
%% libraries/AP_HAL_MPNG/RCInput_MPNG.o
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp: In static member function 'static void MPNG::MPNGRCInput::_pwm_A8_A15_isr()':
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:212:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:216:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:220:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:224:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:228:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:232:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:236:5: warning: suggest explicit braces to avoid ambiguous 'else'
/home/sovgvd/copter/mp/3.0.1_R1/ardupilot-mpng/libraries/AP_HAL_MPNG/RCInput_MPNG.cpp:240:5: warning: suggest explicit braces to avoid ambiguous 'else'
%% libraries/AP_HAL_MPNG/RCOutput_MPNG.o
%% libraries/AP_HAL_MPNG/Scheduler.o
%% libraries/AP_HAL_MPNG/Scheduler_Timer.o
%% libraries/AP_HAL_MPNG/Semaphores.o
%% libraries/AP_HAL_MPNG/SPIDeviceManager_MPNG.o
%% libraries/AP_HAL_MPNG/SPIDevice_SPI0.o
%% libraries/AP_HAL_MPNG/SPIDevice_SPI2.o
%% libraries/AP_HAL_MPNG/SPIDevice_SPI3.o
%% libraries/AP_HAL_MPNG/Storage.o
%% libraries/AP_HAL_MPNG/UARTDriver.o
%% libraries/AP_HAL_MPNG/Util.o
%% libraries/AP_HAL_PX4/AnalogIn.o
%% libraries/AP_HAL_PX4/Console.o
%% libraries/AP_HAL_PX4/HAL_PX4_Class.o
%% libraries/AP_HAL_PX4/RCInput.o
%% libraries/AP_HAL_PX4/RCOutput.o
%% libraries/AP_HAL_PX4/Scheduler.o
%% libraries/AP_HAL_PX4/Storage.o
%% libraries/AP_HAL_PX4/UARTDriver.o
%% libraries/AP_HAL_PX4/Util.o
%% libraries/AP_HAL_SMACCM/AnalogIn.o
%% libraries/AP_HAL_SMACCM/AP_HAL_SMACCM_Main.o
%% libraries/AP_HAL_SMACCM/Console.o
%% libraries/AP_HAL_SMACCM/GPIO.o
%% libraries/AP_HAL_SMACCM/HAL_SMACCM_Class.o
%% libraries/AP_HAL_SMACCM/I2CDriver.o
%% libraries/AP_HAL_SMACCM/PrivateMember.o
%% libraries/AP_HAL_SMACCM/RCInput.o
%% libraries/AP_HAL_SMACCM/RCOutput.o
%% libraries/AP_HAL_SMACCM/Scheduler.o
%% libraries/AP_HAL_SMACCM/Semaphores.o
%% libraries/AP_HAL_SMACCM/SPIDriver.o
%% libraries/AP_HAL_SMACCM/Storage.o
%% libraries/AP_HAL_SMACCM/UARTDriver.o
%% libraries/AP_HAL_SMACCM/Util.o
%% libraries/AP_InertialNav/AP_InertialNav.o
%% libraries/AP_InertialSensor/AP_InertialSensor.o
%% libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.o
%% libraries/AP_InertialSensor/AP_InertialSensor_MPU6000_I2C.o
%% libraries/AP_InertialSensor/AP_InertialSensor_Oilpan.o
%% libraries/AP_InertialSensor/AP_InertialSensor_PX4.o
%% libraries/AP_InertialSensor/AP_InertialSensor_Stub.o
%% libraries/AP_InertialSensor/AP_InertialSensor_UserInteract_MAVLink.o
%% libraries/AP_InertialSensor/AP_InertialSensor_UserInteract_Stream.o
%% libraries/AP_Math/AP_Math.o
%% libraries/AP_Math/location.o
%% libraries/AP_Math/matrix3.o
%% libraries/AP_Math/polygon.o
%% libraries/AP_Math/quaternion.o
%% libraries/AP_Math/vector2.o
%% libraries/AP_Math/vector3.o
%% libraries/AP_Menu/AP_Menu.o
%% libraries/AP_Motors/AP_Motors_Class.o
%% libraries/AP_Motors/AP_MotorsHeli.o
%% libraries/AP_Motors/AP_MotorsHexa.o
%% libraries/AP_Motors/AP_MotorsMatrix.o
%% libraries/AP_Motors/AP_MotorsOcta.o
%% libraries/AP_Motors/AP_MotorsOctaQuad.o
%% libraries/AP_Motors/AP_MotorsQuad.o
%% libraries/AP_Motors/AP_MotorsTri.o
%% libraries/AP_Motors/AP_MotorsY6.o
%% libraries/AP_Mount/AP_Mount.o
%% libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.o
%% libraries/AP_OpticalFlow/AP_OpticalFlow.o
%% libraries/AP_Param/AP_Param.o
%% libraries/AP_Progmem/AP_Progmem_AVR.o
%% libraries/AP_RangeFinder/AP_RangeFinder_analog.o
%% libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarI2CXL.o
%% libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.o
%% libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.o
%% libraries/AP_RangeFinder/RangeFinder.o
%% libraries/AP_Relay/AP_Relay.o
%% libraries/AP_Scheduler/AP_Scheduler.o
%% libraries/DataFlash/DataFlash_APM1.o
%% libraries/DataFlash/DataFlash_APM2.o
%% libraries/DataFlash/DataFlash_Block.o
%% libraries/DataFlash/DataFlash_Empty.o
%% libraries/DataFlash/DataFlash_File.o
%% libraries/DataFlash/DataFlash_MPNG.o
%% libraries/DataFlash/DataFlash_SITL.o
%% libraries/DataFlash/LogFile.o
%% libraries/Filter/DerivativeFilter.o
%% libraries/GCS_MAVLink/GCS_MAVLink.o
%% libraries/RC_Channel/RC_Channel_aux.o
%% libraries/RC_Channel/RC_Channel.o
%% libraries/SITL/SITL.o
%% libraries/memcheck/memcheck.o
%% libraries/AP_HAL/utility/Print.o
%% libraries/AP_HAL_AVR/utility/ISRRegistry.o
%% libraries/AP_HAL_AVR/utility/print_vprintf.o
%% libraries/AP_HAL_AVR_SITL/utility/print_vprintf.o
%% libraries/AP_HAL_MPNG/utility/ISRRegistry.o
%% libraries/AP_HAL_MPNG/utility/print_vprintf.o
%% libraries/AP_HAL_AVR/utility/pins_arduino_mega.o
%% libraries/AP_HAL_MPNG/utility/pins_arduino_mega.o
%% libraries/AP_HAL_AVR/utility/ftoa_engine.o
%% libraries/AP_HAL_AVR/utility/ultoa_invert.o
%% libraries/AP_HAL_MPNG/utility/ftoa_engine.o
%% libraries/AP_HAL_MPNG/utility/ultoa_invert.o
%% ArduCopter.elf
%% ArduCopter.eep
%% ArduCopter.hex
И даже залилось
sovgvd@sovgvd-nb:~/copter/mp/3.0.1_R1/ardupilot-mpng/ArduCopter$ make upload
/usr/bin/avrdude -c stk500v2 -p atmega2560 -P /dev/ttyUSB0 -b115200 -U flash:w:/tmp/ArduCopter.build/ArduCopter.hex:i
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.01s
avrdude: Device signature = 0x1e9801
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "/tmp/ArduCopter.build/ArduCopter.hex"
avrdude: writing flash (209916 bytes):
Writing | ################################################## | 100% 27.82s
avrdude: 209916 bytes of flash written
avrdude: verifying flash memory against /tmp/ArduCopter.build/ArduCopter.hex:
avrdude: load data flash data from input file /tmp/ArduCopter.build/ArduCopter.hex:
avrdude: input file /tmp/ArduCopter.build/ArduCopter.hex contains 209916 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 20.48s
avrdude: verifying ...
avrdude: 209916 bytes of flash verified
avrdude: safemode: Fuses OK
avrdude done. Thank you.
Глеб ! После замены загрузчика в плате ,прошивка будет заливаться как обычно из arduino
Мне проще код поправить, чем чего то щас сидеть паять и перебирать коптер (контроллер уже на месте и закрыт кучей других прибамбасов)
О блин… еще и новый планер нормально работает в ubuntu =)
А этот код ты залил через ISP ?
Нет, через USB/FTDI
/usr/bin/avrdude -c stk500v2 -p atmega2560 -P /dev/ttyUSB0 -b115200 -U flash:w:/tmp/ArduCopter.build/ArduCopter.hex:i
тут наверное никто линухом не пользуется, но всеравно спрошу - надо unix-овый вариант сборки (подправил пару файликов) выложить? При этом еще не тестил ничего, но мижн планнер подхватил контроллер и коррентно отображает данные
фига-се ! Вот я не знал что так можно… То-же пришлось разбирать коптер…
Мне проще код поправить, чем чего то щас сидеть паять и перебирать коптер (контроллер уже на месте и закрыт кучей других прибамбасов)
О блин… еще и новый планер нормально работает в ubuntu =)
Через Mono собрал ? или Wine?
Через mono запустил:
/media/02D8585BD8584ED3/ardupilot-mpng-3.0.1-R1/MissionPlanner-1.2.70$ mono ArdupilotMegaPlanner10.exe
тут наверное никто линухом не пользуется, но всеравно спрошу - надо unix-овый вариант сборки (подправил пару файликов) выложить?
Я пользуюсь, но сугубо на nas\серверах. SimonK там собираю через AVRA в том числе 😃 А на десктопе для всех этих приблуд лучше винду держать.
Я думаю не стоит особо заморачиваться на сборке в линуксе т.к. под винду уже давно всё искаробки компилится.
Можно на гитхаб загрузить, к примеру, может кому интересно будет.
Через mono запустил:
/media/02D8585BD8584ED3/ardupilot-mpng-3.0.1-R1/MissionPlanner-1.2.70$ mono ArdupilotMegaPlanner10.exe
Глеб спасибо за наводку! буду на OS x пробывать, а то задалбался кирпичный Toshiba с WinXP тоскать =)
т.к. под винду уже давно всё искаробки компилится
если бы… в 3х виндах мучал БК подвес, не заливалось, и в 2х виндах мучал 3.0.1, так же не заливалось… пару правок и 3 команды в Linux и всё залилось (но еще надо проверить работает ли)
Глеб спасибо за наводку! буду на OS x пробывать, а то задалбался кирпичный Toshiba с WinXP тоскать =)
а я надеюсь что на toshiba ac100 заведется (хотя в прошлый раз там добавили directx или чето типа того и всё спортилось, вся надежда что каким то чудом directx будет транслироваться в opengles, если надо), чтобы не таскать x86 махину, живущую пару минут =)
@ Sir Alex nekaka.com/d/SPtLoKIYvU (заменить файлики в mk), после чего сборка для unix машин:
- в папке ArduCopter написать make configure - создастся файлик config.mk в “корне” сборки, там надо будет поменять (а может и не надо, далее явно указывается под какую железку собирать) HAL_BOARD ?= HAL_BOARD_MPNG и выставить порт, куда заливать
- в папке ArduCopter написать make mpng
- подключить коптер и написать make upload
сенсоры работают, GPS видится, на аппу реагирует (думаю если бы собралось не верно, то тут точно был бы затык), еще не летал
Вот вы мне скажите, почему из под Винды не заливается прошивка, а из под Linux’а - да???
Глеб, ты можешь попробовать залить HEX полученный в винде, на линухе?
Глеб, ты можешь попробовать залить HEX полученный в винде, на линухе?
могу (avrdude вроде входит в arduino ide?) попробовать, но вечерком, отпишусь что вышло… или хочешь тебе скину этот hex-ик (гекса, multiwii-шный вариант для приемника)?
если бы… в 3х виндах мучал БК подвес, не заливалось, и в 2х виндах мучал 3.0.1, так же не заливалось… пару правок и 3 команды в Linux и всё залилось (но еще надо проверить работает ли)
а я надеюсь что на toshiba ac100 заведется (хотя в прошлый раз там добавили directx или чето типа того и всё спортилось, вся надежда что каким то чудом directx будет транслироваться в opengles, если надо), чтобы не таскать x86 махину, живущую пару минут =)
@ Sir Alex nekaka.com/d/SPtLoKIYvU (заменить файлики в mk), после чего сборка для unix машин:
- в папке ArduCopter написать make configure - создастся файлик config.mk в “корне” сборки, там надо будет поменять (а может и не надо, далее явно указывается под какую железку собирать) HAL_BOARD ?= HAL_BOARD_MPNG и выставить порт, куда заливать
- в папке ArduCopter написать make mpng
- подключить коптер и написать make upload
сенсоры работают, GPS видится, на аппу реагирует (думаю если бы собралось не верно, то тут точно был бы затык), еще не летал
Вроде как работает, а если нет то установить sudo apt-get install mono-runtime libmono-system-windows-forms4.0-cil libmono-system-core4.0-cil
тикет 22
После замены загрузчика в плате все льется и летает отменно …
После замены загрузчика в плате все льется и летает отменно …
для замены загрузчика нужен программатор или еще одна адруинка + перебрать коптер и чуток попаять, надеюсь это можно решить программно в Windows
Вроде как работает
на ac100 проблема в ARM архитектуре и отсуствии opengl (gles только), поэтому ни новые планеры, ни qgroundcontrol работать не хотели на нем
а mono в убунте вроде по умолчанию со всеми нужностями стоит (или стоял, т.к. встроенный плеер жаждил этой фигни)
на ac100 проблема в ARM архитектуре и отсуствии opengl (gles только)
В конфиге планера можно принудительно отключить OpenGL и оставить только GDI+.
После замены загрузчика в плате все льется и летает отменно …
было бы интересно узнать: какой аппарат? вес ? настройки PID’ов ?
Глеб, ты можешь попробовать залить HEX полученный в винде, на линухе?
Попробовал (правда через виртуалку, но через неё же черезз IDE не заливалось ничего)
C:\Users\user\Downloads\ardupilot-mpng-3.0.1-R1\arduino-ardupilot-ide\hardware\tools\avr\bin>avrdude.exe -C "C:\Users\user\Downloads\ardupilot-mpng-3.0.1-R1\arduino-ardupilot-ide\hardware\tools\avr\etc\avrdude.conf" -c stk500v2 -p atmega2560 -P COM3 -b115200 -U flash:w:C:\ArduCopter.hex:i
И дальше залилось точно так же как в линухе
avrdude.exe: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.04s
avrdude.exe: Device signature = 0x1e9801
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "C:\ArduCopter.hex"
avrdude.exe: writing flash (209916 bytes):
Writing | ################################################## | 100% 39.71s
avrdude.exe: 209916 bytes of flash written
avrdude.exe: verifying flash memory against C:\ArduCopter.hex:
avrdude.exe: load data flash data from input file C:\ArduCopter.hex:
avrdude.exe: input file C:\ArduCopter.hex contains 209916 bytes
avrdude.exe: reading on-chip flash data:
Reading | ################################################## | 100% 43.93s
avrdude.exe: verifying ...
avrdude.exe: 209916 bytes of flash verified
avrdude.exe: safemode: Fuses OK
avrdude.exe done. Thank you.
AIO v1 прошился 3.0.1, Arduino 1.0.3 подтверждает загрузку программы в контроллер. Если не отключать кабель от компа, то диоды попеременно начинают мигать, говоря о том, что все хорошо. Стоит запитаться от аккума или просто передернуть кабель - диоды перестают мигать вообще. И соответственно контроллер ни одна прога конфигуратор не видит. Буду пока летать на 2.8r3. Заливается без проблем и все работает. Надеюсь, скоро все проблемы будут решены.
было бы интересно узнать: какой аппарат? вес ? настройки PID’ов ?
Рама banned link
Моторы banned link
пропы banned link
регули banned link перешитые
вес около килограмма с батареей 3000
PID стоковые немного убавил Rate P