
Heteromycin
hasenbanck/heteromycin
A 3D printer board using a powerfull STM32 MCU, TMC5160/TMC2160 driver and a Raspberry Pi or compatible SBC

Cognicity flood sensor example code
Flood hat is an open-source printed circuit board by smart-facility, from the smart-facility/cognicity-floodsensor repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 66 × 57 mm with 57 parts on 64 nets, routed with 470 tracks and 47 vias.
It is built around the STM32L031F4P3, HT7333 and CAT24C32LI-, with the DMMT5401 and AO3401 among its other parts. Its parts include 14 connectors, 13 resistors, 11 capacitors, 5 ICs and 5 transistors. It belongs with the sensors and measurement boards and the STM32 boards of this library.
This printed circuit board design implements low-power measurement gathering for the cognicity flood sensor. It conforms to the Raspberry Pi HAT specification.
The design was created in KiCad 4.0.2. Gerbers can be found in the plot/ subdirectory.
The HAT can be configured in one of two ways
Three of three-pad solder-bridge footprints are used to determine whether the sensors are connected to the Pi or the STM32. Each must have a single solder-blob connecting its centre-pad to one side, as labelled.
In Direct mode, three additional wire links are installed, to bypass power-switching components that are not loaded.
In Microcontroller mode, the power-control and microcontroller circuitry is loaded, and the wire-links are not installed.
A 24C32 I2C EEPROM is installed, which contains configuration data used by the Pi to identify the HAT and its functionality. Programming the EEPROM requires that the PROG link adjacent to the EEPROM be shorted, in order to to pull up the write-enable pin. Otherwise, the EEPROM is read-only.
The PCB hosts an STM32F030F4 or STM32L031F4 microcontroller. The L031 supports a 32768Hz crystal for real-time clock (RTC) functionality but the F030 does not - the crystal and its capacitors not be loaded if the F030 is used.
The microcontroller is programmed and debugged using an ST-Link v2 via the single wire debug (SWD) port at the top-left of the board. The BOOT0 pin is pulled low unless the BOOT0 link is shorted, which allows the micro to be programmed via a serial port. A reset button is provided.
The microcontroller controls power to the sensors and Pi (power-status is indicated by LEDs), is directly connected to the sensors, and has a serial connection to the Pi.
Pins PA4-PA7 are not currently used and are broken out to a header, intended for use with an 8-pin IDC ribbon cable. They can be used as GPIO, to monitor voltages (ADC), or to implement an SPI interface.
The power-management block contains:
The Pi receives 5V power from this board. The board must be provided with a clean, regulated 5V supply, through the screw-terminal connector. The Pi should not be connected to any other power source.
The power-switching is under the control of the micro.
If the board is assembled as a Direct configuration (no micro), then most of the power control circuitry is not loaded and is bypassed by wire links. The sensors receive power from the 5V line and through the Pi's onboard 3.3V regulator.
The board supports:
Resistive networks are supplied for pullup (one-wire) and voltage conversion (from the 5V ranging sensor).
This hardware design is (C) 2016 William Brodie-Tyrrell and is licensed under the CERN OHL; see cern_ohl_v_1_2.pdf
| Qty | Value | Footprint | References |
|---|---|---|---|
| 5 | 100n | Capacitors_SMD:C_0805 | C1, C5, C9, C10, C11 |
| 5 | 10k | Resistors_SMD:R_0805 | R4, R6, R8, R11, R13 |
| 5 | CONN_01X02 | Pin_Headers:Pin_Header_Straight_1x02 | P8, P9, P11, P12, P13 |
| 4 | 10u | Capacitors_SMD:C_0805 | C2, C3, C4, C6 |
| 4 | 1k | Resistors_SMD:R_0805 | R1, R9, R12, R15 |
| 4 | FIDUCIAL | smd:FID0.5 | FID1, FID2, FID3, FID4 |
| 3 | AO3401 | TO_SOT_Packages_SMD:SOT-23 | Q1, Q2, Q4 |
| 3 | CONN_01X03 | smd:SMD_solder_bridge_3pin | P1, P6, P7 |
| 2 | 22p | Capacitors_SMD:C_0805 | C7, C8 |
| 2 | 2N7002 | TO_SOT_Packages_SMD:SOT-23 | Q3, Q5 |
| 2 | 3k9 | Resistors_SMD:R_0805 | R2, R3 |
| 2 | CONN_01X04 | Pin_Headers:Pin_Header_Angled_1x04 | P3, P4 |
| 2 | HT7333 | TO_SOT_Packages_SMD:SOT89-3_Housing | U3, U5 |
| 2 | LED | LEDs:LED_0805 | D1, D2 |
| 1 | 1k8 | Resistors_SMD:R_0805 | R10 |
| 1 | 32768 | Crystals:Crystal_Round_Horizontal_3mm | X1 |
| 1 | 47k | Resistors_SMD:R_0805 | R5 |
| 1 | CAT24C32 | SMD_Packages:SOIC-8-N | U1 |
| 1 | CONN_01X02 | Terminal_Blocks:TerminalBlock_Pheonix_MKDS1.5-2pol | P2 |
| 1 | CONN_01X04 | Pin_Headers:Pin_Header_Straight_1x04 | P5 |
| 1 | CONN_02X04 | Pin_Headers:Pin_Header_Straight_2x04 | P10 |
| 1 | DMMT5401 | TO_SOT_Packages_SMD:TSOT-6-MK06A | U2 |
| 1 | PI2GPIO | raspi:PI2HAT | J1 |
| 1 | PPTC2A | Resistors_SMD:R_1812 | F1 |
| 1 | STM32L031F4 | Housings_SSOP:TSSOP-20_4.4x6.5mm_Pitch0.65mm | U4 |
| 1 | SW_PUSH | Buttons_Switches_SMD:SW_SPST_SKQG | SW1 |
It measures 66 × 57 mm and has 2 copper layers, 1.6 mm thick.
57 parts, built around the STM32L031F4P3, HT7333, CAT24C32LI- and DMMT5401. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the smart-facility/cognicity-floodsensor repository on GitHub, at the commit this page was made from: the board is pcb/flood-hat.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

hasenbanck/heteromycin
A 3D printer board using a powerfull STM32 MCU, TMC5160/TMC2160 driver and a Raspberry Pi or compatible SBC




pilotniq/MJoulnir
Hardware and software for the control system of a full size electric boat.

SkullKill/ACYONP-PCB
PCB for Access Control Yubikey OTP NFC Pi (ACYONP). For Raspberry Pi. This is a Door Access Control using Electronic Door Strike, with Yubikey OTP via NFC / KeyPad / WebInterface for Authentication.

