January 26, 2022, 23:23:02
News: Skyartec for 9x project is now up

LunarFlow R/C

Show Posts

Messages | * Topics | Attachments

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - chris

Pages: [1]
Projects / Honda motorcycle OBD/k-line interface gear indicator
« on: April 03, 2017, 23:53:37 »
I'm building a gear indicator and information display for my CBR500R. It uses an Arduino Pro Mini, Nokia 5110 display, and hooks in to the Honda diagnostic connector under the seat. Protocol is a custom OBD k-line format. Here is some useful information on the protocol used.

The first version I created used 2N7000 MOSFET's for the serial interface and it worked fine on a breadboard. However, before I could build the final physical version I received some LIN transceivers that should simplify the circuit considerably. I'm working on a new version of the hardware design now.

Projects / FemtoWii
« on: March 12, 2014, 13:29:44 »
This is a small 25mm by 30mm MultiWii board I started designing a while ago. I haven't had much time to refine or test it. I did create a prototype board but that's about it. The intent was to create a board small enough to be used on micro quads, helicopters, and planes.

I'm providing the KiCad schematic and board layout here.

Projects / FrSky Taranis
« on: July 17, 2013, 22:10:44 »
The radio doesn't sit flat on the bottom when you set it down on a level surface.

External TX module pins must be bent to fit modules.

Projects / Blade 130X
« on: June 18, 2013, 23:31:02 »
Project 130X.

Had a Rakon DFC CNC head that was not square from the factory so I pounded on it with a hammer to make it straight.  :)

It appears to be possible to use an S107 tail motor to repair/replace the 130x servo motor.  The S107 motor is 4mm and the servo motor is normally 5mm so there is some extra space.  I used a piece of 1.5mm carbon rod to take up the extra space and it seems to work fine.  I may try to find some other method of holding the motor in place.  Also, rumour is that some S107 clones have 5mm tail motors.

