mirror of
				https://github.com/esphome/esphome.git
				synced 2025-11-04 09:01:49 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			120 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			120 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
modbus:
 | 
						|
  - id: mod_bus2
 | 
						|
    uart_id: uart_bus
 | 
						|
    role: server
 | 
						|
 | 
						|
modbus_controller:
 | 
						|
  - id: modbus_controller1
 | 
						|
    address: 0x2
 | 
						|
    modbus_id: modbus_bus
 | 
						|
    allow_duplicate_commands: false
 | 
						|
    on_online:
 | 
						|
      then:
 | 
						|
        logger.log: "Module Online"
 | 
						|
  - id: modbus_controller2
 | 
						|
    address: 0x2
 | 
						|
    modbus_id: mod_bus2
 | 
						|
    server_registers:
 | 
						|
      - address: 0x0000
 | 
						|
        value_type: S_DWORD_R
 | 
						|
        read_lambda: |-
 | 
						|
          return 42.3;
 | 
						|
    max_cmd_retries: 0
 | 
						|
  - id: modbus_controller3
 | 
						|
    address: 0x3
 | 
						|
    modbus_id: mod_bus2
 | 
						|
    server_registers:
 | 
						|
      - address: 0x0009
 | 
						|
        value_type: S_DWORD
 | 
						|
        read_lambda: |-
 | 
						|
          return 31;
 | 
						|
        write_lambda: |-
 | 
						|
          printf("address=%d, value=%d", x);
 | 
						|
          return true;
 | 
						|
    max_cmd_retries: 0
 | 
						|
  - id: modbus_controller4
 | 
						|
    modbus_id: mod_bus2
 | 
						|
    address: 0x4
 | 
						|
    server_courtesy_response:
 | 
						|
      enabled: true
 | 
						|
      register_last_address: 100
 | 
						|
      register_value: 0
 | 
						|
    server_registers:
 | 
						|
      - address: 0x0001
 | 
						|
        value_type: U_WORD
 | 
						|
        read_lambda: |-
 | 
						|
          return 0x8;
 | 
						|
      - address: 0x0005
 | 
						|
        value_type: U_WORD
 | 
						|
        read_lambda: |-
 | 
						|
          return (random_uint32() % 100);
 | 
						|
binary_sensor:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_binary_sensor1
 | 
						|
    name: Test Binary Sensor
 | 
						|
    register_type: read
 | 
						|
    address: 0x3200
 | 
						|
    bitmask: 0x80
 | 
						|
 | 
						|
number:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_number1
 | 
						|
    name: Test Number
 | 
						|
    address: 0x9001
 | 
						|
    value_type: U_WORD
 | 
						|
    multiply: 1.0
 | 
						|
 | 
						|
output:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_output1
 | 
						|
    address: 2048
 | 
						|
    register_type: holding
 | 
						|
    value_type: U_WORD
 | 
						|
    multiply: 1000
 | 
						|
 | 
						|
select:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_select1
 | 
						|
    name: Test Select
 | 
						|
    address: 1000
 | 
						|
    value_type: U_WORD
 | 
						|
    optionsmap:
 | 
						|
      "Zero": 0
 | 
						|
      "One": 1
 | 
						|
      "Two": 2
 | 
						|
      "Three": 3
 | 
						|
 | 
						|
sensor:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_sensor1
 | 
						|
    name: Test Sensor
 | 
						|
    register_type: holding
 | 
						|
    address: 0x9001
 | 
						|
    unit_of_measurement: "AH"
 | 
						|
    value_type: U_WORD
 | 
						|
 | 
						|
switch:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_switch1
 | 
						|
    name: Test Switch
 | 
						|
    register_type: coil
 | 
						|
    address: 0x15
 | 
						|
    bitmask: 1
 | 
						|
 | 
						|
text_sensor:
 | 
						|
  - platform: modbus_controller
 | 
						|
    modbus_controller_id: modbus_controller1
 | 
						|
    id: modbus_text_sensor1
 | 
						|
    name: Test Text Sensor
 | 
						|
    register_type: holding
 | 
						|
    address: 0x9013
 | 
						|
    register_count: 3
 | 
						|
    raw_encode: HEXBYTES
 | 
						|
    response_size: 6
 |