Multiple 1-wire buses on the raspberry pi 3 and multiple DS18B20


Introduction of Serial Expansion HAT

Raspberry Pi Organization designed the device Raspberry Pi with only a UART port to transmit and receive data over serial communication. Many people use the serial ports for the serial communication between two Raspberry Pi but for the multiple connections, Serial expansion HAT performs the system with higher efficiency. 

Features of Serial Expansion HAT

  • Connectivity – Raspberry Pi connectivity with standard 40 pin GPIO header, compatible with all the
  • I2C – There is an onboard SC16IS752 that expands UART of 2-channels and 8 GPIO, programmable, through I2C.
  • Easy stacking –  It is arranged together up to 16 of these modules by setting the address jumper A0 and A1 that would make 32-ch UART. It would enable the user to stack the devices that enhance the efficiency of the task.  
  • Work position – There are multi LEDs that are connected onboard for indicating the position of work of UART which makes the user understand the status of the device. 
  • Raspberry Pi GPIO accessible 

How To Configure Serial Expansion HAT?

When one does the placement of the Serial Expansion HAT on the Raspberry Pi serial port that it needs to be programmed for the task. A lot of people are looking online for the Raspberry Pi serial communication python method. One needs to perform the following steps

  • Install Python Libraries

sudo apt-get install python-dev

sudo apt-get install python-smbus

sudo apt-get install python-spidev

  • Enable I2C Interface
Execute the command: sudo raspi-config

Choose: Interfacing Options->I2C->Yes

  • Append this line to end of /boot/config.txt file, execute command:

sudo nano /boot/config.txt

and paste this line


# addr is different according to status of A0/A1, default 0X48

  • Reboot

sudo reboot

  • After rebooting, you can execute the command: ls /dev/ to check if SC16IS752 has been enabled to the kernel
  • You can also execute the below command to find out the connected i2c device       

address: sudo i2cdetect -y 1

Details of Raspberry Pi PPP Over Serial

One of the easiest ways to setup up a connection between the Raspberry Pi and another computer is from the usage of the ETHERNET cable. If there is no possibility of this then one can set up the connection over a serial cable. PPP is the acronym of the Point-to-Point Protocol and in this process a network connection runs over a serial cable that a user can use for copying files onto the Raspberry Pi which makes the work easier for the user. 

Steps to operate over serial

Step 1: First the user needs to log in to the Raspberry Pi over the serial cable and run the PPP Protocol Daemon:

sudo pppd noauth

Some garbage will start appearing in the terminal. The user needs to take this as a hint for quitting your terminal and proceed for the further process.

Step 2: Start the Point-to-Point protocol on the second computer. The user needs to use the following command

sudo pppd noauth proxyarp /dev/tty.usbserial-FTGCC2MV 115200 passive local maxfail 0 nocrtscts xonxoff

replacing /dev/tty.usbserial-FTGCC2MV with the name of your serial port. 



  • Accommodate 4 Raspberry Pi cameras on a multi-camera adapter board
  • Stackable and maxim cascade 4 adapter boards
  • 3 GPIOs required for multiplexing on one adapter board, 5 GPIOs for two adapter board, 9 GPIOs for four adapter board
  • All camera ports are FFC (flexible flat cable) connectors
  • DIP switches for easy stack up configuration
  • Support Raspberry Pi A/B/B+ and Pi 2.

VLAN Tagging On Your Switch

Most modern managed Ethernet switches can handle VLAN tagging. All you need to do on the Switch side is enable tagging of the selected port to all the VLANs you want to connect to your RPi. How to do that differs from Switch to Switch. On my HP switch it’s only a matter of ticking some boxes in the VLANs – Participation / Tagging menu. There you select a T for each VLAN you want to connect to the selected Ethernet port. And don’t forget to click Apply for each VLAN.  Normally an output port of the Switch is Untagged

Normally an output port of the Switch is Untagged. This means that none of the packets sent or received through this port are modified by the Switch. This also implies that the packets can belong to only one VLAN. Untagging a particular output port to a different VLAN will disable the port on the VLAN it previously belonged to.

If you set an output port of the Switch to Tagged to VLAN X, all packets belonging to VLAN X will be transmitted or received through the select port as well, all packets will carry the VLAN number. You’ll have to tag the same Ethernet port to more than one VLAN, otherwise it will not make much sense to tag a port. You can even leave one VLAN untagged to that port. In mixed mode you can have one Untagged VLAN connected to a port and one or more Tagged VLANs connected to the same port. In this mixed mode a normal computer will only be able to communicate with the untagged VLAN. All tagged packets will be ignored by a physicial network adapter. And a physical network adapter will never send out tagged packets, only virtual network VLAN adapters can do that. A computer can only connect to the Tagged VLANs if it is set up properly using IEEE 802.1q virtual VLAN network adapters. Tagging a port implies that the connected computer (or other network device) has to be IEEE 802.1q compliant. Otherwise it won’t understand the modified packets. Normal computers won’t be able to connect to such a Switch port, without appropriate settings. I’ll cover the RPi settings to make it IEEE 802.1q compliant next.

How To Set Up a WireGuard VPN Server on Ubuntu Linux

With WireGuard now officially supported by Ubuntu and integrated into the Linux kernel, I’ve decided it’s high time to for dedicated guide on how to set up a WireGuard VPN server on Ubuntu.…

TorqueWrench • 22 Apr 2020

Step 2: Active a One Wire GPIO

By default the W1 protocol is disabled on a raspberry Pi. We can active this protocol by adding this line in the boot/config.

Add this line at the bottom of the file

Reboot the raspberry Pi

Arducam posting rules

The posting rules aim to help you better articulate your questions and be descriptive enough to get help. 

Any topic that fails to comply with the posting rules will be unapproved starting from 11/11/2020.

This forum is public. If you prefer a private conversation with Arducam, go to our Contact Center.

If you need help with the Arducam products you’ve purchased, please include the following questions in your post and answer them to help us better understand your needs.

  1. Which seller did you purchase the product(s) from? (Is it Amazon, UCTRONICS, or other Arducam distributors?)
  2. What’s the Model number of the product(s) you’ve purchased? (If you don’t know the model number, show us the link to the product.)
  3. Which Platform are you using the product(s) on? (Is it a Raspberry Pi 3B+/4B, Arduino UNO R3, Jetson Nano B01, or another host?)
  4. Which instruction are you following? (Is it our paper instruction manual, online documentation, or video tutorial? A link will Help.)
  5. Has your product ever worked properly? (Never worked, quit working, or work intermittently)
  6. What problems are you experiencing? (pictures and error codes will help a lot)
  7. What attempts at troubleshooting have you already made?
  8. How would you like us to help you?