HobbyKing.com New Products Flash Sale
Reply
Thread Tools
Old Feb 13, 2009, 06:52 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
Mini-HowTo
Mecevans Paparazzi How-to Guide

Hello all,
Here i will document all my progress and experiences with my Tiny 2.11. I will take pictures and document everything as much as possible to aid others interested in paparazzi. if there is writing or fact error's in this mini how to please email me at Mecevans-at-gmail.com with corrections.

.....Useful links.....

http://paparazzi.enac.fr/wiki/Main_Page -wiki
http://lists.nongnu.org/mailman/list...aparazzi-devel -mailing list sign up
http://www.engr.usu.edu/wiki/index.php/OSAM - college paparazzi project
http://www.patogara.com -build blog
http://www.mannberg.co.uk/paparazzi/ - another paparazzi how to guide
http://ppzuav.com/osc/catalog/index.php -hardware
http://diydrones.com/
http://www.rcgroups.com/forums/showthread.php?t=851820 - Rcgroups paparazzi forum
http://embed.mibbit.com/?server=irc....erNotices=true -paparazzi chat room (please join!)
http://paparazzi.enac.fr/wiki_images/Users_manual.pdf - field guide

CAN I DO IT?

Yes you can! . if you can read and follow instructions, you can build and fly a paparazzi system. Me, an average high school student is writing this guide!


------Where do i start?------

The first step is to sign up for the WIKI, Mailing List , and join the paparazzi Chatroom . Read the entire wiki head-to-toe and then if you still have any questions ask.

------Which autopilot is right for me? ------

After reading the entire paparazzi WIKI and saving my money I was ready to consider purchasing or building a complete system. I set a real, saved up budget of $1000US to get things going. I set curtain goal in which i wanted to achieve now, and down the road. The original thread is HERE

.....My goals.....
  • I plan to spend $1000US
  • I would like to be able to carry a video or digital camera now or in the near future
  • I would like to trigger or control the cameras with paparazzi
  • I would like long flight times (20-30 minutes or more)
  • I wanted to have everything build, tested and tuned in less than 2 months
Because of my time frame and budget i set my mind on pre-assembled and programmed autopilots from PPZUAV .the choices were the tiny 2.11 or the TWOG . I even made paper cutouts to get an idea of how amazingly small these things really are. This was not an overnight decision; I had messaged many people with all different levels of experience with paparazzi. The tiny 2.11 is a great first step into the world of UAV's and everything is one board.

Next on the list was the radio modems, either 900 MHz or 2.4 GHz from digi. Originally the kit comes with 2.4 GHz xbee pro V2 but you can request other if you like. After posting THIS thread and contacting David from PPZUAV he convinced me to try the newly released Xbee pro XSC's. My final step with the hardware side of things was to either buy or build the PPM tapped receiver. Luckily the ones pre-modded from PPZUAV were on sale.

.....Parts list.....

------Installing and using the paparazzi GCS------

While waiting for my order to come from David, I set up my laptop to run Ubuntu for paparazzi. The laptop I am going to use is a fairly new HP Pavilion DV5215US with windows already installed. The battery in the laptop only lasted 10 minutes so I ordered a replacement 8 hour battery for field use.You can either use the live CD or install ubuntu and paparazzi separately.

.....Making the live cd.....
  • plug in charger and boot windows
  • download the Latest Live Cd from the repository and saved it to the desktop
  • use your own or install THIS iso burner
  • insert a blank cd and install/run the iso burner
  • select the live cd file you just downloaded and your cd drive
  • burn (Once it’s done don't forget to label it!)

.....Installing or booting from the cd.....
-A) to boot from the cd simply put the cd into the tray and restart. Select "try Ubuntu without any changes to your computer"
-B) to install ubuntu onto your hard drive, click “install Ubuntu” and follow the guide. i used a partitioned space to install Ubuntu so i could also use Windows XP because you still need it. On startup it will ask what operating system you would like to boot.

......Updating......
The live cd may not always come with the newest paparazzi software so it is important to update it every once in a while. this will search through all paparazzi folder and determine if it needs to be updated rather than completely copying over all files like the tarballs do.
  • open terminal
  • enter your paparazzi3 directory(cd paparazzi3)
  • cvs update
mecevans is offline Find More Posts by mecevans
Last edited by mecevans; Apr 01, 2009 at 10:33 PM.
Reply With Quote
Sign up now
to remove ads between posts
Old Feb 13, 2009, 06:52 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
------What to do when your waiting for your system------

......Clean the work area......

as much as i hate cleaning my room, i wanted to keep everything neat and organized. i threw a bunch of stuff out of some drawers so i can make room for notes,documents, hardware, etc. a clean work area saves time, energy, and possibly money. clean!!!!!

.....Playing with the GCS......
I had some free time so i decided to learn about this powerful GCS. i wanted to simulate and know how to use all the buttons and features. If you have not done so, download and/or print THIS field manual, and read through it. Here are my steps to get the GCS set up....

.....Setup.....
  • Double click on the paparazzi icon located in Applications>Other>paparazzi . i dragged the icon to the desktop to make it easy to get to. click ok.
  • Click A/C>new A/C, then name it. (ex: MecevansUAV )
  • On the airframe section click Edit, the text editor will pop up. File>Save as, and rename it.(ex: MecevansUAV )
  • Rename all the others. (ex:setting=Mecevans,Flight Plan=FortOrd Radio=Optic6, Telemetry=900MhzXSC )
  • Find the coordinates of your flight area with google earth or HERE. make sure its in decimal form,and write it down.
  • now go back to paparazzi and click Flight Plan>Text Editor. Change the spaces i put words in only! (ex: latitude,longitude,max distance from home=700m) REMEMBER EVERTHINGS IN METERS! now save as. (ex: FortOrd ).
  • A/C>Save

.....Simulation.....
  • Under target make sure SIM is selected, click build.
  • Under Session make sure Simulation is selected.Click execute!
  • when the GCS opens up click the google icon, let it load the tiles. it will automatically save them too.
  • to take off: click the runway then the green launch button, your flying!
  • mess around with the simulation untill you have a general understanding how it works.
mecevans is offline Find More Posts by mecevans
Last edited by mecevans; Apr 01, 2009 at 02:07 AM.
Reply With Quote
Old Feb 13, 2009, 06:53 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
------I got all my parts! Now what?------

THE FIRST THING TO DO IS ADD YOURSELF TO THE WIKI'S USER'S LIST!
-note: if you need any help with this PM me.

Everything will be assuming we are using the funjet1.xml for testing, digi 900 mhz xbee pro for modems.

.....Handling and turning on the tiny.....

So your anxious to turn this baby on huh? well stop and read this!

Always touch the end's of the PCB. try to ground yourself to whatever the tiny is on; touch the table, touch a power outlet face plate screw,use a ground strap,try not to rub feet on carpet. Put it back in the antistatic bag until you install it into your airframe. the molex connectors lock very well make sure you put the lock tab the right way. use your nails to grab the ends and gently wiggle out when removing. never yank on the wires! check the wires for weak solder joints (one wire broke on my FTDI cable). whenever you move it put it on a flat, stable surface with a piece of paper or something underneath.

lay out all of components on a clean,non conductive surface, i put mine on a hobby cutting mat. look at everything and get familiar with the components. The first thing you need to do is solder a connector of your preference to the tiny's (+ -) tabs, in my case JST. now go outside and plug it in, observe what happens.

blinking red- software running
blinking green- GPS locked.

*note* if your tiny is not programed by the seller, read THIS to learn what to do.

-----Flashing the tiny-----


My tiny was already programed when i received it, but there are a couple lines to edit in Airframe.
  • Follow this GUIDE to editing your Airframe.,
  • open the paparazzi software and your A/C
  • session=ap , enter an ID (any number)
  • build
  • plug in pc>usb cable>usb to picoblade>usb on tiny
  • plug in battery
  • upload, red light will flash once its done

-----Talking to the tiny with the GCS-----

.....Using the FTDI cable.....

i wanted to connect the tiny to the GCS and see some real time data. prepare your laptop and boot ubuntu. you will need a spare usb cable, the tiny, and the FTDI cable and board.
  • Load the paparazzi GCS
  • load your A/C. (ex. MecevansUAV)
  • Airframe>funjet1.xml, one you just edited
  • Target>ap
  • Session>Usb-serial@9600
  • Click build
  • Plug in FTDI>Serial, Usb>FTDI, and plug in battery.
  • Execute

click the Google icon, center A/C and you should see the area you changed the coordinates to. real time data from the tiny should be there.


......Using the modems......

I got really lucky when it came time to try out the modems. they were already programed and all i had to do was hook everything up. I bought a 3 dBi rubber duck antenna and a shielded usb came from l-com.com . i used the "Flight Usb-serial@9600" for session and it worked without having to change anything. i made a cool stand for my ground modem with some spare balsa and 2 screws.

tiny-
pico-blade to 10 pin connector> black wire goes to pin one on left side of modem, with wire antenna.

ground-
sparkfun board> modem> USB


-----Test rig and seting up IR sensors-----

I saw a really neat IDEA for a test rig over at THIS site, so i stole the idea and made my own. Try not to touch the IR sensors at all because your can fry the chip on them very easily. I used rubber bands and foam to secure it to a stick i found around the house. I made sure it was snug on the stick and not pushing on anything too hard. just enough to secure it in any angle. SENSORS ARE EXTREMELY SENSITIVE TO PRESSURE.DONT ASK HOW I KNOW

I was unlucky and received a faulty horizontal sensor. David sent me a horizontal and vertical FMA sensor until he figures out what's up with the PPZ ones.Sensors can not be mixed. Details on the FMA sensors can be found HERE . Once the mating connectors where soldered,i connected them to the tiny and observed the PFD move around. to confirm that the sensors are oriented the correct way put your hand under the vertical sensor and it should have sky up(blue).

Calibrate the sensors
  • open your airframe file look for this
    Code:
    <section name="INFRARED" prefix="IR_">
        <define name="ADC_IR1_NEUTRAL" value="512"/>
        <define name="ADC_IR2_NEUTRAL" value="512"/>
        <define name="ADC_TOP_NEUTRAL" value="512"/>
    and change the "512" to "0" and save.
  • Build and flash tiny with new files.
  • Setup your modems
  • Encase all sensors in about 2 inches of foam and/or put them in a cabinet once your battery is plugged in. I put mine in a heavy chest.
  • Build and execute to get to the GCS
  • Tools> Messages and Real-Time Plotter
  • In messages look for IR_SENSORS, click it.
  • Drag and drop "int16 ir1","int16 ir2",and "int16 vertical" into Real-Time Plotter
  • let it build a stable graph, about 10 minutes.
  • Curves> and get the Average for each one. write it down.
  • Take those numbers and put them in place of the 0's in the first step and save.
  • Flash tiny


more to come...........
mecevans is offline Find More Posts by mecevans
Last edited by mecevans; Mar 31, 2009 at 12:53 AM.
Reply With Quote
Old Feb 13, 2009, 06:54 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
......ORIENTATION......

next is to get the IR sensors oriented the correct way. i had a science fair and i stayed up till 3am on the day of the fair figuring it all out! .thankfully the guys on the IRC channel took me through each step. lets set up the sensors to be ALIGNED, or along each axis rather then TILTED 45 degrees.
  • either connect to the tiny via modems or FTDI
  • load the GCS.
  • TOOLS>MESSAGES, IR tab.
  • everything will be done as if you are looking towards the REAR of the plane
  • put your finger UNDER the VERTICAL sensor, "int16 vertical" should go POSITIVE. If not, flip it around.
  • put your finger on each one of the horizontal sensors until "int16 ir1" goes POSITIVE. position it to the RIGHT.
  • put your finger on each one of the horizontal sensors until "int16 ir2" goes POSITIVE. position it FORWARD.
  • Use the edited Funjet1.xml below. enter in your neutrals.
  • flash tiny

Code:
<!DOCTYPE airframe SYSTEM "airframe.dtd">

