PiFly HAT Board

I am designing a Raspberry Pi HAT-ish board primarily for my drone and high power rocket hobbies, but I am trying to add enough features that it can be used elsewhere too. I have flown microcontroller based boards before but I want something more powerful. The Raspberry Pi Zero is small enough so I am using it as my higher power processor and putting everything else I need on the HAT board. The Board design was submitted for fabrication on March 4th and arrived on March 17th. This is a 4 layer PCB design, I was impressed how quickly Smart-Prototyping processed the board.


My son helped me setup a Github page for software support. He is writing a library for the GPS and the A/D converter, and I am writing a setup script. See:

https://github.com/robertrau/libpifly

https://github.com/robertrau/piflySetupScript

The setup script may be useful to others, not using a PiFly, that want to use a software defined transmitter or some other software we install for the PiFly. Feel free to take a look and edit it to your own needs.


5/29/2017: I have found a number of little errors in the layout including swapped test points for the USB, a resistor overlapping the body of a op-amp, and several silkscreen problems. I have found it very difficult to hand solder the GPS and the 5 volt switching power supply, but things are coming together slowly.



Features

• Power: Designed to run on 3 to 12 volts (not 13.8 volt automotive power), it is intended to run on one to three LiPo cells, but any power supply will do. A single power supply powers the Raspberry Pi, the HAT board, and its USB device from a 5 volt 2 amp buck-boost switching power supply. (The four high current outputs require at least 4.5 volts; i.e. two or three LiPo cells)

• Raspberry Pi compatible: The PiFly is intended to connect to the Raspberry Pi Zero so that components of each board face away from the middle. A 40 pin socket could be soldered to the top of the board for use on the Raspberry Pi 3, or any 40 pin Raspberry Pi.

• RF Transmitter Amplifier and Filter: The board has a dual RF filter and 200mW amplifier. It supports an RF carrier from either GPIO14 or GPIO18. One filter is for the 144MHz HAM band and the other filter is for the 440MHz HAM band. 144MHz transmission can be supported by pifm, nbfm, and rpitx. 440MHz transmission may someday be supported by rpitx, but currently rpitx doesn’t seem to work on the Raspberry Pi Zero.

• Servos: Can control up to eight servos. (Standard 6 volt servos will require 2 LiPo cells, higher voltage tolerant servos can use 2 or 3 LiPo cells)

• High Current Outputs: Intended for Rocket upper stage igniters and parachutes, these high current, high side drivers have diagnostics and a redundant enable system to prevent false assertions. Connections use press-to-release terminal blocks.

• Support for headless operation:  There is a shutdown button and a shutdown acknowledgment LED for safe headless shutdown. There is also a low battery comparator that can assert the shutdown request.

• Small size: The PiFly has the same width as Raspberry Pi Zero or Pi Zero W, but it is longer. Dimensions: 29.25mm by 150mm. It is intended to fit a high power rocket 38mm tube coupler, strap on the belly of a quad-copter, or in an RC airplane. Also small enough to be a smart handi-talkie with the addition of a USB software defined receiver. See PDF download below for application schematics.

• USB redirected: You cannot use the USB port in a 32mm wide space. The USB test points on a Raspberry Pi Zero can be soldered to test points on the HAT board for the USB type A connector and still fit in a 32mm wide space.

• GPS: The board uses the Skytrac Venus838 module. In binary mode this device can make 50 location updates per second. It has an SMA connector for an external antenna. This is required for the use of a helical, omni directional antenna. GPS data can be backed up with a super capacitor that has a connector for an external rechargeable coin cell. Currently there is only Raspberry Pi support for ASCII NMEA-0183 compatible output at 10 location updates per second. There is also a four pin connector for an external GPS if the board is built without the onboard GPS.

• Most I/Os have ESD protection.

• A/D support: Options for 8, 10, and 12 bit footprint compatible A/D converters. The default build uses the 10 bit TI ADS7957SDBTR A/D converter with 16 channels; some for internal measurement and diagnostics and some external channels. The external A/D connector is a 0.050” pitch connector. Two external channels can be set up for thermistors. Uses SPI interface.

• Keypad support: A connector for either a standard six-key keypad or a standard 12-key keypad connected through a resistor array to a A/D input. With an external resistor array 26 keys are possible.

• High G linear accelerometer: Uses NXP (Qualcom) MMA6555KW as on Altus Metrum’s TeleMega. Uses SPI interface.

• Barometric pressure sensor: Uses a Measurement Specialties (TE Connectivity) MS560702BA03-00 as on Altus Metrum’s TeleMega. Uses SPI interface.

• 9 axis inertial and magnetic platform: Uses an Invensense (TDK) MPS-9250 for 3-axis acceleration, 3-axis gyro, and 3-axis magnetometer. Mounted on board centerline. Uses I2C bus.

• Humidity sensor: Uses ST’s HTS221TR sensor. Uses I2C bus.

• Differential Pressure sensor: Can be used for drone/aircraft Pitot tube for airspeed. Measurement Specialties (TE Connectivity) 4525DO-DS5AI030DP on I2C bus.

• Audio Output: GPIO13 has PWM audio filter, amplifier, and connector.

• Microphone: Knowles SPH0645LM4H-B on the I2S bus.

• Time of Day Clock: Maxim DS3231S using the GPS Super Cap/Battery Backup.

Maxim 1-Wire bus controller.

• Quad tachometer Input: compatible with Spektrum SPM1452 sensors. Uses an Analog Devices ADT7470.

My mechanical mock-up with a short USB memory stick and a Helical, omnidirectional, amplified antenna for GPS, measures a little over 213mm long.

My mechanical mock-up in a high power rocket 1.5” (38mm) tube coupler.

Download the start of the user’s manual here: PiFly Manual.docx.zip

Download the schematic report ‘Software Book’ here: PiFly.html

Download the spreadsheet for the thermistor table here: PiFly Thermistor Table.xlsx.zip


Applications

The PiFly was conceived for my drone and rocketry requirements. Additional features were added for my other hobbies and also to hopefully make the board interesting to a broader audience. Below is a character schematic of the PiFly in a rocketry application. I made a PDF showing six different applications you can download.

Rocketry

RC airplane

Quadcopter

Weather station

HAM radio transceiver

High altitude HAM TV weather balloon

Data acquisition system

Clock Radio

Download it here: PiFlyApplications.pdf.

email me.mailto:knotinweb@rau-deaver.comcastbiz.net?subject=PiFly

Visit my other pages:

DesignWorks SchematicRocketry.html
Osmond PCBOsmond1.html
Mac compatible test equipmentMac-Instruments.html
SchematicsSchematics.html
Developing Mac ApplicationsDesktopProgLinks.html
Schematic CaptureSchematicCaptureLinks.html

One example from PiFlyApplications.pdf                                                            Closeup of first board with RF amplifier and filter complete

The RF only test PiFly board with the RF carrier source multiplexor, amplifier and coax connectors.