The Butterfly allows two HATs or pHATs (or a mix) to be attached to a single Raspberry Pi 40-way connector.
All pins are connected except ID_SD and ID_SC (HAT EEPROM) which have solder jumpers - this allows HATs which follow the specification correctly to operate without a conflict on the EEPROM.
The EEPROM on the primary HAT (over the Pi) is always connected to the Pi and if the solder jumpers are bridged the ID_SD and ID_SC signals are connected to both primary and secondary HAT (for use when only the HAT/pHAT in the secondary connector has an EEPROM). When not using the EEPROM you may need to manually configure the Pi for your HAT.
Before using the Butterfly with multiple HATs you MUST check for conflicts! For example, enable/select pins when using SPI, I2C addresses and GPIO pin conflicts and modes, 8086 advise checking pinout.xyz and/or the HAT manufacturers website for used pins/modes in use.
The Butterfly board would normally be used with male + tall stacking headers (not included). The tall stacking header is for the Raspberry Pi and the primary HAT, and the male header is for the secondary HAT.
You can of course just use the Butterfly in any weird and wonderful way you can think of, with whatever headers you decide to solder - just be aware of the pin order!
Note: PCB only. You need to purchase headers separately (links below) HATs and Raspberry Pi also not included.
The top side of the board is indicated by the white line in between the connectors (also has a white line next to pin 1 on both square GPIO pads), 8086 advise soldering the stacking header first otherwise accessing the pins is difficult.
The stacking header pins should be inserted from the bottom of the PCB and be soldered on the top of the board (use holes nearest the "Butterfly" text on the top side).
The male headers should be inserted from the top of the board and soldered on the bottom (use holes nearest the "8086" logo on the top side of the board).