Projects / mCPX
« on: May 24, 2013, 15:10:44 »
Bought a cheap mCPX off eBay that had a broken 3-in-1.  Fixed the 3-in-1 and converted to brushless using C05XL and super-FET XP-3A (double FET's).

Main motor PWM signal (from resistor on back of board) is 1kHz.  On the 9x using OrangeRX TX module throttle ranges from -72% (completely off) to +72% (solid full throttle signal).

Projects / V922
« on: April 29, 2013, 00:04:14 »
See also my HiSKY/HT8 for 9x thread.

Attached is my ER9x model for the V922.  I have the HT8 set for Futaba mode.  Note this model has no "beginner" mode or even idle-down (ie. full 3D always).  To fly start with the F.MODE switch all the way up (ID0), move pitch/throttle to mid-stick, then switch F.MODE down one click to "1".  It will spin up to full throttle within a few seconds.  The throttle cut switch works but what I do is just flick the F.MODE switch all the way up, this is much faster than reaching for the throttle cut.

These are the settings used in the model:

PPM FrLen16.5mSec
PPM Shift SelNEG
ELE DirectionINV
AIL DirectionINV
Swash Type120
Swash Ring100
Throttleflat 100%
Pitch± 68%

WLToys V922 tuning 3D

I have converted to brushless using the HK 14000kv motor and a modified HK XP-3A ESC that has new double-stacked FET's.  I'm using Hyperion 550 mAh batteries for about 6:30 minutes flight time.

I measured the PWM signal on the main motor FET gate. It appears to have an 80us cycle time which means 12.5 kHz signal. With a 9x/HT8 the PWM signal starts minimum throttle (18% duty cycle) at approximately -52% and is full throttle at around 39%. These are only approximate because of calibration and PPM timing differences between radios.

Attached to this thread is a custom version of BLHeli specifically built for the V922.  BLHeli normally only supports a maximum of 8kHz PWM on its signal wire but the V922 motor output runs at 12.5kHz.  What this does is make the throttle skip from 66% to 100% with no way to use any value in between.  My custom version of BLHeli multiplies the signal by 1.5 to bring the 8kHz calculations up to 12kHz and this makes the throttle perfectly linear.  Also attached are patch files that show the source changes I made.  I built versions using BLHeli 9.4 and 10.3.  I use 9.4 but the latest BLHeli is 10.3.

BLHeli 10.4 now supports 12kHz so no need to use my version of BLHeli unless you want to run an older version (I currently still use 9.4).

WLToys V922 brushless test 3D

New paper canopy, although I think I'm going to end up using this on my mCPX.  It's made with card stock which is a little too heavy for my liking (3.7g).  I'm going to try to make another with lighter materials.

Projects / HiSKY for 9x
« on: April 29, 2013, 00:00:01 »
See also my V922 thread.

Projects / Skyartec TX module for the 9x
« on: April 20, 2013, 15:31:07 »
This is a TX module for the 9x that works with Skyartec receivers (eg. Wasp 100 Nano CP, etc). It uses an off-the-shelf generic CC2500 module (eBay/China) and has an integrated LNA that provides 100mW output. The RF module is controlled by an Arduino Pro Mini board which converts the PPM signal from the 9x to the Skyartec protocol.  The TX module runs at 3.3V and uses a single 2N7000 MOSFET for level conversion of the 5V 9x PPM signal.

I fly with a fairly low power setting.  If you look in "skyartec9x.ino" at the skyartec_init() function the power output can be increased.  The current code looks like:
Code: [Select]
CC2500_WriteReg(CC2500_3E_PATABLE, CC2500_97_PWR10DN);  That can be changed to:
Code: [Select]
CC2500_WriteReg(CC2500_3E_PATABLE, CC2500_FF_PWR1UP); for maximum power.

This is the CC2500 module I used:

Although almost any CC2500 module will work.

I use a separate power supply and 9x interface board that supplies the 3.3v and PPM signal.

Skyartec Wasp 100 Nano CP with Turnigy 9x

Projects / Easily build simonk firmware on Windows
« on: March 31, 2012, 15:51:00 »
This project is to make changing the simonk ESC firmware settings a little easier if you're using Windows.  This assumes you have downloaded the simonk firmware and have a directory with all the files in it.

First download this zip and extract the two files inside in to your simonk directory.

Now edit the "tgy.asm" file with a text editor to change the settings you want.  You may need to use Wordpad or other editor because Notepad may not work correctly.  If you scroll down a bit in this "tgy.asm" file you will see settings like:
Code: [Select]
.equ  MOTOR_BRAKE = 0   ; Enable brake during neutral/idle ("motor drag" brake)
.equ  LOW_BRAKE   = 0   ; Enable brake on very short RC pulse ("thumb" brake like on Airtronics XL2P)
.equ  MOTOR_REVERSE  = 0   ; Reverse normal commutation direction
.equ  RC_PULS_REVERSE   = 0   ; Enable RC-car style forward/reverse throttle
.equ  RC_CALIBRATION = 1   ; Support run-time calibration of min/max pulse lengths

For example if you wanted to reverse the motor direction then change MOTOR_REVERSE to be equal 1.

Once you have made these changes and saved the tgy.asm file then just run the "make.bat" command you extracted earlier and it will build new hex files with your new settings.

As always, make sure to use the correct hex file for your ESC and take appropriate precautions when testing the first time.  Make sure to read the simonk documentation about testing on this page:  https://github.com/sim-/tgy

Projects / Arduino USB Linker
« on: October 22, 2012, 21:26:00 »

Projects / MultiWiiCL
« on: March 16, 2013, 15:37:00 »

This is a command line text based tool for configuring MultiWii. It also provides a full scripting environment for whatever fancy future use. I needed this because MultiWiiConf wouldn't run at all on my old laptop and on my newer laptop it was really slow and too fat. :P I also wanted a way to save and restore my PID settings that MultiWii keeps erasing when I load different versions and I wanted to be able to very accurately set my PID settings where the GUI has problems getting it right every time.I just started working on this and it's currently in a very alpha state but it works. Source code is available on the project page and binaries are available that run on Linux, OS X, and Windows. Most have no dependencies on external libraries or anything, simply run it. :)

As a quick test/intro you can run:

Code: [Select]

Substitute COM7 for your serial port or use something like /dev/ttyUSB0 on Linux.

I'm working on the documentation. help() will show a list of commands and help("commandname") will display help for that command. The commands consist of basically all the MSP_* commands in MultiWii and other functionality. It has some initial support for my Arduino USB Linker project.

MultiWiiCL downloads and link to project page.

Donations are accepted if you feel the desire.

To be continued

Projects / DEVO TX module for the 9x
« on: December 02, 2012, 01:19:00 »
I have been flying a Genius CP (DEVO) with a 9x for a few days now and while I probably don't have all the issues worked out I figured it's time to post some information. This will be a continuous work in progress.

BEWARE, the MTC-01 is known to be flaky at times and especially running this nonstandard configuration it could be dangerous. This is for informational purposes only, everything below could be incorrect, don't try this at home.

First a quick start for the impatient:
  • Models created to be used with the MTC-01 should use a 23.5ms frame time with 400us pulse separator length. Do not use more than 8 channels (less is better) and if you're using an old MTC-01 with the original firmware it is a good idea to set any channels you're not using to -100 to help prevent the "channel mixup" issue. Newer MTC-01's don't have this problem.
  • Binding requires first plugging the MTC-01 into your 9x, then turn on the DEVO RX, finally turn on the MTC-01. MTC-01 should have a solid blue light and the DEVO RX should have a flashing light.
  • Next wiggle the stick, switch, or whatever that is on channel 2. The MTC-01's blue light should start flashing. Within a second or two the DEVO RX's light should go solid.
  • Wiggle the stick on channel 2 again. Now the MTC-01's green light should start flashing. Within a second or two the DEVO RX should initialize (on my Genius CP the heli "comes alive" and wiggles the collective at this point).
  • Now you're ready to fly.
