mudpi / mudpi-core

Configurable automation library for linux SBC boards including raspberry pi
https://mudpi.app
275 stars 40 forks source link

Armbian OPI lite code working #18

Closed yeyeto2788 closed 3 years ago

yeyeto2788 commented 3 years ago

I'll try to make more testing on the board and see if I can plug another sensor on it.

olixr commented 3 years ago

Can you test this on the new v0.10.0 https://github.com/mudpi/mudpi-core/commit/809f998aeec62af7ddef827326065177e5bf7c50

I added support for many other linux boards and reduced the requirements so MudPi can run even on my mac. I do not have an OPI lite to test on. If you can confirm they are working that would be great. Otherwise we may need to replicate these changes in the new v0.10.0 updates.

yeyeto2788 commented 3 years ago

Sure I'll test it this week, do I keep the PR open?

yeyeto2788 commented 3 years ago

Hey @olixr,

Here you have more or less a step by step of what I did today:

  1. Merge your feature branch into my fork
  2. Checkout to that branch and create a new virtual environment.
  3. Install mudpi-core
    
    (venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ python setup.py install
    running install
    running bdist_egg
    running egg_info
    creating mudpi.egg-info
    writing mudpi.egg-info/PKG-INFO
    writing dependency_links to mudpi.egg-info/dependency_links.txt
    writing entry points to mudpi.egg-info/entry_points.txt
    writing requirements to mudpi.egg-info/requires.txt
    writing top-level names to mudpi.egg-info/top_level.txt
    writing manifest file 'mudpi.egg-info/SOURCES.txt'
    reading manifest file 'mudpi.egg-info/SOURCES.txt'
    writing manifest file 'mudpi.egg-info/SOURCES.txt'
    installing library code to build/bdist.linux-armv7l/egg
    running install_lib
    running build_py
    creating build/lib/mudpi/triggers
    copying mudpi/triggers/trigger.py -> build/lib/mudpi/triggers
    copying mudpi/triggers/time_trigger.py -> build/lib/mudpi/triggers
    copying mudpi/triggers/control_trigger.py -> build/lib/mudpi/triggers
    copying mudpi/triggers/sensor_trigger.py -> build/lib/mudpi/triggers
    copying mudpi/triggers/__init__.py -> build/lib/mudpi/triggers
    copying mudpi/triggers/trigger_group.py -> build/lib/mudpi/triggers
    copying mudpi/workers/trigger_worker.py -> build/lib/mudpi/workers
    creating build/bdist.linux-armv7l
    creating build/bdist.linux-armv7l/egg
    creating build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/core.py -> build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/exceptions.py -> build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/importer.py -> build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/config.py -> build/bdist.linux-armv7l/egg/mudpi
    creating build/bdist.linux-armv7l/egg/mudpi/logger
    copying build/lib/mudpi/logger/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/logger
    copying build/lib/mudpi/logger/Logger.py -> build/bdist.linux-armv7l/egg/mudpi/logger
    creating build/bdist.linux-armv7l/egg/mudpi/triggers
    copying build/lib/mudpi/triggers/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/triggers
    copying build/lib/mudpi/triggers/time_trigger.py -> build/bdist.linux-armv7l/egg/mudpi/triggers
    copying build/lib/mudpi/triggers/control_trigger.py -> build/bdist.linux-armv7l/egg/mudpi/triggers
    copying build/lib/mudpi/triggers/sensor_trigger.py -> build/bdist.linux-armv7l/egg/mudpi/triggers
    copying build/lib/mudpi/triggers/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/triggers
    copying build/lib/mudpi/triggers/trigger_group.py -> build/bdist.linux-armv7l/egg/mudpi/triggers
    creating build/bdist.linux-armv7l/egg/mudpi/workers
    creating build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/camera_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/control_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/i2c_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/sensor_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/relay_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/linux/display_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/linux
    copying build/lib/mudpi/workers/trigger_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers
    copying build/lib/mudpi/workers/adc_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers
    copying build/lib/mudpi/workers/sequence_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers
    copying build/lib/mudpi/workers/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/workers
    creating build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/arduino/arduino_sensor_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/arduino/arduino_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/arduino/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/arduino/worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/arduino/arduino_relay_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/arduino/arduino_control_worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers/arduino
    copying build/lib/mudpi/workers/worker.py -> build/bdist.linux-armv7l/egg/mudpi/workers
    creating build/bdist.linux-armv7l/egg/mudpi/extensions
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/cron
    copying build/lib/mudpi/extensions/cron/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/cron
    copying build/lib/mudpi/extensions/cron/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/cron
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/sensor
    copying build/lib/mudpi/extensions/sensor/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/sensor
    copying build/lib/mudpi/extensions/sensor/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/sensor
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/camera
    copying build/lib/mudpi/extensions/camera/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/camera
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/state
    copying build/lib/mudpi/extensions/state/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/state
    copying build/lib/mudpi/extensions/state/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/state
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/mqtt
    copying build/lib/mudpi/extensions/mqtt/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/mqtt
    copying build/lib/mudpi/extensions/mqtt/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/mqtt
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/t9602
    copying build/lib/mudpi/extensions/t9602/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/t9602
    copying build/lib/mudpi/extensions/t9602/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/t9602
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/gpio
    copying build/lib/mudpi/extensions/gpio/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/gpio
    copying build/lib/mudpi/extensions/gpio/toggle.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/gpio
    copying build/lib/mudpi/extensions/gpio/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/gpio
    copying build/lib/mudpi/extensions/gpio/control.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/gpio
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy
    copying build/lib/mudpi/extensions/nanpy/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy
    copying build/lib/mudpi/extensions/nanpy/toggle.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy
    copying build/lib/mudpi/extensions/nanpy/char_display.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy
    copying build/lib/mudpi/extensions/nanpy/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy
    copying build/lib/mudpi/extensions/nanpy/control.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/rtsp
    copying build/lib/mudpi/extensions/rtsp/camera.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/rtsp
    copying build/lib/mudpi/extensions/rtsp/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/rtsp
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/i2c
    copying build/lib/mudpi/extensions/i2c/char_display.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/i2c
    copying build/lib/mudpi/extensions/i2c/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/i2c
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/trigger
    copying build/lib/mudpi/extensions/trigger/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/trigger
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/char_display
    copying build/lib/mudpi/extensions/char_display/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/char_display
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/dht
    copying build/lib/mudpi/extensions/dht/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/dht
    copying build/lib/mudpi/extensions/dht/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/dht
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/action
    copying build/lib/mudpi/extensions/action/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/action
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/toggle
    copying build/lib/mudpi/extensions/toggle/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/toggle
    copying build/lib/mudpi/extensions/toggle/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/toggle
    copying build/lib/mudpi/extensions/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/picamera
    copying build/lib/mudpi/extensions/picamera/camera.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/picamera
    copying build/lib/mudpi/extensions/picamera/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/picamera
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/sun
    copying build/lib/mudpi/extensions/sun/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/sun
    copying build/lib/mudpi/extensions/sun/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/sun
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/sequence
    copying build/lib/mudpi/extensions/sequence/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/sequence
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/control
    copying build/lib/mudpi/extensions/control/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/control
    copying build/lib/mudpi/extensions/control/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/control
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/example
    copying build/lib/mudpi/extensions/example/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/example
    copying build/lib/mudpi/extensions/example/toggle.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/example
    copying build/lib/mudpi/extensions/example/char_display.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/example
    copying build/lib/mudpi/extensions/example/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/example
    copying build/lib/mudpi/extensions/example/control.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/example
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/group
    copying build/lib/mudpi/extensions/group/trigger.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/group
    copying build/lib/mudpi/extensions/group/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/group
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/redis
    copying build/lib/mudpi/extensions/redis/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/redis
    copying build/lib/mudpi/extensions/redis/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/redis
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/bme680
    copying build/lib/mudpi/extensions/bme680/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/bme680
    copying build/lib/mudpi/extensions/bme680/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/bme680
    creating build/bdist.linux-armv7l/egg/mudpi/extensions/socket
    copying build/lib/mudpi/extensions/socket/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/extensions/socket
    copying build/lib/mudpi/constants.py -> build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/utils.py -> build/bdist.linux-armv7l/egg/mudpi
    creating build/bdist.linux-armv7l/egg/mudpi/sensors
    creating build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx
    copying build/lib/mudpi/sensors/mcp3xxx/soil_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx
    copying build/lib/mudpi/sensors/mcp3xxx/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx
    copying build/lib/mudpi/sensors/mcp3xxx/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx
    creating build/bdist.linux-armv7l/egg/mudpi/sensors/linux
    copying build/lib/mudpi/sensors/linux/float_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux
    copying build/lib/mudpi/sensors/linux/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux
    creating build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c
    copying build/lib/mudpi/sensors/linux/i2c/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c
    copying build/lib/mudpi/sensors/linux/i2c/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c
    copying build/lib/mudpi/sensors/linux/i2c/bme680_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c
    copying build/lib/mudpi/sensors/linux/i2c/t9602_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c
    copying build/lib/mudpi/sensors/linux/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux
    copying build/lib/mudpi/sensors/linux/humidity_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/linux
    copying build/lib/mudpi/sensors/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/sensors
    creating build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/float_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/soil_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/light_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/rain_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/temperature_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/arduino/humidity_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors/arduino
    copying build/lib/mudpi/sensors/base_sensor.py -> build/bdist.linux-armv7l/egg/mudpi/sensors
    copying build/lib/mudpi/__main__.py -> build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/__init__.py -> build/bdist.linux-armv7l/egg/mudpi
    creating build/bdist.linux-armv7l/egg/mudpi/events
    creating build/bdist.linux-armv7l/egg/mudpi/events/adaptors
    copying build/lib/mudpi/events/adaptors/redis.py -> build/bdist.linux-armv7l/egg/mudpi/events/adaptors
    copying build/lib/mudpi/events/adaptors/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/events/adaptors
    copying build/lib/mudpi/events/adaptors/mqtt.py -> build/bdist.linux-armv7l/egg/mudpi/events/adaptors
    copying build/lib/mudpi/events/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/events
    creating build/bdist.linux-armv7l/egg/mudpi/managers
    copying build/lib/mudpi/managers/extension_manager.py -> build/bdist.linux-armv7l/egg/mudpi/managers
    copying build/lib/mudpi/managers/core_manager.py -> build/bdist.linux-armv7l/egg/mudpi/managers
    copying build/lib/mudpi/managers/state_manager.py -> build/bdist.linux-armv7l/egg/mudpi/managers
    copying build/lib/mudpi/managers/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/managers
    creating build/bdist.linux-armv7l/egg/mudpi/controls
    creating build/bdist.linux-armv7l/egg/mudpi/controls/linux
    copying build/lib/mudpi/controls/linux/button_control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/linux
    copying build/lib/mudpi/controls/linux/switch_control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/linux
    copying build/lib/mudpi/controls/linux/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/controls/linux
    copying build/lib/mudpi/controls/linux/control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/linux
    copying build/lib/mudpi/controls/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/controls
    creating build/bdist.linux-armv7l/egg/mudpi/controls/arduino
    copying build/lib/mudpi/controls/arduino/button_control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/arduino
    copying build/lib/mudpi/controls/arduino/switch_control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/arduino
    copying build/lib/mudpi/controls/arduino/__init__.py -> build/bdist.linux-armv7l/egg/mudpi/controls/arduino
    copying build/lib/mudpi/controls/arduino/potentiometer_control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/arduino
    copying build/lib/mudpi/controls/arduino/control.py -> build/bdist.linux-armv7l/egg/mudpi/controls/arduino
    copying build/lib/mudpi/registry.py -> build/bdist.linux-armv7l/egg/mudpi
    copying build/lib/mudpi/mudpi_main.py -> build/bdist.linux-armv7l/egg/mudpi
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/core.py to core.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/exceptions.py to exceptions.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/importer.py to importer.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/config.py to config.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/logger/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/logger/Logger.py to Logger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/triggers/trigger.py to trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/triggers/time_trigger.py to time_trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/triggers/control_trigger.py to control_trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/triggers/sensor_trigger.py to sensor_trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/triggers/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/triggers/trigger_group.py to trigger_group.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/camera_worker.py to camera_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/control_worker.py to control_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/i2c_worker.py to i2c_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/sensor_worker.py to sensor_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/worker.py to worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/relay_worker.py to relay_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/linux/display_worker.py to display_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/trigger_worker.py to trigger_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/adc_worker.py to adc_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/sequence_worker.py to sequence_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/arduino/arduino_sensor_worker.py to arduino_sensor_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/arduino/arduino_worker.py to arduino_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/arduino/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/arduino/worker.py to worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/arduino/arduino_relay_worker.py to arduino_relay_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/arduino/arduino_control_worker.py to arduino_control_worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/workers/worker.py to worker.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/cron/trigger.py to trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/cron/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/sensor/trigger.py to trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/sensor/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/camera/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/state/trigger.py to trigger.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/state/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/mqtt/sensor.py to sensor.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/mqtt/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/t9602/sensor.py to sensor.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/t9602/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/gpio/sensor.py to sensor.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/gpio/toggle.py to toggle.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/gpio/__init__.py to __init__.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/gpio/control.py to control.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy/sensor.py to sensor.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy/toggle.py to toggle.cpython-38.pyc
    byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy/char_display.py to char_display.cpython-38.pyc
    File "build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy/char_display.py", line 58
    if not isinstance conf.get('columns', 16):
                      ^
    SyntaxError: invalid syntax

byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/nanpy/control.py to control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/rtsp/camera.py to camera.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/rtsp/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/i2c/char_display.py to char_display.cpython-38.pyc File "build/bdist.linux-armv7l/egg/mudpi/extensions/i2c/char_display.py", line 52 if not isinstance conf.get('columns', 16): ^ SyntaxError: invalid syntax

byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/i2c/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/trigger/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/char_display/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/dht/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/dht/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/action/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/toggle/trigger.py to trigger.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/toggle/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/picamera/camera.py to camera.cpython-38.pyc File "build/bdist.linux-armv7l/egg/mudpi/extensions/picamera/camera.py", line 90 def capture_recording(self, data={}: ^ SyntaxError: invalid syntax

byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/picamera/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/sun/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/sun/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/sequence/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/control/trigger.py to trigger.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/control/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/example/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/example/toggle.py to toggle.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/example/char_display.py to char_display.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/example/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/example/control.py to control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/group/trigger.py to trigger.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/group/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/redis/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/redis/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/bme680/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/bme680/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/extensions/socket/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/constants.py to constants.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/utils.py to utils.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx/soil_sensor.py to soil_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/mcp3xxx/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/float_sensor.py to float_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c/bme680_sensor.py to bme680_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/i2c/t9602_sensor.py to t9602_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/linux/humidity_sensor.py to humidity_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/float_sensor.py to float_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/soil_sensor.py to soil_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/sensor.py to sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/light_sensor.py to light_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/rain_sensor.py to rain_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/temperature_sensor.py to temperature_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/arduino/humidity_sensor.py to humidity_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/sensors/base_sensor.py to base_sensor.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/main.py to main.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/events/adaptors/redis.py to redis.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/events/adaptors/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/events/adaptors/mqtt.py to mqtt.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/events/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/managers/extension_manager.py to extension_manager.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/managers/core_manager.py to core_manager.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/managers/state_manager.py to state_manager.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/managers/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/linux/button_control.py to button_control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/linux/switch_control.py to switch_control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/linux/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/linux/control.py to control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/arduino/button_control.py to button_control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/arduino/switch_control.py to switch_control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/arduino/init.py to init.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/arduino/potentiometer_control.py to potentiometer_control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/controls/arduino/control.py to control.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/registry.py to registry.cpython-38.pyc byte-compiling build/bdist.linux-armv7l/egg/mudpi/mudpi_main.py to mudpi_main.cpython-38.pyc creating build/bdist.linux-armv7l/egg/EGG-INFO copying mudpi.egg-info/PKG-INFO -> build/bdist.linux-armv7l/egg/EGG-INFO copying mudpi.egg-info/SOURCES.txt -> build/bdist.linux-armv7l/egg/EGG-INFO copying mudpi.egg-info/dependency_links.txt -> build/bdist.linux-armv7l/egg/EGG-INFO copying mudpi.egg-info/entry_points.txt -> build/bdist.linux-armv7l/egg/EGG-INFO copying mudpi.egg-info/requires.txt -> build/bdist.linux-armv7l/egg/EGG-INFO copying mudpi.egg-info/top_level.txt -> build/bdist.linux-armv7l/egg/EGG-INFO zip_safe flag not set; analyzing archive contents... mudpi.pycache.importer.cpython-38: module references path creating dist creating 'dist/mudpi-0.10.0-py3.8.egg' and adding 'build/bdist.linux-armv7l/egg' to it removing 'build/bdist.linux-armv7l/egg' (and everything under it) Processing mudpi-0.10.0-py3.8.egg creating /home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg Extracting mudpi-0.10.0-py3.8.egg to /home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/extensions/i2c/char_display.py", line 52 if not isinstance conf.get('columns', 16): ^ SyntaxError: invalid syntax

File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/extensions/nanpy/char_display.py", line 58 if not isinstance conf.get('columns', 16): ^ SyntaxError: invalid syntax

File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/extensions/picamera/camera.py", line 90 def capture_recording(self, data={}: ^ SyntaxError: invalid syntax

Adding mudpi 0.10.0 to easy-install.pth file Installing mudpi script to /home/yeyeto2788/workspace/mudpi-core/venv/bin

Installed /home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg Processing dependencies for mudpi==0.10.0 Searching for pycron==3.0.0 Best match: pycron 3.0.0 Adding pycron 3.0.0 to easy-install.pth file

Using /home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages Searching for PyYAML==5.3.1 Best match: PyYAML 5.3.1 Adding PyYAML 5.3.1 to easy-install.pth file

Using /usr/local/lib/python3.8/dist-packages Searching for redis==3.5.3 Best match: redis 3.5.3 Adding redis 3.5.3 to easy-install.pth file

Using /home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages Finished processing dependencies for mudpi==0.10.0


I then try executing the `mudpi` and it gave me te following error due to missing dependency:
```console
(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ mudpi
Traceback (most recent call last):
  File "/home/yeyeto2788/workspace/mudpi-core/venv/bin/mudpi", line 33, in <module>
    sys.exit(load_entry_point('mudpi==0.10.0', 'console_scripts', 'mudpi')())
  File "/home/yeyeto2788/workspace/mudpi-core/venv/bin/mudpi", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/__main__.py", line 16, in <module>
    from mudpi.managers.core_manager import CoreManager
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/core_manager.py", line 13, in <module>
    from mudpi import importer, utils, core
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/core.py", line 8, in <module>
    from mudpi.events import EventSystem
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/events/__init__.py", line 9, in <module>
    from mudpi.events import adaptors
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/events/adaptors/__init__.py", line 53, in <module>
    from . import redis, mqtt
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/events/adaptors/mqtt.py", line 4, in <module>
    import paho.mqtt.client as mqtt
ModuleNotFoundError: No module named 'paho'

I knew this was comming by the mqtt library being missing so I install all dependencies as per the requirements.txt file and run the mudpi again.

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ mudpi
Loading MudPi Configs
███╗   ███╗██╗   ██╗██████╗ ██████╗ ██╗
████╗ ████║██║   ██║██╔══██╗██╔══██╗██║
██╔████╔██║██║   ██║██║  ██║██████╔╝██║
██║╚██╔╝██║██║   ██║██║  ██║██╔═══╝ ██║
██║ ╚═╝ ██║╚██████╔╝██████╔╝██║     ██║
╚═╝     ╚═╝ ╚═════╝ ╚═════╝ ╚═╝     ╚═╝
____________________________________________________________

Eric Davisson @MudPiApp
https://mudpi.app
Version:  0.10.0

Traceback (most recent call last):
  File "/home/yeyeto2788/workspace/mudpi-core/venv/bin/mudpi", line 33, in <module>
    sys.exit(load_entry_point('mudpi==0.10.0', 'console_scripts', 'mudpi')())
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/__main__.py", line 50, in main
    manager.load_mudpi_from_config(config_path)
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/core_manager.py", line 26, in load_mudpi_from_config
    self.validate_config(config_path)
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/core_manager.py", line 186, in validate_config
    raise ConfigNotFoundError(f"Config File Doesn't Exist at {config_path}")
NameError: name 'ConfigNotFoundError' is not defined

Then I realized I didn't had the redis working so I spin up a container with it. It was on port 6666, so check the output

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ sudo docker start redis
(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ sudo docker ps -a
CONTAINER ID   IMAGE     COMMAND                  CREATED        STATUS          PORTS                    NAMES
0d94133b41f0   redis     "docker-entrypoint.s…"   4 months ago   Up 20 seconds   0.0.0.0:6666->6379/tcp   redis

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ mudpi -c mudpi.config
Loading MudPi Configs

███╗   ███╗██╗   ██╗██████╗ ██████╗ ██╗
████╗ ████║██║   ██║██╔══██╗██╔══██╗██║
██╔████╔██║██║   ██║██║  ██║██████╔╝██║
██║╚██╔╝██║██║   ██║██║  ██║██╔═══╝ ██║
██║ ╚═╝ ██║╚██████╔╝██████╔╝██║     ██║
╚═╝     ╚═╝ ╚═════╝ ╚═════╝ ╚═╝     ╚═╝
____________________________________________________________

Eric Davisson @MudPiApp
https://mudpi.app
Version:  0.10.0

Loading MudPi Configs ............................... Complete
Initializing Logger  ............................... Disabled
Traceback (most recent call last):
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/connection.py", line 559, in connect
    sock = self._connect()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/connection.py", line 615, in _connect
    raise err
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/connection.py", line 603, in _connect
    sock.connect(socket_address)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/yeyeto2788/workspace/mudpi-core/venv/bin/mudpi", line 33, in <module>
    sys.exit(load_entry_point('mudpi==0.10.0', 'console_scripts', 'mudpi')())
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/__main__.py", line 74, in main
    manager.load_mudpi_core()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/core_manager.py", line 35, in load_mudpi_core
    self.mudpi.load_core()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/core.py", line 123, in load_core
    self.states = StateManager(self, self.config.get('mudpi', {}).get('events', {}).get('redis'))
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/state_manager.py", line 33, in __init__
    self.restore_states()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/state_manager.py", line 103, in restore_states
    keys = self.redis.get('state_keys')
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/client.py", line 1606, in get
    return self.execute_command('GET', name)
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/client.py", line 898, in execute_command
    conn = self.connection or pool.get_connection(command_name, **options)
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/connection.py", line 1192, in get_connection
    connection.connect()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/redis/connection.py", line 563, in connect
    raise ConnectionError(self._error_message(e))
redis.exceptions.ConnectionError: Error 111 connecting to 127.0.0.1:6379. Connection refused.

I tried to connect the default port of redis when the config file had the 6666 specified. So I deleted the container and spin up another one with the default port.

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ sudo docker run --name redis -p 6379:6379 -d redis
(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ sudo docker ps -a
CONTAINER ID   IMAGE     COMMAND                  CREATED        STATUS          PORTS                    NAMES
0d94133b41f0   redis     "docker-entrypoint.s…"   4 months ago   Up 20 seconds   0.0.0.0:6379->6379/tcp   redis

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ mudpi -c mudpi.config
Loading MudPi Configs

███╗   ███╗██╗   ██╗██████╗ ██████╗ ██╗
████╗ ████║██║   ██║██╔══██╗██╔══██╗██║
██╔████╔██║██║   ██║██║  ██║██████╔╝██║
██║╚██╔╝██║██║   ██║██║  ██║██╔═══╝ ██║
██║ ╚═╝ ██║╚██████╔╝██████╔╝██║     ██║
╚═╝     ╚═╝ ╚═════╝ ╚═════╝ ╚═╝     ╚═╝
____________________________________________________________

Eric Davisson @MudPiApp
https://mudpi.app
Version:  0.10.0

Loading MudPi Configs ............................... Complete
Initializing Logger  ............................... Disabled
Traceback (most recent call last):
  File "/home/yeyeto2788/workspace/mudpi-core/venv/bin/mudpi", line 33, in <module>
    sys.exit(load_entry_point('mudpi==0.10.0', 'console_scripts', 'mudpi')())
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/__main__.py", line 74, in main
    manager.load_mudpi_core()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/core_manager.py", line 35, in load_mudpi_core
    self.mudpi.load_core()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/core.py", line 123, in load_core
    self.states = StateManager(self, self.config.get('mudpi', {}).get('events', {}).get('redis'))
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/state_manager.py", line 35, in __init__
    Logger.log_formatted(LOG_LEVEL["info"],
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/logger/Logger.py", line 142, in log_formatted
    return Logger.logger.log(log_level, msg)
AttributeError: 'NoneType' object has no attribute 'log'

So it seems like there are other things failing on that branch.

I did take a quick look at this https://github.com/mudpi/mudpi-core/blob/feature/mudpi/logger/Logger.py#L141-L143 and I don't really see the need of doing that check.

Hope this helps.

P.D1: Let me know if you need me to test again. P.D2: If by any chance you finish your work let me know and I can do a quick clean up on the code since there are several lines on the code not being used.

olixr commented 3 years ago

Thank you for running some tests. I clearly have some syntax cleanup and minor bugs still to resolve. Let me finish docs and get some changes pushed then I would love to have you run another run of tests. I also need to do some tests on my pis that will help discover the last bugs.

I think by then you will have the docs updated to back your updates.

I will ping back once I make some updates!

olixr commented 3 years ago

@yeyeto2788 I did some changes to fix the bugs. If you can test again.

The other thing is I wanted to know what your log config looked like? In my configs I have tested the logger omitted and included. I am wondering if there is a config error I missed.

Also the default config path may be different than the previous. I suggest using the --config option and passing your config path in. i.e. mudpi -c /path/to/mudpi.config

Also side note when you use the config flag you can use any file name. Both json and yaml are supported.

One final thing. I still need to complete to package upload and final tests to pypi. I may have some folder paths that need review based on the installation. Most of my tests so far I had MudPi installed in develop mode python setup.py develop. I will complete the packaging and verify that is also not causing issues.

yeyeto2788 commented 3 years ago

Hey @olixr,

I have tested again and the error still persist:

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ mudpi -c mudpi.config
Loading MudPi Configs

███╗   ███╗██╗   ██╗██████╗ ██████╗ ██╗
████╗ ████║██║   ██║██╔══██╗██╔══██╗██║
██╔████╔██║██║   ██║██║  ██║██████╔╝██║
██║╚██╔╝██║██║   ██║██║  ██║██╔═══╝ ██║
██║ ╚═╝ ██║╚██████╔╝██████╔╝██║     ██║
╚═╝     ╚═╝ ╚═════╝ ╚═════╝ ╚═╝     ╚═╝
____________________________________________________________

Eric Davisson @MudPiApp
https://mudpi.app
Version:  0.10.0

Loading MudPi Configs ............................... Complete
Initializing Logger  ............................... Disabled
Traceback (most recent call last):
  File "/home/yeyeto2788/workspace/mudpi-core/venv/bin/mudpi", line 33, in <module>
    sys.exit(load_entry_point('mudpi==0.10.0', 'console_scripts', 'mudpi')())
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/__main__.py", line 74, in main
    manager.load_mudpi_core()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/core_manager.py", line 35, in load_mudpi_core
    self.mudpi.load_core()
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/core.py", line 123, in load_core
    self.states = StateManager(self, self.config.get('mudpi', {}).get('events', {}).get('redis'))
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/managers/state_manager.py", line 35, in __init__
    Logger.log_formatted(LOG_LEVEL["info"],
  File "/home/yeyeto2788/workspace/mudpi-core/venv/lib/python3.8/site-packages/mudpi-0.10.0-py3.8.egg/mudpi/logger/Logger.py", line 142, in log_formatted
    return Logger.logger.log(log_level, msg)
AttributeError: 'NoneType' object has no attribute 'log'

My configuration looks like this:

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ cat mudpi.config
{
  "name": "MudPi",
  "version": 0.8,
  "debug": false,
  "redis": {
    "host": "127.0.0.1",
    "port": 6379
  },
  "relays": [
    {
      "pin": "PA10",
      "normally_open": true,
      "group": "",
      "name": "Relay Name",
      "key": "freaking key needed",
      "topic": "garden/pi/relays/",
      "tag": "relay_1"
    }
  ],
  "actions": [
    {
      "type": "event",
      "name": "Toggle Pump ON",
      "key": "toggle_pump_on",
      "action": { "event": "Toggle" },
      "topic": "garden/pi/relays/1"
    },
    {
      "type": "event",
      "name": "Toggle Pump OFF",
      "key": "toggle_pump_off",
      "action": { "event": "Toggle" },
      "topic": "garden/pi/relays/0"
    }
  ],
  "sequences": [
    {
      "name": "Example Watering Sequence",
      "key": "example_sequence",
      "sequence": [
        {
          "actions": ["toggle_pump_on"],
          "duration": 2
        },
        {
          "actions": ["toggle_pump_off"],
          "duration": 2
        }
      ]
    }
  ],
  "triggers": [
    {
      "type": "time",
      "key": "timed_trigger",
      "name": "timed triggered sequence",
      "sequences": ["example_sequence"],
      "schedule": "* * * * *"
    }
  ],
  "workers": [
    {
      "type": "control",
      "controls": [
        {
          "type": "Button",
          "pin": "PG7",
          "key": "button_1"
        }
      ]
    }
  ],
  "nodes": []
}

It is a simple configuration for testing but seems like having the log by default leads me to the issue. The log file created does not contain any information.

yeyeto2788 commented 3 years ago

Another update.

I finally got it to run (not the same as working), so I modified the logger quickly to get it running and got this:

(venv) yeyeto2788@orangepilite:~/workspace/mudpi-core$ mudpi -c m.config
Loading MudPi Configs

███╗   ███╗██╗   ██╗██████╗ ██████╗ ██╗
████╗ ████║██║   ██║██╔══██╗██╔══██╗██║
██╔████╔██║██║   ██║██║  ██║██████╔╝██║
██║╚██╔╝██║██║   ██║██║  ██║██╔═══╝ ██║
██║ ╚═╝ ██║╚██████╔╝██████╔╝██║     ██║
╚═╝     ╚═╝ ╚═════╝ ╚═════╝ ╚═╝     ╚═╝
____________________________________________________________

Eric Davisson @MudPiApp
https://mudpi.app
Version:  0.10.0

Loading MudPi Configs ............................... Complete
Initializing Logger  ............................... Disabled
Initializing Core  .................................. Complete
Detecting Configurations ............................ Pending
Detected 9 Non-Core Configurations .................. Complete
Preparing 9 Configurations to be Loaded  ............ Pending
Errors Preparing 8 Configurations  .................. Errors
1 Configurations Ready to Load  ..................... Complete
Loading 1 Configurations into Extensions  ........... Pending
Redis Validator encountered unknown error.
name 'ConfigError' is not defined
Extension redis has invalid or empty configs.
Loaded 0 Extensions  ................................ Complete
MudPi Fully Loaded .................................. Complete
____________________________________________________________

A lot of output but it seems like it is not properly setup or something. I have opened up the PR #26 so you can see the changes I needed to make in order to make it "work" (Didn't see any readings from the sensors.

yeyeto2788 commented 3 years ago

Closing this PR as it is against old version.