minerva/hardware/maixduino/maix_discover_modules.py
pyr0ball 173f7f37d4 feat: import mycroft-precise work as Minerva foundation
Ports prior voice assistant research and prototypes from devl/Devops
into the Minerva repo. Includes:

- docs/: architecture, wake word guides, ESP32-S3 spec, hardware buying guide
- scripts/: voice_server.py, voice_server_enhanced.py, setup scripts
- hardware/maixduino/: edge device scripts with WiFi credentials scrubbed
  (replaced hardcoded password with secrets.py pattern)
- config/.env.example: server config template
- .gitignore: excludes .env, secrets.py, model blobs, ELF firmware
- CLAUDE.md: Minerva product context and connection to cf-voice roadmap
2026-04-06 22:21:12 -07:00

51 lines
1.1 KiB
Python
Executable file

# Discover what network/WiFi modules are actually available
import lcd
import sys
lcd.init()
lcd.clear()
print("=" * 40)
print("Module Discovery")
print("=" * 40)
# Try different possible module names
modules_to_try = [
"network",
"network_esp32",
"network_esp8285",
"esp32_spi",
"esp8285",
"wifi",
"ESP32_SPI",
"WIFI"
]
found = []
y = 10
for module_name in modules_to_try:
try:
mod = __import__(module_name)
msg = "FOUND: " + module_name
print(msg)
lcd.draw_string(10, y, msg[:25], 0x07E0, 0x0000) # Green
y += 15
found.append(module_name)
# Show methods
print(" Methods: " + str(dir(mod)))
except Exception as e:
msg = "NONE: " + module_name
print(msg + " (" + str(e) + ")")
print("\n" + "=" * 40)
if found:
print("Found modules: " + str(found))
lcd.draw_string(10, y + 20, "Found: " + str(len(found)), 0xFFFF, 0x0000)
else:
print("No WiFi modules found!")
lcd.draw_string(10, y + 20, "No WiFi found!", 0xF800, 0x0000)
print("=" * 40)