Once bound if you do not power off the MTC-01 then it will rebind to the same RX automatically without having to go through the steps above.

Apparently there are two versions of the MTC-01, the new one just being released recently. Lets call these v1 and v2. I do not know what the differences are but there are hardware changes and probably firmware. Supposedly the v2 fixes some issues with failsafe and possibly the "channel mixup" issue. There is also a new firmware for the v1 that fixes the "channel mixup" issue but it's unclear if that actually fixes it or not.

The channel mixup issue is where the MTC-01 will get out of sync with the PPM stream and start transmitting the wrong channels to the receiver. In other words the channel order gets mixed up. Obviously this is very bad and dangerous when flying.

The failsafe issue comes in to play if you disconnect a v1 MTC-01 from your radio while it's still powered on. Apparently it can start sending random channel data like full throttle to your model. If that happens you need to turn off the MTC-01 as fast as you can, this will hopefully send your DEVO RX into its own failsafe mode.

My MTC-01 is a v1 and it also runs the old buggy firmware. This is all I have experience with and is what all my testing has been done with. I would be happy to try a new v2 MTC-01 or upgrade the firmware on mine if someone sends me one of the v2 MTC-01's and/or a DP02 firmware upgrade cable. :D

Alright, lets get into the details.

The first thing that needs to be done is to connect the MTC-01 to the 9x. The MTC-01 comes with a cable that can be plugged into the 9x's trainer port and this works fine. However, I put my MTC-01 board inside a 9x style TX module. This gives me a little more range because of the better external antenna and I power the MTC-01 from my radio so I never have to worry about its battery. I built a small PCB that has a 3.3V voltage regulator to supply power and connect to the 9x module pins (make sure the regulator can handle the full battery voltage from the radio). The audio plug needs to be removed from the board for it to fit in the case. The internal antenna can be removed and coax soldered in for an external antenna. I'm thinking of adding an RF amplifier in there as well to get a power boost and more range.

Once the MTC-01 is connected to the 9x now we need to create a model. I'm using er9x on my 9x which gives great control of everything. Other firmwares may be slightly different or possibly not work at all if they can't be configured properly, let me know.

Some adjustments need to be made to the PPM signal for the MTC-01 to recognize it. The frame length should be no longer than 24ms. I use 23.5ms. The most important setting is the pulse separator length should be 400us. The MTC-01 will also accept 350us but I have had problems with glitching when using that timing. My WK radio actually uses around 423us so I'm not sure how precise this value needs to be. On the v1 with the old firmware my guess is the channel mixup issue is caused by the PPM frame sync pulse not being long enough so if you use too many channels or too many channels have long enough pulses then the MTC-01 goes haywire and loses sync. To avoid problems either run less than 8 channels or with 8 channels I run the longest frame time I can and I set any channels I'm not using to -100 which makes their pulse as short as possible therefore giving a longer sync pulse.

See the quick start above for binding information.

Well, that's it for now! Simple right? Now the hard part, :), I will make a follow up post below to describe how I set up my Genius CP to work with my 9x.

Projects / Warthox inspired 400mm quad project
« on: October 30, 2012, 22:34:00 »
First I used LibreCAD to create a frame design. Inspired by Warthox but smaller. Then I printed it on copper clad board using an inkjet so I would have an accurate pattern to follow. I drilled all the rounded corners then cut the rest with a cut off wheel. I can't easily express how much I hate cutting thick tough nasty fiberglass PCB.  >:(

Next I used KiCad to create a circuit board for the electronic bits. Printed on a laser printer with magazine paper, ironed on, etched in my home-grown cupric chloride (love that stuff). This is a temporary design because I don't have any 90 degree headers which means this one is going to be messy but I want to fly now:)

Drilled and painted board.

Power distribution. Silicon wire is heavy. I started with PVC insulated wire for testing and the quad was 10g lighter.

Putting together the final bits. I intentionally left the copper on the frame. It's painted with enamel clearcoat to prevent oxidation.

As it flies today.

  • Custom frame.
  • Custom cut/drilled aluminum arms with custom blood red metallic candy paint. 1/2" tube, 390mm motor to motor.
  • BlueSeries 12A ESC flashed with simonk.
  • Suppo 2208/17 1100kv motors.
  • 8x4.5 Gemfan "carbon" props.
  • Custom control board with Pro Mini, 10 DOF IMU (MPU6050, MS5611, HMC5883L).
  • Battery warning buzzer made from the piezo buzzer out of an old V911 TX.
  • Running MultiWii_shared from svn with my custom ArduinoUSBLinker firmware for re-flashing the ESC's.

Weight is 396g without battery (was 385g with PVC wire  ::)).

575g AUW with 2200 mAh 25C lipo. Around 20 minutes flight time.

Pages: [1]

© 2022 Lunarflow
© 2022 Simple Machines
SimplePortal 2.3.7 © 2008-2022, SimplePortal