mirror of
				https://github.com/alexandrebobkov/ESP-Nodes.git
				synced 2025-11-04 13:39:56 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
# SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
 | 
						|
# SPDX-License-Identifier: Unlicense OR CC0-1.0
 | 
						|
import pytest
 | 
						|
from pytest_embedded_idf import IdfDut
 | 
						|
 | 
						|
EXPECT_TIMEOUT = 20
 | 
						|
 | 
						|
 | 
						|
@pytest.mark.esp32
 | 
						|
@pytest.mark.ccs811
 | 
						|
def test_i2ctools_example(dut: IdfDut) -> None:
 | 
						|
    dut.expect_exact('i2c-tools>', timeout=EXPECT_TIMEOUT)
 | 
						|
    # Get i2c address
 | 
						|
    dut.write('i2cdetect')
 | 
						|
    dut.expect_exact('5b', timeout=EXPECT_TIMEOUT)
 | 
						|
    # Get chip ID
 | 
						|
    dut.write('i2cget -c 0x5b -r 0x20 -l 1')
 | 
						|
    dut.expect_exact('0x81', timeout=EXPECT_TIMEOUT)
 | 
						|
    # Reset sensor
 | 
						|
    dut.write('i2cset -c 0x5b -r 0xFF 0x11 0xE5 0x72 0x8A')
 | 
						|
    dut.expect_exact('OK', timeout=EXPECT_TIMEOUT)
 | 
						|
    # Get status
 | 
						|
    dut.write('i2cget -c 0x5b -r 0x00 -l 1')
 | 
						|
    dut.expect_exact('0x10', timeout=EXPECT_TIMEOUT)
 | 
						|
    # Change work mode
 | 
						|
    dut.write('i2cset -c 0x5b -r 0xF4')
 | 
						|
    dut.expect_exact('OK', timeout=EXPECT_TIMEOUT)
 | 
						|
    dut.write('i2cset -c 0x5b -r 0x01 0x10')
 | 
						|
    dut.expect_exact('OK', timeout=EXPECT_TIMEOUT)
 | 
						|
    # Get new status
 | 
						|
    dut.write('i2cget -c 0x5b -r 0x00 -l 1')
 | 
						|
    dut.expect_exact(['0x98', '0x90'], timeout=EXPECT_TIMEOUT)
 |