Difference between revisions of "RasPi-GVS"

From Land Boards Wiki
Jump to navigation Jump to search
 
(6 intermediate revisions by the same user not shown)
Line 61: Line 61:
  
 
A three pin header and jumpers are used to select the voltage source(s). Installing a single jumper from pins 2 to 3 allow the Raspberry Pi to power the GVC connectors and voltage translators. Installing a jumper from 1 to 2 powers the GVS connections and voltage translators from the 5V power supply.
 
A three pin header and jumpers are used to select the voltage source(s). Installing a single jumper from pins 2 to 3 allow the Raspberry Pi to power the GVC connectors and voltage translators. Installing a jumper from 1 to 2 powers the GVS connections and voltage translators from the 5V power supply.
 +
 +
== Connectors ==
 +
 +
=== P1 - Raspberry Pi GPIO Connector ===
 +
 +
Raspberry Pi Connector
 +
 +
RasPi-GPIOs.png
 +
 +
=== J1 - I2C bus ===
 +
 +
# GND
 +
# 5V
 +
# SDA=GPIO2
 +
# SCL=GPIO3
 +
 +
=== J2 - UART I/F ===
 +
 +
# GND
 +
# 5V
 +
# Tx=GPIO14
 +
# Rx=GPIO15
 +
 +
=== J3 - IO_18 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_18
 +
 +
=== J4 - IO_17 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_17
 +
 +
=== J5 - IO_27 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_27
 +
 +
=== J6 - IO_23 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_23
 +
 +
=== J7 - IO_22 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_22
 +
 +
=== J8 - IO_24 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_24
 +
 +
=== J9 - IO_25 GVS ===
 +
 +
# GND
 +
# 5V
 +
# GPIO_25
 +
 +
=== J10 - SPI0 (Serial Peripheral Interface) ===
 +
 +
# GND
 +
# 5V
 +
# MOSI (GPIO_10)
 +
# MISO (GPIO_9)
 +
# SCK (GPIO_11)
 +
# CE0 (GPIO_8)
 +
 +
=== J11 - SPI1 (Serial Peripheral Interface) ===
 +
 +
# GND
 +
# 5V
 +
# MOSI (GPIO_10)
 +
# MISO (GPIO_9)
 +
# SCK (GPIO_11)
 +
# CE1 (GPIO_7)
 +
 +
=== DC Power 7-9 VDC ===
 +
 +
# Shell - Ground
 +
# Center - Power (7-9 VDC)
 +
 +
=== J13 - Power Select ===
 +
 +
* 1-2 = Power GVS and voltage translators from the voltage regulator on the RasPi-GVS
 +
* 2-3 = Power GVS and voltage translators from the Raspberry Pi
  
 
== Drivers ==
 
