Skip to content
README.md 4.15 KiB
Newer Older
f4grx's avatar
f4grx committed
Circuit board for hn70ap
========================

f4grx's avatar
f4grx committed
This folder contains the KiCAD board used by the hn70ap project.

It is released under the CERN OHL.

The project is completely standalone, it does not depend on ANY external schematic or PCB library.

To open it you need a very recent kicad version.
f4grx's avatar
f4grx committed

Power supply
============
 * Input via Anderson PowerPole for standard 13.8V ham
 * LTC3646 Creates a 5V 1A rail
 * Each component (radios, CPU, ethernet) has a ferrite bead then big storage capacitor followed bu 3V3 LDO. Radios can reach 100mA each, Ethernet is max 40 mA, CPU is much lower.
 
Clocks
======
 * Ethernet PHY has a 25 MHx XTAL that gets doubled to generate the RMII reference clock
 * SI4463 has a 30 MHz XTAL for its own use
f4grx's avatar
f4grx committed
 * CPU HSE is connected to a 20 MHz xtal to reach its max clock speed of 180 MHz with correct accuracy
 * CPU 32 kHz clock is connected to a watch xtal
f4grx's avatar
f4grx committed
Another design that I know has the 25 MHz xtal on the cpu, then feeds a 25 MHz MCO line to the PHY, which doubles it and feeds it back to the RMII clock input.
Weird delay loop calculations, long RF lines, not good.
f4grx's avatar
f4grx committed

CPU peripheral connections
==========================

Ethernet
--------

The STM32 Ethernet Peripheral is connected to a KSZ8081RNA PHY via RMII. 50 MHz RMII Clocking is provided via a 25 MHz XTAL doubled by the PHY.
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
```
RX0    PC4/33
RX1    PC5/34
CRSDV  PA7/32
TX0    PB12/51
TX1    PB13/52
TXEN   PB11/48
REFCLK PA1/24
IRQ    PE12/43
MDIO   PA2/25
MDC    PC1/16
```

f4grx's avatar
f4grx committed
Some GPIOs are used to indicate the link status and reset the PHY:

f4grx's avatar
f4grx committed
```
f4grx's avatar
f4grx committed
MAC_LINK PD8/55 Open Drain for a LED
f4grx's avatar
f4grx committed
MAC_RST  PB0/35
```

Debug UART
----------
f4grx's avatar
f4grx committed
This uart is used to display the NuttX console. It is connected to UART4 (not an USART). It runs at 230400 bauds, 8N1.
f4grx's avatar
f4grx committed

```
TXD4  PC10/78
RXD4  PC11/79
```

SPI Flash
---------
This memory is used to store the firmware update to be programmed by the bootloader, and a flash filesystem for file storage. It is connected to bus SPI2.
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
```
MOSI2  PB15/54
MISO2  PB14/53
SCLK2  PB10/47 via pin PD10/57 to help routing
CS     PA9/68
```

I2C EEPROM
----------
This memory stores the Ethernet MAC address and generic non volatile parameters that must survive reset. The device is connected to I2C3.
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
```
SDA3  PC9/66
SCL3  PA8/67
```

Main radio transceiver
----------------------
The main radio transceiver is a si4463 with separate TX and RX signals along with a PTT. It can be connected to external RF hardware (LNA/PA/Switch). It is RF matched for the 430-440 MHz frequency band. The device is connected to SPI4.
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
```
MOSI4  PE6/5
MISO4  PE5/4
SCLK4  PE2/1
CS     PE4/3
IRQ    PC13/7
f4grx's avatar
f4grx committed
SDN    /2 Used to reset the chips in a clean way
f4grx's avatar
f4grx committed
Auxiliary radio transceiver
f4grx's avatar
f4grx committed
---------------------------
f4grx's avatar
f4grx committed
The auxiliary radio transceiver is either an off-the-shelf RFM26W from HopeRF (20 dBm) or a RF4463F30 (high power, 30 dBm). These are also based on the Silabs si4463. The matching is on-board and there are several frequency bands available. The device shares the same SPI4 bus as the main transceiver. SDN line is shared with the main transceiver.

f4grx's avatar
f4grx committed
```
CS    PA3/26
IRQ   PA6/31
f4grx's avatar
f4grx committed
```
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
Power supply
------------
f4grx's avatar
f4grx committed
The switching regulator provides a PGOOD output that is asserted while the output voltage is within a 5% tolerance. This can be used to prevent external flash writes if the power is about to fail.

f4grx's avatar
f4grx committed
```
PGOOD  PC0/15
```

LEDs
----
f4grx's avatar
f4grx committed
Some LEDs will be added. They are connected to the supply voltage so driving outputs can be configured as open drain. Signification of signals may change in the future.
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
```
f4grx's avatar
f4grx committed
LED1  (D301, Panel)    PB9/96 + PE0/97 (Bicolor Green/Red - Status)
LED2  (D302, Panel)    PB8/95 (Blue - Clients connected)
LED3  (D303, Panel)    PB7/93 (Orange - Transmit)
LED4  (D304, Panel)    PB6/92 (Green - Receive)
LED5  (D305, Internal) PD15/62 (Green - Heartbeat)
LED6  (D306, Internal) PD11/58 (Green - CPU Activity)
LED7  (D401, Internal)         (Red - FTDI TX)
LED8  (D402, Internal)         (Green - FTDI RX)
LED9  (J201, Ethernet)         (Ethernet activity)
LED10 (J201, Ethernet) PD8/55  (Ethernet link status)
f4grx's avatar
f4grx committed
Current TODOLIST
================
f4grx's avatar
f4grx committed
* Finish rerouting to include main radio under the shield S501
* Envision a PWROK LED on the back side
* Finish FTDI led routing
f4grx's avatar
f4grx committed

f4grx's avatar
f4grx committed
eof