Autonomous Flying Platform
Jump to navigation
Jump to search
Overview
A long desire of mine has been to create an autonomous flying solution. I was initially inspired when I saw a competition with the following specifications:
- Solution cannot touch the ground
- Retrieve a metal ring on the other side of a barrier
- Bring it back to its origin and drop it off
The autonomous rc helicopter from Stanford won the competition. Blimps were tried but they flew away etc... in the outdoor winds.
Team Members
Name | Expertise | Role |
---|---|---|
Tim Heath | Software Developer, Project Management | Project Leader/Developer |
Requirements
- Use a solution that is modular and used as many off the shelf components for rapid prototyping/solutions
- Easy to reprogram and loosely coupled
- Easy to interface with external control devices
- Navigates in 3d space in an efficient easy way
Design
I am going to use the G1 cell phone as it is the most modular.
G1 Info
Property | Value |
---|---|
Weight | 5.6 ounces |
Size | 4.6 by 2.2 by 0.6 inches |
Memory | 1GB (memory card of up to 8 GB possible) |
Wifi | Yes |
Bluetooth | Yes |
USB | Non host mode but yes |
Serial | Yes |
Camera | 3 megapixels |
Serial Connection Information
I am by no means a G1 god or guru. There are better people to ask and I do hope they'll chime in. I am however linked to that nickname that you dropped and so I feel compelled to answer. ( And no, I'm not nor have I ever been, a woman. ) The serial interface you're discussing does indeed exist on the HTC Dream (G1). I hear it's possible to build a cable that is a mini-usb on one end and a normal sized usb on the other. Between the two is a usb to serial device. It's just a nice way to have a set of pin outs and power; it's otherwise not a special cable. If you have or build such a cable, you'll then be able to access a few low level debuggers or boot prompts on the serial port. If you have the right setup, you should be able to connect the cable, attach to the usb serial device and set minicom to operate at 115200 8N1 (and with no software/hardware flow control). A photo of the mythical cable attached to my G1 is available here: https://www.noisebridge.net/wiki/Image:G1-two-usb-to-serial-cable.jpg This is the code for that interface (see the Android source): /kernel/drivers/serial/msm_serial_debugger.c From the source you'll see the following commands available when the phone is booted: pc regs reboot irqs kmsg version sysrq If you have the developer or engineering boot loader, you can do more... You can boot the phone with the camera button held down to access a serial boot prompt that looks like this: UART0:Cmd> So far I've only seen a single command 'set'. I didn't find very much useful information beyond that for the serial interface to the (first?) boot loader. Perhaps someone knows more about this? It may prove to be useful... Another interesting but unrelated (GSM) test function is available in the dialer program when the phone is booted by calling this number: *#*#INFO#*#* Best, Jake
Untested pinout
Taken from PodGizmo
- USB VCC +5v
- USB Data -
- USB Data +
- N / C
- USB GND
- Left Audio +
- Labeled "AG"
- Audio - (GND) Labeled "CK"
- Switch (Talk) Labeled "OT"
- Right Audio +
- Mic +
- Chassis Ground (GND)
Notes:
- Specifying a mini-usb connector indicates only pins 1-5 can be involved. (GND=10, RX/TX = USB Data +/-)?
Serial Hardware to Interface with G1
Pinout
it's muxxed on the headset terminals, i think there's some documentation in the h2w source file in arch-msm
Helpful Links
Android hacking
- https://noisebridge.net/Noisedroid
- http://www.android-unleashed.com/2009/01/root-your-android-g1-with-rc30-firmware.html
- http://forum.xda-developers.com/forumdisplay.php?f=448