Flight Board Hacking

Thank you @Satoru_Sasaki
waf-light: error: option --board: invalid choice: ‘skyviper-v2450’
choose from
’aero’, ‘aerofc-v1’, ‘bbbmini’, ‘bebop’, ‘bhat’, ‘blue’, ‘dark’, ‘disco’, ‘erleboard’, ‘erlebrain2’, ‘linux’, ‘minlure’, ‘navio’, ‘navio2’, ‘px4-v1’, ‘px4-v2’, ‘px4-v3’, ‘px4-v4’, ‘pxf’, ‘pxfmini’, ‘raspilot’, ‘sitl’, ‘urus’, ‘zynq’

Previously, I posted these build steps that work for me and my Sky Viper v2450GPS hardware:
https://discuss.ardupilot.org/t/linux-build-for-skyviper-arducopter-fails-with-build-errors/31549/2

My concern is that Ardupilot still builds with NuttX instead of ChiBios. I am surprised to still see NuttX in the build.

I see, sorry I forgot you are building on SkyRocket repository. I think it is before ChibiOS and not updated since it is merged to master.
To get ChibiOS build, you need to work on master. You cannot set parameter through Sonix board web interface, but I can still use other functionality in my case, both copter and plane.

UPDATE: I’m optimistic to be single stepping through ArduPilot code on Sky Viper hardware very soon using the Black Magic Probe so graciously mentioned in the nice documentation here http://ardupilot.org/dev/docs/debugging-with-gdb-on-pixhawk.html

Again, I’m new to ArduPilot. I’m not new to firmware development, but a lot has changed. I have a lot to (re)learn. The gdb debugger has come along way since I used it over 20 years ago. Namely, affordable devices like the Black Magic Probe provide a gdb server for use with embedded systems with JTAG or SWD. Just awesome!

It’s conceivable the Sky Viper v2450GPS Flight controller board supports SWD (Serial Wire Debug) on it’s “debug console” mentioned at the beginning of this thread. Does it? Does anyone know if it does? I will purchase a Black Magic Probe and give it a go and report my findings here. It’s a privilege to help out if I possibly can.

UPDATE: Problem solved. The back of the flight controller board has two connector pads clearly labeled SWDIO and SWCLK. You can see them in tridge’s photo at the top of this thread. Before a few hours ago that meant nothing to me.

(In case my update to my previous message does not trigger an email to the contributors to this thread. Does it?)

How might it work if upgrade my Sky Viper motors to brushless motors and add an ESC (electronic speed control) suitable for the new bigger motors using a separate battery? I might just try it if there are settings for MOT_PWM_TYPE and RC_SPEED that would enable the Sky Viper v2450GPS flight board to provide a suitable control signal.

Hi @Vincent_Randal, MOT_PWM_TYPE should be 0 (if use common RC ESC), RC_SPEED should be 490, could be higher.

I have loaded Sky Viper controller on brushless quad. It is straight forward, I document quick memo here.

Used old 250 quad I have not flown for 3 years or so. Unbrekable but heavy like a brick. Uses 3S 1400mAh, flight time is 10 min or so. ESC firmware is Simonk. 5 inch prop.

This quad motor is for 3s battery, prepared cheap regulator. Gave up voltage monitoring.
I have not updated firmware to master. As is out of the box. Will use default toy TX. Can use Web interface parameter menu.

Solder wires to 4 FETS and ground.

Wire to pin terminal for 4 ESCs.

Fix flight board somehow, done. Weighs 310g without battery…

Calibrated 4 ESCs with servo tester, changed MOT_PWM_TYPE to 0, (have not changed RC_SPEED…) Verified it can arm and motor spins correctly on bench using Web interface and Mission Planner.
I needed to lower PID values as minimum as possible in Mission Planner. Once it can fly, I ran autotune. Attaching log file which was able to do short auto mission.

5 Likes

Hey, awesome hack! I just bought an extra used SV with the same idea in mind (also have an old f250 with brushless I haven’t used in a long time). But it looks like you beat me to it! Haha
Anyways thank you for sharing your experience! I will be trying as soon as my spare gets here. Ill also be adding an onboard RPi zero w running dronekit and possibly an LTE dongle to interface via a web API.

If i can make this work ill be looking into a lighter frame but not sure which frame to use since it has to be light but also have enough space for A LOT of components.

Any ideas?

Lighter frame I do not know. I can find similar sized 240mm frame 60g or so. For lightest or longest duration, I am thinking old AR Drone frame (geared brushless) which can fly at 400g+.

You mean Raspberry Pi APSync? I am not familiar with that but agree SV 2450GPS is too valuable to throw away with high quality parts. It is a waste 10s of thousand SV 2450GPS will be thrown away after motor worn out. :slight_smile:

Very good work. You mentioned firmware for the ESC which has me wondering about ESC function implemented in ArduPilot/ArduCopter code and if it can create the correct PWM control signals but not with enough current due to the limits of the Sky Viper v2450GPS hardware.

I mean a raspberry pi zero w (comes with a wifi board) or a regular zero running dronekit.

I have not looked into APsync, I’m familiar with python and dronekit seems sufficient.

Thanks @Vincent_Randal. SimonK ESC is a basic firmware which can respond to faster PWM up to 490Hz compared to ESC for plane, similar to BLHeli, I am getting PWM signal only from SV board.
ESC is connected directly to 3s battery, SV board is powered through regulator (which I set to 3.2V or so).