<!-- Funjet Multiplex (http://www.multiplex-rc.de/)
     Tiny 2.1 board (http://paparazzi.enac.fr/wiki/index.php/Tiny_v2)
     Tilted infrared sensor (http://paparazzi.enac.fr/wiki/index.php/Image:Tiny_v2_1_Funjet.jpg)
     Radiotronix modem
-->

<airframe name="Funjet 1 Tiny 2.1">

<!-- commands section -->
  <servos>
    <servo name="MOTOR"         no="0" min="1000" neutral="1000" max="2000"/>
    <servo name="AILEVON_LEFT"  no="2" min="1130" neutral="1500" max="1880"/>
    <servo name="AILEVON_RIGHT" no="6" min="1980" neutral="1515" max="1170"/>
  </servos>

  <commands>
    <axis name="THROTTLE" failsafe_value="0"/>
    <axis name="ROLL"     failsafe_value="0"/>
    <axis name="PITCH"    failsafe_value="0"/>
  </commands>

  <rc_commands>
    <set command="THROTTLE" value="@THROTTLE"/>
    <set command="ROLL"     value="@ROLL"/>
    <set command="PITCH"    value="@PITCH"/>
  </rc_commands>

  <section name="MIXER">
    <define name="AILEVON_AILERON_RATE" value="0.75"/>
    <define name="AILEVON_ELEVATOR_RATE" value="0.75"/>
  </section>

  <command_laws>
    <let var="aileron"  value="@ROLL  * AILEVON_AILERON_RATE"/>
    <let var="elevator" value="@PITCH * AILEVON_ELEVATOR_RATE"/>  
    <set servo="MOTOR"           value="@THROTTLE"/>
    <set servo="AILEVON_LEFT"  value="$elevator + $aileron"/>
    <set servo="AILEVON_RIGHT" value="$elevator - $aileron"/>
  </command_laws>

  <section name="AUTO1" prefix="AUTO1_">
    <define name="MAX_ROLL" value="0.85"/>
    <define name="MAX_PITCH" value="0.6"/>
  </section>

  <section name="adc" prefix="ADC_CHANNEL_">
    <define name="IR1" value="ADC_1"/>
    <define name="IR2" value="ADC_2"/>
    <define name="IR_TOP" value="ADC_0"/>
    <define name="IR_NB_SAMPLES" value="16"/>
  </section>

  <section name="INFRARED" prefix="IR_">
    <define name="ADC_IR1_NEUTRAL" value="514"/>
    <define name="ADC_IR2_NEUTRAL" value="512"/>
    <define name="ADC_TOP_NEUTRAL" value="511"/>

    <define name="LATERAL_CORRECTION" value="1."/>
    <define name="LONGITUDINAL_CORRECTION" value="1."/>
    <define name="VERTICAL_CORRECTION" value="1."/>

    <define name="HORIZ_SENSOR_ALIGNED" value="1"/>
    <define name="IR2_SIGN" value="-1"/>
    <define name="TOP_SIGN" value="-1"/>

    <define name="ROLL_NEUTRAL_DEFAULT" value="-3.6" unit="deg"/>
    <define name="PITCH_NEUTRAL_DEFAULT" value="6" unit="deg"/>

    <define name="CORRECTION_UP" value="1."/>
    <define name="CORRECTION_DOWN" value="1."/>
    <define name="CORRECTION_LEFT" value="1."/>
    <define name="CORRECTION_RIGHT" value="1."/>
  </section>

  <section name="BAT">
    <define name="MILLIAMP_PER_PERCENT" value="0.86"/>
    <define name="CATASTROPHIC_BAT_LEVEL" value="6.8" unit="V"/>
    <define name="LOW_BAT_LEVEL" value="" unit="7.0"/>
    <define name="MAX_BAT_LEVEL" value="8.4" unit="V"/>
  </section>
 
  <section name="MISC">
    <define name="NOMINAL_AIRSPEED" value="17." unit="m/s"/>
    <define name="CARROT" value="5." unit="s"/>
    <define name="KILL_MODE_DISTANCE" value="(1.5*MAX_DIST_FROM_HOME)"/>
    <define name="CONTROL_RATE" value="60" unit="Hz"/>
<!--    <define name="XBEE_INIT" value="\"ATPL2\rATRN1\rATTT80\r\""/> -->
<!--    <define name="NO_XBEE_API_INIT" value="TRUE"/> -->
    <define name="ALT_KALMAN_ENABLED" value="TRUE"/>

    <define name="TRIGGER_DELAY" value="1."/>
    <define name="DEFAULT_CIRCLE_RADIUS" value="80."/>
    <define name="MIN_CIRCLE_RADIUS" value="50."/>
  </section>
 
  <section name="VERTICAL CONTROL" prefix="V_CTL_">

    <define name="POWER_CTL_BAT_NOMINAL" value="7.4" unit="volt"/>
    <!-- outer loop proportional gain -->
    <define name="ALTITUDE_PGAIN" value="-0.04"/>
    <!-- outer loop saturation -->
    <define name="ALTITUDE_MAX_CLIMB" value="2."/>

    <!-- auto throttle inner loop -->
    <define name="AUTO_THROTTLE_NOMINAL_CRUISE_THROTTLE" value="0.35"/>
    <define name="AUTO_THROTTLE_MIN_CRUISE_THROTTLE" value="0.3"/>
    <define name="AUTO_THROTTLE_MAX_CRUISE_THROTTLE" value="0.80"/>
    <define name="AUTO_THROTTLE_LOITER_TRIM" value="1500"/>
    <define name="AUTO_THROTTLE_DASH_TRIM" value="-1000"/>
    <define name="AUTO_THROTTLE_CLIMB_THROTTLE_INCREMENT" value="0.1" unit="%/(m/s)"/>
    <define name="AUTO_THROTTLE_PGAIN" value="-0.02"/>
    <define name="AUTO_THROTTLE_IGAIN" value="0.1"/>
    <define name="AUTO_THROTTLE_PITCH_OF_VZ_PGAIN" value="0.1"/>

    <!-- auto pitch inner loop -->
    <define name="AUTO_PITCH_PGAIN" value="-0.05"/>
    <define name="AUTO_PITCH_IGAIN" value="0.075"/>
    <define name="AUTO_PITCH_MAX_PITCH" value="0.35"/>
    <define name="AUTO_PITCH_MIN_PITCH" value="-0.35"/>

   <define name="THROTTLE_SLEW" value="0.5"/>

  </section>

  <section name="HORIZONTAL CONTROL" prefix="H_CTL_">
    <define name="COURSE_PGAIN" value="-1.2"/>

    <define name="ROLL_MAX_SETPOINT" value="0.7" unit="radians"/>
    <define name="PITCH_MAX_SETPOINT" value="0.5" unit="radians"/>
    <define name="PITCH_MIN_SETPOINT" value="-0.5" unit="radians"/>

    <define name="PITCH_PGAIN" value="-10000."/>
    <define name="PITCH_DGAIN" value="1.5"/>

    <define name="ELEVATOR_OF_ROLL" value="2500"/>

    <define name="ROLL_ATTITUDE_GAIN" value="-7500"/>
    <define name="ROLL_RATE_GAIN" value="-1500"/>
  </section>

  <section name="NAV">
    <define name="NAV_PITCH" value="0."/>
    <define name="NAV_GLIDE_PITCH_TRIM" value="0"/>
  </section>

  <section name="AGGRESSIVE" prefix="AGR_">
    <define name="BLEND_START" value="20"/><!-- Altitude Error to Initiate Aggressive Climb CANNOT BE ZERO!!-->
    <define name="BLEND_END" value="10"/><!-- Altitude Error to Blend Aggressive to Regular Climb Modes  CANNOT BE ZERO!!-->
    <define name="CLIMB_THROTTLE" value="0.7"/><!-- Gaz for Aggressive Climb -->
    <define name="CLIMB_PITCH" value="0.25"/><!-- Pitch for Aggressive Climb -->
    <define name="DESCENT_THROTTLE" value="0.1"/><!-- Gaz for Aggressive Decent -->
    <define name="DESCENT_PITCH" value="-0.15"/><!-- Pitch for Aggressive Decent -->
    <define name="CLIMB_NAV_RATIO" value="0.8"/><!-- Percent Navigation for Altitude Error Equal to Start Altitude -->
    <define name="DESCENT_NAV_RATIO" value="1.0"/>
    </section>


  <section name="GYRO_GAINS">
    <define name="GYRO_MAX_RATE" value="200."/>
    <define name="ROLLRATESUM_NB_SAMPLES" value="64"/>
    <define name="ALT_ROLL__PGAIN" value="1.0"/>
    <define name="ROLL_RATE_PGAIN" value="1000.0"/>
    <define name="ROLL_RATE_IGAIN" value="0.0"/>
    <define name="ROLL_RATE_DGAIN" value="0.0"/>
  </section>

  <section name="FAILSAFE" prefix="FAILSAFE_">
	<define name="DELAY_WITHOUT_GPS" value="1" unit="s"/>
    	<define name="DEFAULT_THROTTLE" value="0.3" unit="%"/>
    	<define name="DEFAULT_ROLL" value="0.3" unit="rad"/>
    	<define name="DEFAULT_PITCH" value="0.5" unit="rad"/>
	<define name="HOME_RADIUS" value="100" unit="m"/>
</section>
 
<!--
 <section name="DATALINK" prefix="DATALINK_">
    <define name="DEVICE_TYPE" value="PPRZ"/>
    <define name="DEVICE_ADDRESS" value="...."/>
  </section>
-->

  <section name="Digital camera telecommand">
    <!-- IOs are seen as LEDs -->

    <define name="LED_6_BANK" value="0"/>
    <define name="LED_6_PIN" value="2"/> <!-- I2C SCL -->

    <!-- ADC 5 -->
    <define name="LED_7_BANK" value="0"/>
    <define name="LED_7_PIN" value="3"/> <!-- I2C SDA -->

    <define name="DC_SHUTTER_LED" value="6"/> <!-- Grey wire -->
    <define name="DC_ZOOM_LED" value="7"/>
  </section>
 
 <makefile>
CONFIG = \"tiny_2_1_1.h\"

include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile

FLASH_MODE=IAP

ap.CFLAGS +=  -DFBW -DAP -DCONFIG=$(CONFIG) -DLED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c

ap.srcs += commands.c

ap.CFLAGS += -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017
ap.srcs += $(SRC_ARCH)/servos_4017_hw.c actuators.c

ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_TYPE=RC_FUTABA
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c  

#XBEE ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B9600
#XBEE ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c

#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c


ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c 

ap.CFLAGS += -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2
ap.srcs += $(SRC_ARCH)/adc_hw.c

ap.CFLAGS += -DGPS -DUBX -DUSE_UART0 -DGPS_LINK=Uart0 -DUART0_BAUD=B38400 -DGPS_LED=2 -DGPS_USE_LATLONG
ap.srcs += gps_ubx.c gps.c latlong.c

ap.CFLAGS += -DINFRARED -DALT_KALMAN
ap.srcs += infrared.c estimator.c

ap.CFLAGS += -DNAV -DAGR_CLIMB -DLOITER_TRIM
ap.srcs += nav.c fw_h_ctl.c fw_v_ctl.c
ap.srcs += nav_line.c nav_survey_rectangle.c

########## Barometer (SPI)
#ap.CFLAGS += -DUSE_SPI -DSPI_MASTER -DUSE_SPI_SLAVE0 -DUSE_BARO_MS5534A
#ap.srcs += spi.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/baro_MS5534A.c

########## Chemo sensor (I2C)
#ap.srcs += i2c.c arm7/i2c_hw.c enose.c chemo_detect.c
#ap.CFLAGS += -DUSE_I2C -DENOSE

# Digital camera
# Shutter: I2C SCL
# Zoom: I2C SDA
ap.CFLAGS += -DDIGITAL_CAM
ap.srcs += dc.c


# Config for SITL simulation
include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.CFLAGS += -DCONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN

sim.srcs += nav_line.c nav_survey_rectangle.c
# -DENOSE
# chemotaxis.c anemotaxis.c discsurvey.c $(SRC_ARCH)/sim_enose.c chemo_detect.c

sim.CFLAGS += -DDIGITAL_CAM -DPOWER_SWITCH_LED=4
sim.srcs += dc.c




# a test program to setup actuators 
setup_actuators.ARCHDIR = $(ARCHI)
setup_actuators.ARCH = arm7tdmi
setup_actuators.TARGET = setup_actuators
setup_actuators.TARGETDIR = setup_actuators

setup_actuators.CFLAGS += -DFBW -DCONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART1 -DUART1_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart1
setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c

  </makefile>
</airframe>
go outside away from buildings(middle of street is fine) and move it around. confirm everything is working correctly. remember: Ground is hot.

-----SERVO's------
The servos are by far the easiest thing to do. you can either solder directly to the servo or get the mating connector so it can be reusable. to see some servo movement with the funjet1.xml file, plug in a servo into "S2" or "S6". move your hand around the IR sensors to see some movement.


------RECEIVER------
THIS page explains which receivers can be modified and how to do it. its as easy as soldering three wires. i am using the receiver from PPZUAV which is already done for you. the newly released ppm decoder board requires no modification. simply plug in the servo wires like a normal radio controlled model. Make sure you have a couple spare crystals on different frequency's(does not apply to synthesized and 2.4GHz systems).

Receiver>"REC" on tiny


------RADIO------
to get our transmitter working with the tiny we need to map out which channels will do what. i am using an optic 6 transmitter and for now we will stick to the basics. i want to assign the channels like this for MODE 2.

Channel and Function
1 ROLL or Aileron
2 PITCH or Elevator
3 THROTTLE
4 YAW or Rudder
5 AUX (unused for now)
6 MODE. Manual,Auto1,Auto2.

most RC transmitters output a pulse width minimum of 1000 and a maximum of 2000. so min=1000,neutral=1500,max=2000 for a servo going in the normal direction(not reversed).this is described in detail HERE .

Code:
<!DOCTYPE radio SYSTEM "radio.dtd">
<radio name="Optic6" data_min="900" data_max="2100" sync_min ="5000" sync_max ="15000">
 <channel ctl="1" function="ROLL"     min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="2" function="PITCH"    min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="3" function="THROTTLE" min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="4" function="YAW"      min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="5" function="AUX"      min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="6" function="MODE"     min="1000" neutral="1500" max="2000" average="1"/>
</radio>
mecevans is offline Find More Posts by mecevans
Last edited by mecevans; Apr 01, 2009 at 02:19 AM.
Reply With Quote
Old Feb 13, 2009, 06:54 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
Congratulations , you now know the basics of paparazzi!! . whats next? well results may vary from here, but its time to put it into something that flys.

------Considering an airframe design------

With my goals that i already set for the plane, i focused on these main things.

.....Goals.....
  • I would like long flight times (20-30 minutes or more)
  • I would like to be able to carry a video or digital camera now or in the near future

I knew that i wanted long flight times so i searched through Rcgroups for successful designs. also knowing that i wanted to have a camera now or in the future, i wanted a design which things could be easily removed or added. after searching for quite some time i found this very interesting plane, it has flight times of over and hour, quite fast, and had a very neat twist-to-lock payload section.

http://www.rcgroups.com/forums/showp...&postcount=362
and
http://www.rcgroups.com/forums/showp...&postcount=714

i hope to scratch build something off of this design, or if you have a better idea for an airframe post here

http://www.rcgroups.com/forums/showthread.php?t=995908

------PLANE------


i wanted to get a plane in the air and not spend to much time on building for now, so i decided to buy an ARF. i wanted a plane with elevons to cut back on weight and number of servos like my original goal on an airframe would be. the Multiplex Funjet, already extensively tested and used with Paparazzi, was a great pick for me as i have 4 years of RC experience. my goals for this airframe is to build as light as possible, and have sporty motor performance, while still being able to chop the throttle to cruise for 20 or so minutes. after searching Rcgroups and asking a few questions, i got an idea of what i needed. More on the FUNJET .

......Setup......
  • Multiplex Funjet ARF
  • Axi 2212/26
  • 3s 2100 and 1800 mah Lipo's
  • Castle Creations Thunderbird 18
  • 2 Hitec HS65hb's
  • Props: 9x6,8x6,8x4

make sure your work area is clean. lay out all the parts. the first thing you need to do is to READ ALL THE INSTRUCTIONS before you try to do anything. i built everything as per instruction, but i did not did no glue in the motor mount or turtle deck. i looked for as many pictures of Paparazzi builds as i could find to get an idea where things where going to go. you want to keep everything away from each other as much as possible, especially the receiver and modem. After a couple hours researching, moving things around, and staring at it, i got a good idea of how i wanted it. make sure it will balance.

Code:
<!DOCTYPE airframe SYSTEM "airframe.dtd">

<!-- Funjet Multiplex (http://www.multiplex-rc.de/)
     Tiny 2.1 board (http://paparazzi.enac.fr/wiki/index.php/Tiny_v2)
     Tilted infrared sensor (http://paparazzi.enac.fr/wiki/index.php/Image:Tiny_v2_1_Funjet.jpg)
     Digi xbee pro 900mhz
     Hitec HS-65 servos
-->

<airframe name="MCE Funjet">

<!-- commands section -->
  <servos>
    <servo name="MOTOR"         no="0" min="1000" neutral="1000" max="2000"/>
    <servo name="AILEVON_LEFT"  no="2" min="1000" neutral="1500" max="2000"/>
    <servo name="AILEVON_RIGHT" no="6" min="2000" neutral="1500" max="1000"/>
  </servos>

  <commands>
    <axis name="THROTTLE" failsafe_value="0"/>
    <axis name="ROLL"     failsafe_value="0"/>
    <axis name="PITCH"    failsafe_value="0"/>
  </commands>

  <rc_commands>
    <set command="THROTTLE" value="@THROTTLE"/>
    <set command="ROLL"     value="@ROLL"/>
    <set command="PITCH"    value="@PITCH"/>
  </rc_commands>

  <section name="MIXER">
    <define name="AILEVON_AILERON_RATE" value="0.75"/>
    <define name="AILEVON_ELEVATOR_RATE" value="0.75"/>
  </section>

  <command_laws>
    <let var="aileron"  value="@ROLL  * AILEVON_AILERON_RATE"/>
    <let var="elevator" value="@PITCH * AILEVON_ELEVATOR_RATE"/>  
    <set servo="MOTOR"           value="@THROTTLE"/>
    <set servo="AILEVON_LEFT"  value="$elevator + $aileron"/>
    <set servo="AILEVON_RIGHT" value="$elevator - $aileron"/>
  </command_laws>

  <section name="AUTO1" prefix="AUTO1_">
    <define name="MAX_ROLL" value="0.85"/>
    <define name="MAX_PITCH" value="0.6"/>
  </section>

  <section name="adc" prefix="ADC_CHANNEL_">
    <define name="IR1" value="ADC_1"/>
    <define name="IR2" value="ADC_2"/>
    <define name="IR_TOP" value="ADC_0"/>
    <define name="IR_NB_SAMPLES" value="16"/>
  </section>

  <section name="INFRARED" prefix="IR_">
    <define name="ADC_IR1_NEUTRAL" value="514"/>
    <define name="ADC_IR2_NEUTRAL" value="512"/>
    <define name="ADC_TOP_NEUTRAL" value="511"/>

    <define name="LATERAL_CORRECTION" value="1."/>
    <define name="LONGITUDINAL_CORRECTION" value="1."/>
    <define name="VERTICAL_CORRECTION" value="1."/>

    <define name="HORIZ_SENSOR_TILTED" value="1"/>
    <define name="IR1_SIGN" value="-1"/>
    <define name="IR2_SIGN" value="-1"/>
    <define name="TOP_SIGN" value="-1"/>

    <define name="ROLL_NEUTRAL_DEFAULT" value="-3.6" unit="deg"/>
    <define name="PITCH_NEUTRAL_DEFAULT" value="6" unit="deg"/>

    <define name="CORRECTION_UP" value="1."/>
    <define name="CORRECTION_DOWN" value="1."/>
    <define name="CORRECTION_LEFT" value="1."/>
    <define name="CORRECTION_RIGHT" value="1."/>
  </section>

  <section name="BAT">
    <define name="MILLIAMP_PER_PERCENT" value="0.86"/>
    <define name="CATASTROPHIC_BAT_LEVEL" value="9.3" unit="V"/>
    <define name="LOW_BAT_LEVEL" value="" unit="11"/>
    <define name="MAX_BAT_LEVEL" value="12.6" unit="V"/>
  </section>
 
  <section name="MISC">
    <define name="NOMINAL_AIRSPEED" value="17." unit="m/s"/>
    <define name="CARROT" value="5." unit="s"/>
    <define name="KILL_MODE_DISTANCE" value="(1.5*MAX_DIST_FROM_HOME)"/>
    <define name="CONTROL_RATE" value="60" unit="Hz"/>
<!--    <define name="XBEE_INIT" value="\"ATPL2\rATRN1\rATTT80\r\""/> -->
<!--    <define name="NO_XBEE_API_INIT" value="TRUE"/> -->
    <define name="ALT_KALMAN_ENABLED" value="TRUE"/>

    <define name="TRIGGER_DELAY" value="1."/>
    <define name="DEFAULT_CIRCLE_RADIUS" value="80."/>
    <define name="MIN_CIRCLE_RADIUS" value="50."/>
  </section>
 
  <section name="VERTICAL CONTROL" prefix="V_CTL_">

    <define name="POWER_CTL_BAT_NOMINAL" value="11.1" unit="volt"/>
    <!-- outer loop proportional gain -->
    <define name="ALTITUDE_PGAIN" value="-0.04"/>
    <!-- outer loop saturation -->
    <define name="ALTITUDE_MAX_CLIMB" value="2."/>

    <!-- auto throttle inner loop -->
    <define name="AUTO_THROTTLE_NOMINAL_CRUISE_THROTTLE" value="0.35"/>
    <define name="AUTO_THROTTLE_MIN_CRUISE_THROTTLE" value="0.3"/>
    <define name="AUTO_THROTTLE_MAX_CRUISE_THROTTLE" value="0.80"/>
    <define name="AUTO_THROTTLE_LOITER_TRIM" value="1500"/>
    <define name="AUTO_THROTTLE_DASH_TRIM" value="-1000"/>
    <define name="AUTO_THROTTLE_CLIMB_THROTTLE_INCREMENT" value="0.1" unit="%/(m/s)"/>
    <define name="AUTO_THROTTLE_PGAIN" value="-0.02"/>
    <define name="AUTO_THROTTLE_IGAIN" value="0.1"/>
    <define name="AUTO_THROTTLE_PITCH_OF_VZ_PGAIN" value="0.1"/>

    <!-- auto pitch inner loop -->
    <define name="AUTO_PITCH_PGAIN" value="-0.05"/>
    <define name="AUTO_PITCH_IGAIN" value="0.075"/>
    <define name="AUTO_PITCH_MAX_PITCH" value="0.35"/>
    <define name="AUTO_PITCH_MIN_PITCH" value="-0.35"/>

   <define name="THROTTLE_SLEW" value="0.5"/>

  </section>

  <section name="HORIZONTAL CONTROL" prefix="H_CTL_">
    <define name="COURSE_PGAIN" value="-1.2"/>

    <define name="ROLL_MAX_SETPOINT" value="0.7" unit="radians"/>
    <define name="PITCH_MAX_SETPOINT" value="0.5" unit="radians"/>
    <define name="PITCH_MIN_SETPOINT" value="-0.5" unit="radians"/>

    <define name="PITCH_PGAIN" value="-10000."/>
    <define name="PITCH_DGAIN" value="1.5"/>

    <define name="ELEVATOR_OF_ROLL" value="2500"/>

    <define name="ROLL_ATTITUDE_GAIN" value="-7500"/>
    <define name="ROLL_RATE_GAIN" value="-1500"/>
  </section>

  <section name="NAV">
    <define name="NAV_PITCH" value="0."/>
    <define name="NAV_GLIDE_PITCH_TRIM" value="0"/>
  </section>

  <section name="AGGRESSIVE" prefix="AGR_">
    <define name="BLEND_START" value="20"/><!-- Altitude Error to Initiate Aggressive Climb CANNOT BE ZERO!!-->
    <define name="BLEND_END" value="10"/><!-- Altitude Error to Blend Aggressive to Regular Climb Modes  CANNOT BE ZERO!!-->
    <define name="CLIMB_THROTTLE" value="0.7"/><!-- Gaz for Aggressive Climb -->
    <define name="CLIMB_PITCH" value="0.25"/><!-- Pitch for Aggressive Climb -->
    <define name="DESCENT_THROTTLE" value="0.1"/><!-- Gaz for Aggressive Decent -->
    <define name="DESCENT_PITCH" value="-0.15"/><!-- Pitch for Aggressive Decent -->
    <define name="CLIMB_NAV_RATIO" value="0.8"/><!-- Percent Navigation for Altitude Error Equal to Start Altitude -->
    <define name="DESCENT_NAV_RATIO" value="1.0"/>
    </section>

  <section name="FAILSAFE" prefix="FAILSAFE_">
	<define name="DELAY_WITHOUT_GPS" value="1" unit="s"/>
    	<define name="DEFAULT_THROTTLE" value="0.7" unit="%"/>
    	<define name="DEFAULT_ROLL" value="0.3" unit="rad"/>
    	<define name="DEFAULT_PITCH" value="0.5" unit="rad"/>
	<define name="HOME_RADIUS" value="100" unit="m"/>
</section>
 
<!--
 <section name="DATALINK" prefix="DATALINK_">
    <define name="DEVICE_TYPE" value="PPRZ"/>
    <define name="DEVICE_ADDRESS" value="...."/>
  </section>
-->

  <section name="Digital camera telecommand">
    <!-- IOs are seen as LEDs -->

    <define name="LED_6_BANK" value="0"/>
    <define name="LED_6_PIN" value="2"/> <!-- I2C SCL -->

    <!-- ADC 5 -->
    <define name="LED_7_BANK" value="0"/>
    <define name="LED_7_PIN" value="3"/> <!-- I2C SDA -->

    <define name="DC_SHUTTER_LED" value="6"/> <!-- Grey wire -->
    <define name="DC_ZOOM_LED" value="7"/>
  </section>
 
 <makefile>
CONFIG = \"tiny_2_1_1.h\"

include $(PAPARAZZI_SRC)/conf/autopilot/tiny.makefile

FLASH_MODE=IAP

ap.CFLAGS +=  -DFBW -DAP -DCONFIG=$(CONFIG) -DLED -DTIME_LED=1
ap.srcs = sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c main_fbw.c main_ap.c main.c

ap.srcs += commands.c

ap.CFLAGS += -DACTUATORS=\"servos_4017_hw.h\" -DSERVOS_4017
ap.srcs += $(SRC_ARCH)/servos_4017_hw.c actuators.c

ap.CFLAGS += -DRADIO_CONTROL -DRADIO_CONTROL_TYPE=RC_FUTABA
ap.srcs += radio_control.c $(SRC_ARCH)/ppm_hw.c  

#XBEE ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=XBeeTransport -DXBEE_UART=Uart1 -DDATALINK=XBEE -DUART1_BAUD=B9600
#XBEE ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c xbee.c

#TRANSPARENT
ap.CFLAGS += -DDOWNLINK -DUSE_UART1 -DDOWNLINK_TRANSPORT=PprzTransport -DDOWNLINK_FBW_DEVICE=Uart1 -DDOWNLINK_AP_DEVICE=Uart1 -DPPRZ_UART=Uart1 -DDATALINK=PPRZ -DUART1_BAUD=B9600
ap.srcs += downlink.c $(SRC_ARCH)/uart_hw.c datalink.c pprz_transport.c


ap.CFLAGS += -DINTER_MCU
ap.srcs += inter_mcu.c 

ap.CFLAGS += -DADC -DUSE_ADC_0 -DUSE_ADC_1 -DUSE_ADC_2
ap.srcs += $(SRC_ARCH)/adc_hw.c

ap.CFLAGS += -DGPS -DUBX -DUSE_UART0 -DGPS_LINK=Uart0 -DUART0_BAUD=B38400 -DGPS_LED=2 -DGPS_USE_LATLONG
ap.srcs += gps_ubx.c gps.c latlong.c

ap.CFLAGS += -DINFRARED -DALT_KALMAN
ap.srcs += infrared.c estimator.c

ap.CFLAGS += -DNAV -DAGR_CLIMB -DLOITER_TRIM
ap.srcs += nav.c fw_h_ctl.c fw_v_ctl.c
ap.srcs += nav_line.c nav_survey_rectangle.c

########## Barometer (SPI)
#ap.CFLAGS += -DUSE_SPI -DSPI_MASTER -DUSE_SPI_SLAVE0 -DUSE_BARO_MS5534A
#ap.srcs += spi.c $(SRC_ARCH)/spi_hw.c $(SRC_ARCH)/baro_MS5534A.c

########## Chemo sensor (I2C)
#ap.srcs += i2c.c arm7/i2c_hw.c enose.c chemo_detect.c
#ap.CFLAGS += -DUSE_I2C -DENOSE

# Digital camera
# Shutter: I2C SCL
# Zoom: I2C SDA
ap.CFLAGS += -DDIGITAL_CAM
ap.srcs += dc.c


# Config for SITL simulation
include $(PAPARAZZI_SRC)/conf/autopilot/sitl.makefile
sim.CFLAGS += -DCONFIG=\"tiny.h\" -DAGR_CLIMB -DLOITER_TRIM -DALT_KALMAN

sim.srcs += nav_line.c nav_survey_rectangle.c
# -DENOSE
# chemotaxis.c anemotaxis.c discsurvey.c $(SRC_ARCH)/sim_enose.c chemo_detect.c

sim.CFLAGS += -DDIGITAL_CAM -DPOWER_SWITCH_LED=4
sim.srcs += dc.c




# a test program to setup actuators 
setup_actuators.ARCHDIR = $(ARCHI)
setup_actuators.ARCH = arm7tdmi
setup_actuators.TARGET = setup_actuators
setup_actuators.TARGETDIR = setup_actuators

setup_actuators.CFLAGS += -DFBW -DCONFIG=\"tiny.h\" -DLED -DTIME_LED=1 -DACTUATORS=\"servos_4015_hw.h\" -DSERVOS_4015 -DUSE_UART1 -DUART1_BAUD=B9600 -DDATALINK=PPRZ -DPPRZ_UART=Uart1
setup_actuators.srcs += sys_time.c $(SRC_ARCH)/sys_time_hw.c $(SRC_ARCH)/armVIC.c pprz_transport.c setup_actuators.c $(SRC_ARCH)/uart_hw.c $(SRC_ARCH)/servos_4015_hw.c main.c

  </makefile>
</airframe>
RADIO

Code:
<?xml version="1.0"?>
<!-- $Id: T6EXAP.xml,v 1.5 2008/08/18 01:30:19 poine Exp $
--
-- (c) 2006 Pascal Brisset, Antoine Drouin
--
-- This file is part of paparazzi.
--
-- paparazzi is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2, or (at your option)
-- any later version.
--
-- paparazzi is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with paparazzi; see the file COPYING.  If not, write to
-- the Free Software Foundation, 59 Temple Place - Suite 330,
-- Boston, MA 02111-1307, USA.  
-->

<!--
-- Attributes of root (Radio) tag :
-- name: name of RC
-- data_min: min width of a pulse to be considered as a data pulse
-- data_max: max width of a pulse to be considered as a data pulse
-- sync_min: min width of a pulse to be considered as a synchro pulse
-- sync_max: max width of a pulse to be considered as a synchro pulse
-- min, max and sync are expressed in micro-seconds
-->

<!-- 
-- Attributes of channel tag :
-- ctl: name of the command on the transmitter - only for displaying
-- no: order in the PPM frame
-- function: logical command
-- averaged: channel filtered through several frames (for discrete commands)
-- min: minimum pulse length (micro-seconds)
-- max: maximum pulse length (micro-seconds)
-- neutral: neutral pulse length (micro-seconds)
-- Note: a command may be reversed by exchanging min and max values
-->

<!DOCTYPE radio SYSTEM "radio.dtd">
<radio name="Optic6" data_min="900" data_max="2100" sync_min ="5000" sync_max ="15000">
 <channel ctl="1" function="ROLL"     min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="2" function="PITCH"    min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="3" function="THROTTLE" min="1150" neutral="1150" max="2000" average="0"/>
 <channel ctl="4" function="YAW"      min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="5" function="AUX"      min="1000" neutral="1500" max="2000" average="0"/>
 <channel ctl="6" function="MODE"     min="1000" neutral="1500" max="2000" average="1"/>
</radio>
mecevans is offline Find More Posts by mecevans
Last edited by mecevans; Apr 18, 2009 at 12:39 PM.
Reply With Quote
Old Feb 13, 2009, 06:55 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
getting it in the air.

range check
triple check connections
check cg
make sure thing wont move
make sure PFD moves correctly

for your first couple flights, i suggest having auto1 in the middle and manual on fore and aft. this way if you panic it auto1 does not work, you will go into manual and not auto2.
mecevans is offline Find More Posts by mecevans
Last edited by mecevans; Aug 04, 2009 at 02:42 AM.
Reply With Quote
Old Feb 14, 2009, 01:44 PM
7000mw of raw power!
rich smith's Avatar
New Hampshire (not the old one)
Joined Dec 2006
5,987 Posts
I am very interested to see how this comes out. Like with Linux most cult members take great umbrage when I say you need a guru. The Linux does seem "less nasty" these days so maybe paparazzi has improved too. Best of luck.

PS what's the point of those empty posts?
rich smith is offline Find More Posts by rich smith
Reply With Quote
Old Feb 14, 2009, 01:52 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
ubuntu is really neat, in fact i haven't used xp in a week .

its so i can fill it in with more info.everything will be on one the first page, so you dont have to look through the entire forum.
mecevans is offline Find More Posts by mecevans
Reply With Quote
Old Feb 14, 2009, 01:57 PM
7000mw of raw power!
rich smith's Avatar
New Hampshire (not the old one)
Joined Dec 2006
5,987 Posts
Quote:
Originally Posted by mecevans
ubuntu is really neat, in fact i haven't used xp in a week .
its so i can fill it in with more info.everything will be on one the first page, so you dont have to look through the entire forum.
hhhho...kayyyyy...

I agree about Ubuntu. It's history is interesting too. I was amazed the CD picked up at last weeks computer show booted and ran from memory. Big fun on my EeePC too. Not your grandads Unix anymore.

If Paparazzi works as well I may give it another try myself.
rich smith is offline Find More Posts by rich smith
Reply With Quote
Old Feb 14, 2009, 02:22 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
its a mini-how-to, so i want it to have step by step guide on the first couple posts.then people can discuss it through the rest of the forum. saves allot of time looking for information.

yep best part is its all free!
mecevans is offline Find More Posts by mecevans
Reply With Quote
Old Feb 14, 2009, 02:28 PM
7000mw of raw power!
rich smith's Avatar
New Hampshire (not the old one)
Joined Dec 2006
5,987 Posts
I start a lot of Mini-How-To threads myself so that's of interest. Is there a limit on how long or how many pics in 1 post?

We agree on free. However our definitions may differ slightly. My "free" UAV airframe runs about $5 and autopilot w/GPS under $100. $1000? Cough...Cough... Rich people

I know what you mean though.

Quote:
Originally Posted by mecevans
its a mini-how-to, so i want it to have step by step guide on the first couple posts.then people can discuss it through the rest of the forum. saves allot of time looking for information.

yep best part is its all free!
rich smith is offline Find More Posts by rich smith
Reply With Quote
Old Feb 14, 2009, 02:37 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
i dont know i just want to keep everything neat and together.

rich? you mean tax and rent free? i'm still in high school lol
mecevans is offline Find More Posts by mecevans
Reply With Quote
Old Feb 14, 2009, 08:37 PM
Registered User
Joined Feb 2008
2 Posts
mecevans, it'S nice to see your thread here and especially that you try to keep all info at the beginning.
i like to see a site to find all needed information combined as a step to step help for newbies. reading through 1200 posts to get some info or maybe none can't be the way to go.
so keep on the good work and i'm curious to see how it performs.
especially i'm very interested how you will solve the part with attaching a video or digital camera to the airframe and control it via the ppz!
thx for this.
tc78 is offline Find More Posts by tc78
Reply With Quote
Old Feb 14, 2009, 10:35 PM
Registered User
mecevans's Avatar
United States, CA, Monterey
Joined Feb 2006
1,358 Posts
Quote:
Originally Posted by tc78
mecevans, it'S nice to see your thread here and especially that you try to keep all info at the beginning.
i like to see a site to find all needed information combined as a step to step help for newbies. reading through 1200 posts to get some info or maybe none can't be the way to go.
so keep on the good work and i'm curious to see how it performs.
especially i'm very interested how you will solve the part with attaching a video or digital camera to the airframe and control it via the ppz!
thx for this.
thanks man!
i wouldent have gotten far without all the support everyone gives me.
mecevans is offline Find More Posts by mecevans
Reply With Quote
Old Feb 20, 2009, 09:59 AM
David1
bmw330i's Avatar
USA
Joined Mar 2007
1,478 Posts
Update?
Hoping to hear you got the funjet1.XML working with GCS
bmw330i is offline Find More Posts by bmw330i
Reply With Quote
Reply


Thread Tools

Similar Threads
Category Thread Thread Starter Forum Replies Last Post
Discussion New Paparazzi project fastjb UAV - Unmanned Aerial Vehicles 9 Apr 15, 2008 08:52 PM