Joy-IT Joypi Expansion Kit User Guide
- June 8, 2024
- JOY-It
Table of Contents
- Joy-IT Joypi Expansion Kit
- GENERAL INFORMATION
- ASSEMBLY
- INSTALLATION
- THE PORT-DOUBLER
- ANALOG-DIGITAL-CONVERTER
- SLIDING POTENTIOMETER OR ROTARY POTENTIOMETER
- MAGNETIC SENSOR
- JOYSTICK
- PRESSURE AND TEMPERATURE SENSOR
- ADDITIONAL INFORMATION
- SUPPORT
- References
- Read User Manual Online (PDF format)
- Download This Manual (PDF format)
Joy-IT Joypi Expansion Kit
GENERAL INFORMATION
Dear Customer,
thank you for choosing our product. In the below, we will show you what you
need to know about commissioning and use of the product.
If you encounter any unexpected problems during use, please feel free to
contact us.
These instructions only refer to the expansion pack for the JoyPi. If you have any questions about the basic functions of the JoyPi, you can down-load the main JoyPi manual here.
ASSEMBLY
First, screw the spacers to the port doubler as seen in the picture below.
Your Raspberry Pi should already be screwed into the JoyPi. Now you can plug
the port doubler onto the Raspberry Pi.
CAUTION: The port doubler is not screwed to the Raspberry Pi, because the
port doubler has to be removed again when you want to close the JoyPi.
Finally, you only need to connect the GPIO strip of the JoyPi, with the GPIO
strip of the port doubler with the supplied cable.
INSTALLATION
For the commissioning of the ADC and the pressure and temperature sen-sor, it
is necessary to install the corresponding libraries.
In our prepared image, which you can download here, they are already
installed. If you use your own image, you can install the libraries with the
following commands.
adafruit/Adafruit_CircuitPython_ADS1x15
sudo pip3 install adafruit-circuitpython-ads1x15 adafruit/Adafruit_CircuitPython_BMP280 sudo apt-get install python3-smbus i2c- tools -y sudo pip3 install adafruit-circuitpython-bmp280
The sample scripts we prepared, are also already present on the image. You can also download the script directory manually here, or save it to your desktop with the following commands:
cd Desktop/
wget https://joy-pi.net/files/files/downloads/joypi/Joy-Pi.zip
unzip Joy-Pi.zip
Also, if you are using your own image, you need to enable I2C. To do this,
enter the following command in the terminal: sudo raspi-config
Now go to 3Interfacing Options and enable I5 I2C.
THE PORT-DOUBLER
The Port-Doubler has 4 GPIO-strips and allows the use of external sensors with the JoyPi. The pinout of each of the four GPIO strips of the Port Doubler is the same as that of the Raspberry Pi.
1 | 3.3 V DC |
---|---|
3 | GPIO 2 (SDA1, I2C) |
5 | GPIO 3 (SCL1, I2C) |
7 | GPIO 4 |
9 | Ground |
11 | GPIO 17 |
13 | GPIO 27 |
15 | GPIO 22 |
17 | 3.3 V |
19 | GPIO 10 (SPI, MOSI) |
21 | GPIO 9 (SPI, MISO) |
23 | GPIO 11 (SPI, CLK) |
25 | Ground |
27 | ID_SD (I2C, EEPROM) |
29 | GPIO 5 |
31 | GPIO 6 |
33 | GPIO 13 |
35 | GPIO 19 |
37 | GPIO 26 |
39 | Ground |
2 | 5 V DC |
---|---|
4 | 5 V DC |
6 | Ground |
8 | GPIO 14 (TXD0) |
10 | GPIO 15 (RXD0) |
12 | GPIO 18 |
14 | Ground |
16 | GPIO 23 |
18 | GPIO 24 |
20 | Ground |
22 | GPIO 25 |
24 | GPIO 8 (SPI) |
26 | GPIO 7 (SPI) |
28 | ID_SC |
30 | Ground |
32 | GPIO 12 |
34 | Ground |
36 | GPIO 16 |
38 | GPIO 20 |
40 | GPIO 21 |
ANALOG-DIGITAL-CONVERTER
The analog-to-digital converter (ADC) converts an analog voltage into a digital signal, which can be retrieved from the Raspberry Pi using the I2C protocol.
The pins A0 – A3 of the ADC are the 4 analog input channels. Thus, 4 analog sensors can be operated simultaneously. Please note that the voltage on the input channels of the ADC must not exceed 3.3 V. The further pin assignment can be found in the table below.
ADC | Raspberry Pi |
---|---|
VDD | 3.3 V (Pin 1) |
GND | GND (Pin 6) |
SCL | SCL (Pin 5) |
SDA | SDA (Pin 3) |
The following code example outputs the voltages applied to all 4 input channels.
You can run the file with the following command:
python3 /home/pi/Desktop/Joy-Pi/Extensions/adc.py
SLIDING POTENTIOMETER OR ROTARY POTENTIOMETER
In this expansion pack there is either a sliding potentiometer or a rotary
potentiometer. These differ only in the type of operation (shifting or turn-
ing a controller).
An analog-digital converter is required to use both potentiometers. You can
find the pin assignment of the respective potentiometer in the follo-wing
table.
The slider potentiometer is a linear variable resis-tor with a total resistance of 10 kΩ. Moving the sli-der from one side to the other changes its output voltage between 0V and the supply voltage.
Sliding potentiometer | ADC | Raspberry Pi |
---|---|---|
OUT | A0 | – |
LED | – | – |
U | VDD | 3.3 V (Pin 1) |
G | GND | GND (Pin 6) |
– | SCL | SCL (Pin 5) |
– | SDA | SDA (Pin 3) |
The rotary potentiometer is a variable resistor with a total resistance of 10 kΩ. Turning the rotary po-tentiometer from one side to the other changes its output voltage between 0V and the supply voltage.
Rotary potentiometer | ADC | Raspberry Pi |
---|---|---|
OUT | A0 | – |
VCC | VDD | 3.3 V (Pin 1) |
GND | GND | GND (Pin 6) |
– | SCL | SCL (Pin 5) |
– | SDA | SDA (Pin 3) |
The following code example outputs the voltages applied to the output pin of the potentiometer.
You can run the file with the following command:
python3 /home/pi/Desktop/Joy-Pi/Extensions/poti.py
MAGNETIC SENSOR
The magnetic field is measured by the sensor and output as an analog voltage
value. If the limit value is exceeded, a high signal is applied to the digital
pin.
This limit value can be set with the help of the blue potentiometer.
For the use of the magnetic sensor you additionally need the ADC. The pin assignment can be found in the table below.
Magnetic sensor | ADC | Raspberry Pi |
---|---|---|
A0 | A0 | – |
G | GND | GND |
+ | VDD | 3.3 V (Pin 1) |
D0 | – | GPIO 5 (Pin 29) |
– | SCL | SCL (Pin 5) |
– | SDA | SDA (Pin 3) |
The following code example outputs the voltages that are present at the output
pin of the magnetic sensor.
It also displays whether the limit value has been reached or not.
You can run the file with the following command:
python3 /home/pi/Desktop/Joy-Pi/Extensions/magnet.py
JOYSTICK
X and Y position of the joystick, are output as analog voltage on the out-put pins. In this joystick for the X-axis, as well as for the Y-axis, a separate potentio-meter for the X-axis and for the Y-axis. In addition, a button is built into the joystick, which detects when the joy-stick is pressed down.
To use the joystick, you also need the ADC. The pin assignment can be found in the table below.
Joystick | ADC | Raspberry Pi |
---|---|---|
GND | GND | GND (Pin 6) |
+5V | VCC | 3.3 V (Pin 1) |
VRx | A0 | – |
VRy | A1 | – |
SW | – | GPIO 6 (Pin 31) |
– | SCL | SCL (Pin 5) |
SDA | SDA (Pin 3) |
The following code example outputs the voltages applied to the X and Y axis pins graphically in a diagram.
It also indicates whether the joystick is pressed or not.
python3 /home/pi/Desktop/Joy-Pi/Extensions/joystick.py
You can run the file with the following command:
If you run the program over an SSH connection use the following com-mand: sudo
-E python3 /home/pi/Desktop/Joy-Pi/Extensions/joystick.py
PRESSURE AND TEMPERATURE SENSOR
This combination sensor can measure both temperature and air pres-sure. For the communication with the Raspberry Pi it uses, just like the ADC, the I2C protocol.
The pin assignment can be found in the table below.
BMP280 | Raspberry Pi |
---|---|
SD0 | 3.3 V (Pin 1) |
CSB | 3.3 V (Pin 1) |
SDA | SDA (Pin 3) |
SCL | SCL (Pin 5) |
VCC | 3.3 V (Pin 1) |
GND | GND (Pin 6) |
The following code example outputs the current temperature and air pressure.
You can run the file with the following command: python3 /home/pi/Desktop /Joy-Pi/Extensions/bmp.py
ADDITIONAL INFORMATION
Our information and take-back obligations under the Electrical and Electronic Equipment Act (ElektroG)
Symbol on electrical and electronic equipment:
This crossed-out dustbin means that electrical and electronic appliances do
not belong in the household waste. You must return the old appli-ances to a
collection point. Before handing over waste batteries and ac-cumulators that
are not en-closed by waste equipment must be separa-ted from it.
Return options:
As an end user, you can return your old device (which essentially fulfils the
same function as the new device purchased from us) free of charge for disposal
when you purchase a new device. Small appliances with no external dimensions
greater than 25 cm can be disposed of in normal household quantities
independently of the pur-chase of a new appliance.
Possibility return to our company location during the opening hours:
SIMAC Electronics GmbH, Pascalstr. 8, D-47506 Neukirchen-Vluyn
Possibility return in your area: We will send you a parcel stamp with
which you can return the device to us free of charge. Please contact us by
email at Service@joy-it.net or by tele-phone.
Packaging information:
If you do not have suitable packaging material or do not wish to use your own,
please contact us and we will send you suitable packaging.
SUPPORT
We are also there for you after the purchase. If any questions remain or
problems arise, we are also available to assist you via email, phone and
ticket support system.
E-Mail: service@joy-it.net
Ticket-System: http://support.joy-it.net
Phone: +49 (0)2845 9360 – 50 (10 – 17 Uhr)
For more information, visit our website: www.joy-it.net
References
- GPIO.IN
- ITnet | Servizi di Colocation e Cloud
- Joy-IT Helpdesk
- For Makers and Professionals | Joy-IT
- Adafruit Industries · GitHub
- GitHub - adafruit/Adafruit_CircuitPython_ADS1x15: CircuitPython drivers for the ADS1x15 series of ADCs.
- GitHub - adafruit/Adafruit_CircuitPython_BMP280: CircuitPython driver for the BMP280
- Downloads | Joy-Pi
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>