Very nice @Satoru_Sasaki. I think I want to duplicate your configuration. I very much the idea of getting PWM signal from SV board. Very nice work you have done @Satoru_Sasaki

Thanks, I would like to upgrade my v2450 camera/tx to save weight. I live at 4200’ asl and this model series appears to be gaining considerable weight, making it’s performance borderline at best, especially at 90° f and light breezes. If one could somehow shed 30g, it would still be heavier than the original airframe design for the v2400HD.
It appears that your photo (and great description) illustrates sdhc support from the FC. Is there anything else in that metal box (besides that and the split vid./tx)? I’d sure like to make it go away. That and the SVvideo app! Aloha Mission Planner!
Again, great work!
(Yes, I’d be willing to spend that much on this little bird)

Hi @Steve.Enomoto, yes high altitude should be a challenge. I heard an advice on electric RC planes to inch up the prop there. (plane with 9 inch prop at sea level will require 10 inch.)
Not sure it is a good idea to give up Sky Viper’s Sonix wifi/camera board. SV flight controller contains Rx, so SV may be able to arm and fly without Sonix board, but I do not want to that because it is scarey not be able to connect APP or Mission Planner/QGC to find flight board status, not be able to log the flight on SD card…

Check this thread on brad112358 's effort to lighten SV by removing a few case and parts. He has posted detailed weight saving info somewhere but I cannot find…
I tried to transfer SV on lighter frame, described here. It is a bit of work and require another tuning.

There is a picture of inside Sonix board shield here. It provides WIFI connection, web server, camera and logging.

Have you tried a 5v regulator? Like the ones out of most PDB?

Aloha! I am considering a camera system like the Runcam Split Mini, which, if I am correct, would handle the wifi and sdhc requirements. I will look into the Logging function. Currently, I am experimenting with props (i.e. 5042 and 5544 3 blade don’t generate enough thrust, 5550 3 blade on the way). I was concerned that going to 6" would put too much stress on the motors. Dropping one tooth on the pinion gear is also a project in the works. I was wondering if anyone had experience with replacement (upgrade) brushed 8520 motors like Micro Motor’s cl-0820 or Globals’ M44A and whether to use 15k or 17k versions?
Saving 15g by switching to the v2450gps means the difference as to whether this extremely upgraded model is even able to fly at this air density.
The quote about "Adequate Power on the Ardupilot site says it all! I am trying to improve BOTH power (5%-15% goal) AND weight (20g+ goal)! I would very much like to continue working with the Sky Viper drones primarily because of their Ardupilot implementation and relatively low cost. If…
Mahalo, SE

Hi @Luiz_Felippe_Ozorio, 5V would be too high for SV. Not tried but SV is designed for max input of 4.2V 1S battery, onboard regulator may generate too much heat. Look for regulator ’
DC-DC Buck Step Down Module’ or similar at eBay etc, they cost less than $1, output voltage is adjustable.

Hi @Steve.Enomoto, Runcam wifi or SD card will not interact with ArduCopter on SV, will not provide connection for SV app or web server.
It may help to replace motor with higher kv one. Micro Motor Warehouse motor is better quality (though expensive), they have several kv to choose from.

1 Like

I found some very tiny and light adjustable step-down power modules which work very well for this application here:

http://a.co/d/cre09ef

They also come in fixed flavors and drive enough current to operate both SkyViper boards. I set one for 4 volts to power the boards. I used another for a 5 volt reference since my ESCs don’t include a BEC.

The 5 volt reference is used for this handy level shifter because my ESCs also don’t reliably work with the 2.8 volt PWM signal put out by the controller board.

http://a.co/d/50CKNcB

As long as I’m here, a few other things I’ve learned and some pictures:

The 10 inch props on this old frame make a lot of vibration in the Z direction. Suspending the controller from the 3 mounting holes with elastic bands neatly solves the vibration problem for little additional weight.

Mount the GPS well away from the RF noise of the controller, camera and the fields of the motor and power wires. Don’t forget to do a full calibration of the sensors, including motor mag field calibration.

The foam over the pressure sensor is important.

Heat shrink tubing works well to stiffen the antennas (upper right of photo) if you want to point them up.

I extended the LED wires to place them (pointing down) under the motors.

I’m still working on a better way to mount the camera to avoid the nasty vibration on this large frame.

1 Like

That looks fun. I’m curious. Why is there such a necessity to move the GPS away from the antenna, when they are packed so closely within the SV frame? Is there some shielding within the frame?

Also, did the pressure sensor have foam over it in the SV frame?

Yes, that is, in fact, the same foam which was sandwiched over the sensor in the original SV frame. It helps avoid moving air over the sensor from disturbing the reading due to the lower pressure of moving air.

The GPS is receiving and correlating very weak signals and it is sensitive to RF noise which processors and radios make. the compass built into the GPS board also benefits from the extra distance from the magnetic fields generated by the power and ESC wires. The SV is so small that there isn’t much choice on GPS placement. They have pointed out that they used a fairly high quality GPS receiver. It is possible that the higher quality and cost was justified because it is so close to noise sources. GPS does seem to work just a little better on the original frame after I added some additional shielding. I posted about the shield I added to the SV frame a few months ago if you care to search for it.

2 Likes