Bonjour les amis on va mettre en place une fonction sympathique avec le RPI4, tout le monde sait que le RPI4 est équipé d un port USB-C. Detrompez vous ce port USB-C ne sert pas qu a alimenter le RPI4. On peut aussi le configurer pour relier en reseau a un PC ou un iPad Pro via USB-C.
Ce qui évite en déplacement d’avoir des soucis de configuration wifi .Sans point acces disponible en déplacement par example… On peut utiliser le port USB-C comme un port « Ethernet » entre « RaspberryPi » et un « iPad Pro (USB-C) » ou un « ordinateur portable/bureau » équipé en « USB-C »
Par défaut sur un RaspBerryPi 4 fonctionnant avec l OS Raspbian ne permet pas d utiliser le port USB-C a part pour alimenter le RPI4. Il va falloir manuellement configure ce port USB-C :
Dans un premier lieu mettre la dernière version de raspbian sur la microSD. Ensuite il est pratique de mettre le fichier « ssh », « wpa_supplicant.conf » qui permettra d’activer le ssh et le Wifi dès le demarrage du raspberry ce qui permet de le demarrer sans écran
sudo apt update
sudo apt full-upgrade
sudo apt install rpi-eeprom
sudo rpi-eeprom-update
mettre "dtoverlay=dwc2"
sur via "sudo nano/boot/config.txt
" mettre "modules-load=dwc2
" à la fin fichier via "sudo nano/boot/cmdline.txt
"mettre "libcomposite"
via "sudo nano/etc/modules"
mettre "denyinterfaces usb0"
via "sudo nano/etc/dhcpcd.conf
"sudo apt-get install dnsmasq
sudo nano/etc/dnsmasq.d
/usb insérer le contenu ci dessous dans de le fichier :interface=usb0 dhcp-range=10.55.0.2,10.55.0.6,255.255.255.248,1h dhcp-option=3 leasefile-ro
sudo nano/etc/network/interfaces.d/usb0
insérer le contenu ci dessous dans le fichier :auto usb0 allow-hotplug usb0 iface usb0 inet static address 10.55.0.1 netmask 255.255.255.248
sudo nano/root/usb.sh
insérer le contenu ci dessous dans le fichier :
#!/bin/bash
cd /sys/kernel/config/usb_gadget/
mkdir -p pi4
cd pi4
echo 0x1d6b > idVendor # Linux Foundation echo 0x0104 > idProduct # Multifunction Composite Gadget
echo 0x0100 > bcdDevice # v1.0.0 echo 0x0200 > bcdUSB # USB2
echo 0xEF > bDeviceClass echo 0x02 > bDeviceSubClass echo 0x01 > bDeviceProtocol
mkdir -p strings/0x409 echo "fedcba9876543211" > strings/0x409/serialnumber
echo "Ben Hardill" > strings/0x409/manufacturer
echo "PI4 USB Device" > strings/0x409/product
mkdir -p configs/c.1/strings/0x409
echo "Config 1: ECM network" > configs/c.1/strings/0x409/configuration
echo 250 > configs/c.1/MaxPower
# Add functions here # see gadget configurations below
# End functions
mkdir -p functions/ecm.usb0
HOST="00:dc:c8:f7:75:14"
# "HostPC"
SELF="00:dd:dc:eb:6d:a1"
# "BadUSB"
echo $HOST > functions/ecm.usb0/host_addr
echo $SELF > functions/ecm.usb0/dev_addr
ln -s functions/ecm.usb0 configs/c.1/
udevadm settle -t 5 || :
ls /sys/class/udc > UDC
ifup usb0
Ensuite on met le script en mode executable
service dnsmasq restart
chmod +x /root/usb.sh
mettre/root/usb.sh
dans le fichier "sudo nano/etc/rc.local
" juste avant exit 0
Ensuite on débranche le cable « USB-C » d alimentation. On branche le cable « USB-C » à l iPad ou au PC muni d un « USB-C » ,. Ce qui permet d alimenter le RPI est monter une carte réseau ethernet virtuelle