== Drivers ==
  
 
* [https://github.com/land-boards/RasPi/tree/master/RasPi-GVS GitHub Repo]
 
* [https://github.com/land-boards/RasPi/tree/master/RasPi-GVS GitHub Repo]
 +
 +
== Factory Tests ==
 +
 +
=== Equipment ===
 +
 +
* Unit Under Test (UUT)
 +
* [[LED-Test-2]] card
 +
* Raspberry Pi Model B (not B Plus)
 +
* GVS Cabling
 +
 +
=== GPIO Tests ===
 +
 +
* Connect D1 through... to J3-J9
 +
* Connect ...
 +
* Run
 +
<pre>
 +
cd RasPi/RasPi-GVS/
 +
sudo python pyGVS.py
 +
 +
</pre>
 +
* LEDs should cycle
 +
 +
=== UART Tests ===
 +
 +
==== Setup - Run first use only ====
 +
 +
* [http://www.irrational.net/2012/04/19/using-the-raspberry-pis-serial-port/ Based on this site]
 +
* Type
 +
<pre>
 +
sudo cp /boot/cmdline.txt /boot/cmdline_backup.txt
 +
sudo nano /boot/cmdline.txt
 +
 +
</pre>
 +
* Originally it contained:
 +
<pre>
 +
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p6 roo
 +
tfstype=ext4 elevator=deadline rootwait
 +
</pre>
 +
* Delete the parameter involving the serial port (ttyAMA0) to get the following:
 +
<pre>
 +
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p6 roo
 +
tfstype=ext4 elevator=deadline rootwait
 +
</pre>
 +
* Edit
 +
<pre>
 +
cd /etc
 +
sudo nano /etc/inittab
 +
</pre>
 +
* Comment out the following line:
 +
<pre>
 +
T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
 +
</pre>
 +
* Install minicom
 +
<pre>
 +
sudo apt-get install minicom
 +
 +
</pre>
 +
* Reboot
 +
* Run every time
 +
* Run minicom
 +
* minicom -b 115200 -o -D /dev/ttyAMA0
 +
* Type - get nothing
 +
* Jumper J2-3 to J2-4 UART tx/rx
 +
* Type - get back what you type
  
 
== Assembly Sheet ==
 
== Assembly Sheet ==
  
 
* [[RasPi-GVS Assembly Sheet]]
 
* [[RasPi-GVS Assembly Sheet]]

Latest revision as of 13:52, 24 January 2020

Tindie-mediums.png

RasPi-GVS-5221-xformed-640px.jpg

Features

  • Daughtercard to the Raspberry Pi (you supply the Raspberry Pi)
  • 3.3V to 5V bidirectional voltage translators on GPIO (General Purpose Input/Output) lines
  • (7) 5V GPIO lines on GVS connectors
  • (2) 5V SPI interfaces (can be used as 5 GPIO lines)
  • (1) 5V UART (serial port) interface
  • (1) 5V I2C interface (can be used as 2 GPIO lines)
  • GPIO_4 enables/disables the voltage translators
  • Resettable Fuse protection on the 5V power lines
  • 7-9V input voltage on the Power Supply connector (option) which has a regulator that can power the GVS connectors (within thermal limits of the regulator) removing any 5V load from the Raspberry Pi itself
  • Jumper to select power for GVS (allows the GVS connectors to be powered from either the on-board regulator (option) or powered from the Raspberry Pi)
  • 49x49mm card form factor

Voltage Translators

The Raspi-GVS board uses Texas Instrument TXS0108 voltage translators.

Voltage Translators Features

  • No Direction-Control Signal Needed
  • Max Data Rates
    • 60 Mbps (Push Pull)
    • 2 Mbps (Open Drain)
  • 1.2 V to 3.6 V on A Port and 1.65 V to 5.5 V on
  • B Port (VCCA ≤ VCCB)
  • No Power-Supply Sequencing Required –
    • Either VCCA or VCCB Can Be Ramped First
  • Latch-Up Performance Exceeds 100 mA Per JESD 78, Class II
  • ESD Protection Exceeds JESD 22 (A Port)
    • 2000-V Human-Body Model (A114-B)
    • 150-V Machine Model (A115-A)
    • 1000-V Charged-Device Model (C101)
  • IEC 61000-4-2 ESD (B Port)
    • ±6-kV Air-Gap Discharge
    • ±8-kV Contact Discharge

Voltage Translators Architecture

Datasheet

The TXS0108E can be used in level-translation applications for interfacing devices or systems operating at different interface voltages with one another. The TXS0108E is ideal for use in applications where an open-drain driver is connected to the data I/Os. The TXS0108E can also be used in applications where a push-pull driver is connected to the data I/Os, but the TXB0104 might be a better option for such push-pull applications. The TXS0108E device is a semi-buffered auto-direction-sensing voltage translator design is optimized for translation applications (e.g. MMC Card Interfaces) that require the system to start out in a low-speed open-drain mode and then switch to a higher speed push-pull mode.

TXS0108Arch.PNG

To address these application requirements, a semi-buffered architecture design is used and is illustrated above (see Figure 1). Edge-rate accelerator circuitry (for both the high-to-low and low-to-high edges), a High-Ron n-channel pass-gate transistor (on the order of 300 Ω to 500 Ω) and pull-up resistors (to provide DC-bias and drive capabilities) are included to realize this solution. A direction-control signal (to control the direction of data flow from A to B or from B to A) is not needed. The resulting implementation supports both low-speed open-drain operation as well as high-speed push-pull operation.

When transmitting data from A to B ports, during a rising edge the One-Shot (OS3) turns on the PMOS transistor (P2) for a short-duration and this speeds up the low-to-high transition. Similarly, during a falling edge, when transmitting data from A to B, the One-Shot (OS4) turns on NMOS transistor (N2) for a short-duration and this speeds up the high-to-low transition. The B-port edge-rate accelerator consists of one-shots OS3 and OS4, Transistors P2 and N2 and serves to rapidly force the B port high or low when a corresponding transition is detected on the A port.

When transmitting data from B to A ports, during a rising edge the One-Shot (OS1) turns on the PMOS transistor (P1) for a short-duration and this speeds up the low-to-high transition. Similarly, during a falling edge, when transmitting data from B to A, the One-Shot (OS2) turns on NMOS transistor (N1) for a short-duration and this speeds up the high-to-low transition. The A-port edge-rate accelerator consists of one-shots OS1 and OS2, Transistors P1 and N1 components and form the edge-rate accelerator and serves to rapidly force the A port high or low when a corresponding transition is detected on the B port.

Power Supply

The RaspPi-GVS offers flexible power supply options. The 5V for the GVS Connnectors and translators can come either from the Raspberry Pi or from the 5V power supply on the RaspPi-GVS.

A three pin header and jumpers are used to select the voltage source(s). Installing a single jumper from pins 2 to 3 allow the Raspberry Pi to power the GVC connectors and voltage translators. Installing a jumper from 1 to 2 powers the GVS connections and voltage translators from the 5V power supply.

Connectors

P1 - Raspberry Pi GPIO Connector

Raspberry Pi Connector

RasPi-GPIOs.png

J1 - I2C bus

  1. GND
  2. 5V
  3. SDA=GPIO2
  4. SCL=GPIO3

J2 - UART I/F

  1. GND
  2. 5V
  3. Tx=GPIO14
  4. Rx=GPIO15

J3 - IO_18 GVS

  1. GND
  2. 5V
  3. GPIO_18

J4 - IO_17 GVS

  1. GND
  2. 5V
  3. GPIO_17

J5 - IO_27 GVS

  1. GND
  2. 5V
  3. GPIO_27

J6 - IO_23 GVS

  1. GND
  2. 5V
  3. GPIO_23

J7 - IO_22 GVS

  1. GND
  2. 5V
  3. GPIO_22

J8 - IO_24 GVS

  1. GND
  2. 5V
  3. GPIO_24

J9 - IO_25 GVS

  1. GND
  2. 5V
  3. GPIO_25

J10 - SPI0 (Serial Peripheral Interface)

  1. GND
  2. 5V
  3. MOSI (GPIO_10)
  4. MISO (GPIO_9)
  5. SCK (GPIO_11)
  6. CE0 (GPIO_8)

J11 - SPI1 (Serial Peripheral Interface)

  1. GND
  2. 5V
  3. MOSI (GPIO_10)
  4. MISO (GPIO_9)
  5. SCK (GPIO_11)
  6. CE1 (GPIO_7)

DC Power 7-9 VDC

  1. Shell - Ground
  2. Center - Power (7-9 VDC)

J13 - Power Select

  • 1-2 = Power GVS and voltage translators from the voltage regulator on the RasPi-GVS
  • 2-3 = Power GVS and voltage translators from the Raspberry Pi

Drivers

Factory Tests

Equipment

  • Unit Under Test (UUT)
  • LED-Test-2 card
  • Raspberry Pi Model B (not B Plus)
  • GVS Cabling

GPIO Tests

  • Connect D1 through... to J3-J9
  • Connect ...
  • Run
cd RasPi/RasPi-GVS/
sudo python pyGVS.py
 
  • LEDs should cycle

UART Tests

Setup - Run first use only

sudo cp /boot/cmdline.txt /boot/cmdline_backup.txt
sudo nano /boot/cmdline.txt

  • Originally it contained:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p6 roo
tfstype=ext4 elevator=deadline rootwait
  • Delete the parameter involving the serial port (ttyAMA0) to get the following:
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p6 roo
tfstype=ext4 elevator=deadline rootwait
  • Edit
cd /etc
sudo nano /etc/inittab
  • Comment out the following line:
T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
  • Install minicom
sudo apt-get install minicom

  • Reboot
  • Run every time
  • Run minicom
  • minicom -b 115200 -o -D /dev/ttyAMA0
  • Type - get nothing
  • Jumper J2-3 to J2-4 UART tx/rx
  • Type - get back what you type

Assembly Sheet