Bird
Raised Fist0
Raspberry Piprogramming~10 mins

Enabling I2C on Raspberry Pi - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to install the I2C tools package on Raspberry Pi.

Raspberry Pi
sudo apt-get [1] i2c-tools
Drag options to blanks, or click blank then click option'
Aremove
Bupgrade
Cupdate
Dinstall
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'remove' instead of 'install' will uninstall the package.
Using 'update' or 'upgrade' does not install new packages.
2fill in blank
medium

Complete the command to open the Raspberry Pi configuration tool.

Raspberry Pi
sudo raspi-config [1]
Drag options to blanks, or click blank then click option'
Anonint
B--enable-i2c
Cnoninteractive
Dinteractive
Attempts:
3 left
💡 Hint
Common Mistakes
Using '--enable-i2c' directly is not a valid raspi-config option.
Using 'interactive' is the default mode, not a command option.
3fill in blank
hard

Fix the error in the command to enable I2C interface using raspi-config.

Raspberry Pi
sudo raspi-config [1] i2c
Drag options to blanks, or click blank then click option'
Adisable
Benable
Cset
Dget
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'disable' will turn off the I2C interface.
Using 'set' or 'get' are not valid for this command.
4fill in blank
hard

Fill both blanks to add I2C modules to the Raspberry Pi boot configuration.

Raspberry Pi
echo '[1]' | sudo tee -a /etc/modules
sudo modprobe [2]
Drag options to blanks, or click blank then click option'
Ai2c-dev
Bspi-dev
Ci2c-bcm2708
Di2c
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'spi-dev' instead of 'i2c-dev' is wrong for I2C.
Using 'i2c' alone is not a valid module name.
5fill in blank
hard

Fill all three blanks to check connected I2C devices on Raspberry Pi.

Raspberry Pi
sudo [1] -y [2]
Drag options to blanks, or click blank then click option'
Ai2cdetect
B1
C0
Di2cdump
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'i2cdump' instead of 'i2cdetect' will not scan devices.
Using bus 0 instead of 1 may not detect devices on newer models.

Practice

(1/5)
1. What is the first step to enable I2C on a Raspberry Pi?
easy
A. Run sudo raspi-config and select Interface Options
B. Install I2C drivers manually using apt-get
C. Connect the I2C device before enabling the interface
D. Edit the /boot/config.txt file directly

Solution

  1. Step 1: Open Raspberry Pi configuration tool

    Use the command sudo raspi-config to open the configuration menu.
  2. Step 2: Enable I2C under Interface Options

    Navigate to Interface Options and select I2C to enable it.
  3. Final Answer:

    Run sudo raspi-config and select Interface Options -> Option A
  4. Quick Check:

    Enable I2C via raspi-config = Run sudo raspi-config and select Interface Options [OK]
Hint: Use raspi-config Interface Options to enable I2C quickly [OK]
Common Mistakes:
  • Trying to enable I2C by editing config files without raspi-config
  • Assuming I2C is enabled by default
  • Connecting devices before enabling I2C
2. Which command correctly checks for connected I2C devices on Raspberry Pi?
easy
A. i2cscan -a
B. scan_i2c -list
C. checki2c devices
D. i2cdetect -y 1

Solution

  1. Step 1: Identify the correct I2C scan command

    The standard command to detect I2C devices is i2cdetect -y 1 where '1' is the bus number.
  2. Step 2: Confirm other options are invalid

    Other options are not valid Linux commands for I2C detection.
  3. Final Answer:

    i2cdetect -y 1 -> Option D
  4. Quick Check:

    Use i2cdetect -y 1 to scan I2C devices [OK]
Hint: Use i2cdetect -y 1 to list I2C devices on bus 1 [OK]
Common Mistakes:
  • Using incorrect command names like i2cscan
  • Omitting the bus number in i2cdetect
  • Typing commands with typos
3. After enabling I2C via sudo raspi-config, what is the expected output of i2cdetect -y 1 if a device is connected at address 0x40?
medium
A. An error message: 'command not found'
B. A grid showing 'UU' at 0x40
C. A grid showing '40' at 0x40
D. Empty grid with no addresses

Solution

  1. Step 1: Understand i2cdetect output format

    The command shows a grid of addresses; connected devices show their hex address.
  2. Step 2: Interpret device presence at 0x40

    If a device is at 0x40, the grid will display '40' at that position.
  3. Final Answer:

    A grid showing '40' at 0x40 -> Option C
  4. Quick Check:

    Device address shown as hex number in grid = A grid showing '40' at 0x40 [OK]
Hint: Device addresses appear as hex numbers in i2cdetect grid [OK]
Common Mistakes:
  • Expecting 'UU' which shows kernel driver usage, not just device presence
  • Confusing error messages with device detection
  • Thinking the grid is empty if device is connected
4. You enabled I2C in raspi-config but i2cdetect -y 1 shows no devices. What is a likely cause?
medium
A. You forgot to reboot the Raspberry Pi after enabling I2C
B. All of the above
C. The I2C device is not connected to the Pi
D. The I2C bus number is incorrect

Solution

  1. Step 1: Check if reboot was done after enabling I2C

    Reboot is required to activate I2C changes; missing reboot causes no detection.
  2. Step 2: Verify device connection and bus number

    If device is not connected or wrong bus number used, no devices appear.
  3. Final Answer:

    All of the above -> Option B
  4. Quick Check:

    Missing reboot, no device, or wrong bus = no detection [OK]
Hint: Reboot and check connections if i2cdetect shows nothing [OK]
Common Mistakes:
  • Not rebooting after enabling I2C
  • Assuming device is connected without checking
  • Using wrong bus number in i2cdetect
5. You want to enable I2C on a Raspberry Pi and automatically detect devices on boot. Which sequence correctly achieves this?
hard
A. Enable I2C in raspi-config, reboot, add i2cdetect -y 1 to /etc/rc.local
B. Edit /boot/config.txt to enable I2C, reboot, run i2cdetect -y 0
C. Enable I2C in raspi-config, reboot, run i2cdetect -y 1 manually each time
D. Install I2C drivers manually, reboot, connect device, no further steps

Solution

  1. Step 1: Enable I2C using raspi-config and reboot

    This activates the I2C interface properly on boot.
  2. Step 2: Automate device detection on boot

    Adding i2cdetect -y 1 to /etc/rc.local runs the scan automatically at startup.
  3. Final Answer:

    Enable I2C in raspi-config, reboot, add i2cdetect -y 1 to /etc/rc.local -> Option A
  4. Quick Check:

    Enable, reboot, automate scan in rc.local = Enable I2C in raspi-config, reboot, add i2cdetect -y 1 to /etc/rc.local [OK]
Hint: Enable I2C, reboot, then automate i2cdetect in rc.local [OK]
Common Mistakes:
  • Using wrong bus number in i2cdetect
  • Not rebooting after enabling I2C
  • Assuming manual scan runs automatically without setup
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard