| name | appliance-fault-diagnosis |
| description | Diagnose home appliance faults using local knowledge base before searching external sources |
| version | 1.0.0 |
| metadata | {"hermes":{"tags":["appliance","refrigerator","fault-codes","knowledge-base","troubleshooting"]}} |
Appliance Fault Diagnosis with Local Knowledge Base
When users report appliance problems (especially refrigerators), always check the local knowledge base first before searching externally.
Knowledge Base Location
~/mydocs/knowledgebase/
Available Resources
Text Files
ๅฎถ็ต็ปดไฟฎ.txt - Contains fault codes and descriptions
PDF Manuals (VERIFIED CONTENTS)
| Filename | Actual Content | Pages |
|---|
BN81-27185G-690_EUG_ROPDVBCNF_CN_S-CHI_250818.0.pdf | Samsung TV user manual | 254 |
DA68-04798R-06_RF8500_Defeature_CN_SVC.pdf | Samsung Refrigerator RF50DG5021 user manual | 46 |
DB68-12848B-01_QG_FAC_MEMORY_SC_ZH-CH_2026.03.17.pdf | Samsung AC (Air Conditioner) quick guide | 16 |
OID78248_IB_T-PJT_WD8000D_7LCD_ZH-CN_260113.pdf | Samsung WD8000D Washing Machine manual | (unverified) |
โ ๏ธ Critical Lesson: PDF filenames may NOT match content (e.g., "RF8500" filename contains RF50DG5021 refrigerator manual). Always verify by extracting first few pages before referencing.
Workflow
Step 1: List Knowledge Base Contents
ls -la ~/hermes-agent/mydocs/knowledgebase/
Note: Path is ~/hermes-agent/mydocs/knowledgebase/ (relative to hermes-agent directory).
Step 2: Read Fault Code Reference (TEXT FILE FIRST)
cat ~/hermes-agent/mydocs/knowledgebase/ๅฎถ็ต็ปดไฟฎ.txt
Contains basic fault codes for refrigerators (C71, C72, C73, C76).
Step 3: Search PDF Manuals for Detailed Information
Install pymupdf if needed:
~/hermes-agent/venv/bin/python -m pip install pymupdf -q
Extract and verify PDF content (first 30 pages):
import pymupdf
doc = pymupdf.open("/home/user/hermes-agent/mydocs/knowledgebase/<filename>.pdf")
text = ""
for i, page in enumerate(doc[:30]):
text += f"\n=== ็ฌฌ {i+1} ้กต ===\n"
text += page.get_text()
print(text[:15000])
print(f"\n\nๆป้กตๆฐ๏ผ{len(doc)}")
Search for specific content (error codes, symptoms):
import pymupdf
doc = pymupdf.open("/home/user/hermes-agent/mydocs/knowledgebase/<filename>.pdf")
for i, page in enumerate(doc):
text = page.get_text()
if "้ซๆธฉ" in text or "ๆฅ่ญฆ" in text or "้่ฏฏ" in text:
print(f"\n=== ็ฌฌ {i+1} ้กต ===")
print(text[:2000])
Extract specific sections (e.g., pages 39-46 for troubleshooting):
import pymupdf
doc = pymupdf.open("/home/user/hermes-agent/mydocs/knowledgebase/<filename>.pdf")
text = ""
for i, page in enumerate(doc[38:46]):
text += f"\n=== ็ฌฌ {i+39} ้กต ===\n"
text += page.get_text()
print(text[:12000])
Step 4: Provide Troubleshooting Steps
From ๅฎถ็ต็ปดไฟฎ.txt (basic fault codes):
| Code | Fault | Solution |
|---|
| C71 | ๅทๅปๅฎค้ซๆธฉๆฃๆต | Check freezer door closed, no hot food stored |
| C72 | ๅท่ๅฎค้ซๆธฉๆฃๆต | Check refrigerator door closed, no hot food stored |
| C73 | ๆดไธชๅฐ็ฎฑ้ซๆธฉๆฃๆต | Check all doors closed |
| C76 | ่ชๅจๆณจๆฐดๆบขๅบ้่ฏฏ | Remove rubber plug from water bucket bottom, drain, replace plug |
From Refrigerator Manual (DA68-04798R-06) - Comprehensive Troubleshooting:
| Symptom | Possible Cause | Solution |
|---|
| ๅท่ๅฎค/ๅทๅปๅฎคไธๅทฅไฝ | ็ตๆบ็บฟๆชๆญฃ็กฎๆๅ
ฅ | ๆญฃ็กฎๆๅ
ฅ็ตๆบ็บฟ |
| ๅท่ๅฎค/ๅทๅปๅฎคๆธฉๅบฆ้ซ | ๆธฉๅบฆๆงๅถ่ฎพ็ฝฎๅ้ซ | ่ฎพ็ฝฎๆดไฝๆธฉๅบฆ |
| ๅท่ๅฎค/ๅทๅปๅฎคๆธฉๅบฆ้ซ | ๅฐ็ฎฑ้ ่ฟ็ญๆบๆ้ณๅ
็ดๅฐ | ่ฎฉๅฐ็ฎฑ่ฟ็ฆป้ณๅ
็ดๅฐๆ็ญๆบ |
| ๅท่ๅฎค/ๅทๅปๅฎคๆธฉๅบฆ้ซ | ๅฐ็ฎฑ่ฟ่ฝฝ๏ผ้ฃ็ฉๆกไฝ้้ฃๅฃ | ่ฏทๅฟ่ฟ่ฝฝๅฐ็ฎฑ๏ผ่ฏทๅฟ่ฎฉ้ฃ็ฉๆกไฝ้้ฃๅฃ |
| ๅท่ๅฎค/ๅทๅปๅฎค่ฟๅบฆๅถๅท | ๆธฉๅบฆๆงๅถ่ฎพ็ฝฎๅไฝ | ่ฎพ็ฝฎๆด้ซๆธฉๅบฆ |
| ็ฎฑๅฃๅ็ญ | ้ฒ้ฒ็ฎกๆญฃๅธธๅทฅไฝ | ้ๆ
้๏ผๆญฃๅธธ็ฐ่ฑก |
| ๅฐ็ฎฑๆๅผๅณ | ้ฃ็ฉๅ่ดจ | ๆธ
ๆดๅฐ็ฎฑ๏ผๅๅบๅ่ดจ้ฃ็ฉ |
| ๅฐ็ฎฑๆๅผๅณ | ๆๅผบ็ๆฐๅณ็้ฃ็ฉ | ็กฎไฟ็ดง็ดงๅ
่ฃนๆๅผบ็ๆฐๅณ็้ฃ็ฉ |
| ้้ฃๅฃๅจๅด็ป้ | ้ฃ็ฉๆกไฝ้้ฃๅฃ | ็กฎไฟๆฒกๆ้ฃ็ฉๆกไฝ้้ฃๅฃ |
| ๅ
ๅฃ็ป้ | ๅ
ณ้จๆ็ผ้ | ็กฎไฟ้ฃ็ฉๆฒกๆกไฝ้จ๏ผๆธ
ๆด้จๅซๅ |
| ๅ
ๅฃๅทๅ | ้จไฟๆๆๅผ๏ผๆนฟๆฐ่ฟๅ
ฅ | ๆๅบๆนฟๆฐ๏ผๅฟ้ฟๆถ้ดๅผ้จ |
| ๅ
ๅฃๅทๅ | ๅซๅคง้ๆฐดๅ็้ฃ็ฉ | ็กฎไฟ็ดง็ดงๅ
่ฃน้ฃ็ฉ |
Samsung Customer Service: 400-810-5858 (all Samsung appliances)
Response Template
When user reports a fault code:
- Confirm the fault code and its meaning from knowledge base
- Provide step-by-step troubleshooting:
- Check doors/seals
- Check stored items (no hot food)
- Check ventilation (no blockage)
- Check temperature settings
- Wait 2-4 hours for recovery
- Contact service if problem persists
- Ask for appliance model to look up specific manual if needed
- Provide relevant technical specs if user asks (capacity, dimensions, power, etc.)
Samsung Refrigerator RF50DG5021 Quick Reference
Models: RF50DG5021CWSC, RF50DG5021EMSC
| Parameter | Value |
|---|
| Total Capacity | 501 L |
| Refrigerator | 325 L (1~7โ) |
| Freezer | 88 L (-23~-15โ) |
| Multi-Zone | 88 L (-23~3โ) |
| Dimensions | 834ร600ร1920 mm (WรDรH) |
| Power | 220V~/50Hz, 2.5A, 170W |
| Refrigerant | R-600a / 86g |
| Energy Rating | Level 1 |
| Noise | 36 dB(A) |
| Annual Consumption | 361 kWยทh/y |
Temperature Settings:
- Refrigerator: 1~7โ (default ~3โ)
- Freezer: -23~-15โ (default -19โ)
- Multi-Zone modes: Freezer (-23~-15โ), Soft Freeze (-3โ), Meat/Fish (-1โ), Fruit/Veg (2โ), Beverage (3โ), Grain/Tea (3โ)
Smart Features: SmartThings app support, Wi-Fi (2.4GHz), Ion Deodorization (model dependent)
Key Questions to Ask User
- What fault code is displayed?
- What is the specific problem? (not cooling, too warm, leaking, no power)
- What is the appliance model number?
Extracting Images from PDF Manuals
Extract all embedded images (diagrams, installation figures):
import pymupdf
import os
pdf_path = "/home/user/hermes-agent/mydocs/knowledgebase/<filename>.pdf"
output_dir = "/home/user/hermes-agent/mydocs/knowledgebase/images"
os.makedirs(output_dir, exist_ok=True)
doc = pymupdf.open(pdf_path)
image_count = 0
for page_num in range(len(doc)):
page = doc[page_num]
image_list = page.get_images(full=True)
if image_list:
print(f"็ฌฌ {page_num + 1} ้กต ๆพๅฐ {len(image_list)} ๅผ ๅพ็")
for img_index, img in enumerate(image_list):
xref = img[0]
base_image = doc.extract_image(xref)
image_bytes = base_image["image"]
image_ext = base_image["ext"]
filename = f"{output_dir}/<prefix>_p{page_num+1}_img{img_index+1}.{image_ext}"
with open(filename, "wb") as f:
f.write(image_bytes)
image_count += 1
print(f"โ
ๆปๅ
ฑๆๅ {image_count} ๅผ ๅพ็")
Typical image locations in refrigerator manual:
- Page 1: Productๅค่งๅพ, Logo
- Page 18: ๅฎ่ฃ
ๅฐบๅฏธๅพ๏ผ็ฉบ้ด่ฆๆฑ็คบๆๅพ (8 images)
- Page 21-22: ๅซๆฟไฝฟ็จๆนๆณ๏ผๆญขๅจๅๅฎ่ฃ
ๅพ๏ผๆๅบงไฝ็ฝฎๅพ (26 images)
- Page 33: ๆงๅถ้ขๆฟ็คบๆๅพ
Creating ASCII Diagrams (when matplotlib Chinese fonts unavailable)
Matplotlib Chinese font issue:
Fallback: Use ASCII art for structural diagrams:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ไธๆๅฐ็ฎฑ RF50DG5021 ๅ
้จ็ปๆ็คบๆๅพ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฃ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๅท่ๅฎค (325L) 1~7โ โ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โๆๆฟโ โ
โ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ โ
โ โ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โ โ
โ โ โ ๆฝๅฑ โ โ ๆฝๅฑ โ โ โ
โ โ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๅๆธฉๅฎค (88L) -23โ~3โ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๅทๅปๅฎค (88L) -23โ~-15โ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Important Notes
- Always check knowledge base FIRST - user prefers local documentation before web search
- PDF filenames may NOT match content - verified: "RF8500" filename contains RF50DG5021 refrigerator manual
- Use absolute paths for PDF extraction:
/home/user/hermes-agent/mydocs/knowledgebase/
- Install pymupdf for PDF text extraction:
~/hermes-agent/venv/bin/python -m pip install pymupdf -q
- Extract systematically: First 30 pages for content ID, then search for keywords, then extract specific sections
- Fault codes are model-specific - verify against correct manual
- Some issues resolve automatically after 2-4 hours if door was left open or hot food was stored
- Normal sounds (clicking, buzzing, hissing, bubbling, cracking) are NOT faults - educate users
- Samsung Customer Service: 400-810-5858 (applicable to all Samsung appliances)
- High humidity condensation (ๅๅๅคฉ๏ผๆข
้จๅญฃ่) on exterior is normal - will disappear automatically
- Images can be extracted from PDFs for diagrams (36 images in refrigerator manual)
- ASCII art fallback when matplotlib lacks Chinese font support