|
|
Thread OP
|
Poll
Ardupilot on OpenPilot Revolution
Hi all!
I have not found a more appropriate place for this survey if I missed let dear moderators will transfer to a more appropriate section. So, some time ago, someone was written HAL for Ardupilot for the OpenPilot Revolution platform. This code was not supported for years so therefore hopelessly outdated. Some time ago, I adopt this code to the current Ardupilot state and make a PR on GitHub to include this HAL to the official repository. Since then, it took 2 ArduCopter versions but this PR still hanging. Attention, a question to all. Does anyone else besides me interested in ArduPlane / ArduCopter on the controller with weight of 6 grams with the case? All electronics of copter: And not only in a huge heavy sick PixHawk... At the same time, many features are provided that are not available in the official firmware! * The USB port can be connected to any UART, for example to the OSD for tuning. * Any UART can be connected to the ESC for programming * SD card can be connected to USB in MassStorage mode - no need to extract SD for reading logs The above items allow you to place the controller in the case and do not disassemble it for setting / reading logs. And: * Auto-detects compasses and barometers on the external I2C bus allows you to connect any sensors for Arduino like GY- series * Processor ~ 65% of the time in a sleep - which significantly reduced the consumption and heating * There is FailSafe in case of the receiver hangs, if no channel changes in 60 seconds - now this will not cause a flyaway * The possibility of connecting 2 receivers - either LRS and 2.4, or as Diversity at the same time. It also significantly improves reliability * The quartz safety system is used - the controller does not hang if it fails in air * the built-in OSD on the AirbotV2 boards now works! To use, you need to set the protocol for Serial_5 to 1 = MAVlink * Also supported pre-configuration of OSD by files in the root directory of SD card: eeprom.osd for configuration, and font.mcm for font (will be deleted after applying). And it flies! Code and binaries are here - https://github.com/night-ghost/ardupilot Russian discussion here - http://www.ykoctpa.ru/groups/eye-in-...tion-revomini/ How to flash: The firmware file to flash is in latest.zip on https://github.com/night-ghost/ardupilot OPBL don't supported because of different address of binary, so to flash you have to put the Revo in DFU mode (short the BL pin on board while you plug the USB) and then use dfu-util command: for Revo/RevoMini boards: dfu-util -a 0 --dfuse-address 0x08000000 -D /path/to/revomini_MP32V1F4.bin for AirbotF4 boards: dfu-util -a 0 --dfuse-address 0x08000000 -D /path/to/revomini_airbot.bin for AirbotV2 boards: dfu-util -a 0 --dfuse-address 0x08000000 -D /path/to/revomini_airbotV2.bin |
|
Last edited by night_ghost; Nov 11, 2017 at 06:21 AM.
Reason: added list of new features
|
|
|
|
|
Revo is the only 32bit board w/ built-in UHF + F4 == killer combo
|
|
|
|
||
Thread OP
|
the weight and size.
sorry but RF part now is still not supported. If this HAL will be accepted to mainline then I will start to work on it. This job is almost done: board successfully connects to MP, shows attitude, spin motors. But it still not tested in flight because I still don't get receiver for it. In addition to initial Scenkov's port, it has: * near a half of code is fully rewritten * external I2C bus moved out from FlexiPort by Soft_I2C driver so we always has at least 3 UARTs * added 1 full-functional UART (only for quads) and 1 RX-only UART for DSM satellite receiver on OpLink connector * added buzzer support * stack now in CCM memory * PPM and PWM inputs works via Timer's driver handlers * added DSM and SBUS parsing on PPM input * high-frequency (8kHz) advanced scheduler, common for all needs, capable to use semaphores with (optional) performance statistics * all hardware description tables are now 'const' and locates in flash * more reliable reset for I2C bus on hangups * all delays - even microseconds - are very presize by using hardware clock counter (DWT_CYCCNT) in free-running mode * separated USB and UART drivers * new SoftwareSerial driver based on ST appnote * now it uses MPU6000 DRDY output * removed all compiler's warnings * ported and slightly altered bootloader to support flashing and start firmware automatically at addresses 8010000 and 8020000 (2 low 16k flash pages are used to emulate EEPROM) * EEPROM emulation altered to ensure the reliability of data storage at power failures * optimized EEPROM usage by changing from 1-byte to 2-byte writes * all internal calls use static private methods * removed unused files from "wirish" folder * ... * a lot of minor enhancements Quote:
UPD. The above list is not full, see 0_Done file in HAL's folder |
|
|
Last edited by night_ghost; Aug 04, 2017 at 04:32 AM.
|
|
|
|
|
I've been using the original port on a Revo in a hex since it was released. At the time there was no Pixhawk so I was only comparing performance with an APM but I can say that the Revo outperforms the APM by some margin.
I recently acquired a HK version of the Revo and installed it in a miniquad. After trying Librepilot I installed the old Arducopter port. It was a lot easier for me to set up and get working than Librepilot (never could get the MAG sensor button to go green - so it wouldn't arm). I do miss the features that have been added to Arducopter since. A version of Arducopter that ran on the Revo and was kept updated with the main Arducopter development would be a great idea and so support the revision/rewrite project. Someone has to do it though. As for getting the internal radio working, great idea for large multis and planes, the antenna can be a nuisance to install in minis. |
|
Last edited by mpjf01; Nov 27, 2016 at 01:25 AM.
|
|
|
|
|
|
|
|
|
Thread OP
|
|
|
|
|
|
|
In the meantime I would like tor try the old "QUAD_X_REVOMINI.opfw" taken from the link in the first post.
I tried to flash the Revo Mini with this opfw but I did not succeed. Both librepilot and dronin give me an error when I try to flash the file. Someone managed to do it? |
|
|
|
|
|
I successfully used the .bin file linked to a couple of weeks ago. Remove the .eepe extension, only there so I can post on this forum. I may have used the bootloader too, can't remember now so I have put it here in case.
|
|
|
|
||
|
Quote:
with the file posted I succeed to flash the revo mini and now I see it through apmplanner2 on ubuntu 16.04 did you tried it in flight? |
|
|
||