Skip to content

Uarts on RPi4 stopped working (Bullseye & ola 0.10.8) #1749

Closed

Description

@MagnusHerrlin

Hi

After a fresh install of RpiOs Bullseye and sudo apt install ola (v0.10.8)
the uarts on the pi4 stopped working.
When i stop the olad daemon and intead
run olad -l 2 -c /etc/ola i get this output:

plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA0
plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA1
plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA2
plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA3
plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA4

On my old installation (Buster & ola v0.10.7) everything is working
now the question is what make it break?
Is it the upgrade to Bulleye or the upgrade of ola from 0.10.7 to 0.10.8?

I'm a bit confused about the init_uart_clock=16000000
does this set the clock for ttyAMA0 or for all uarts?
or is it the plugin that sets the baudrate?
(it seems like it from the errors above).

So the upgrade worked as a downgrade
The Pi4 now have instead of having 4 more uarts than a pi3 have one less (0).

Any ideas why this happened?

Thanks
/Magnus

Activity

  1. peternewman commented on Nov 11, 2021

    @peternewman
    Member

    When i stop the olad daemon and intead run olad -l 2 -c /etc/ola i get this output:

    That's helpful, but please can we see a -l 4 run too (ideally the whole log).

    On my old installation (Buster & ola v0.10.7) everything is working now the question is what make it break? Is it the upgrade to Bulleye or the upgrade of ola from 0.10.7 to 0.10.8?

    Very little changed regarding this in 0.10.7 to 0.10.8 so it's likely Bullseye.

    I'm a bit confused about the init_uart_clock=16000000 does this set the clock for ttyAMA0 or for all uarts? or is it the plugin that sets the baudrate? (it seems like it from the errors above).

    It's a bit of both, see https://forums.raspberrypi.com/viewtopic.php?p=529321&sid=08a0255f3835e514ae071511741984ae#p529321

    Seemingly only UART0 (but presumably the others worked before)?:
    https://www.raspberrypi.com/documentation/computers/config_txt.html#init_uart_clock

    Any ideas why this happened?

    Not really, but hopefully we can get to the bottom of it...

  2. MagnusHerrlin commented on Nov 11, 2021

    @MagnusHerrlin
    Author

    Hi Peter

    Here's the output from running olad -l 4 -c /etc/ola :

    Click to expand!
    olad/Olad.cpp:98: OLA Daemon version 0.10.8
    common/base/Init.cpp:404: Monotonic clock:          75.286629
    common/base/Init.cpp:405: Real clock     :  1636670062.422654
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 4, events 2001, descriptor: 0xf4e130
    olad/OlaDaemon.cpp:121: Using configs in /etc/ola
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 7, events 2001, descriptor: 0xf53dc8
    common/thread/Thread.cpp:200: Thread pref-saver, policy SCHED_OTHER, priority 0
    common/rdm/PidStoreLoader.cpp:262: Loading DISC_UNIQUE_BRANCH
    common/rdm/PidStoreLoader.cpp:262: Loading DISC_MUTE
    common/rdm/PidStoreLoader.cpp:262: Loading DISC_UN_MUTE
    common/rdm/PidStoreLoader.cpp:262: Loading PROXIED_DEVICES
    common/rdm/PidStoreLoader.cpp:262: Loading PROXIED_DEVICE_COUNT
    common/rdm/PidStoreLoader.cpp:262: Loading COMMS_STATUS
    common/rdm/PidStoreLoader.cpp:262: Loading QUEUED_MESSAGE
    common/rdm/PidStoreLoader.cpp:262: Loading STATUS_MESSAGES
    common/rdm/PidStoreLoader.cpp:262: Loading STATUS_ID_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading CLEAR_STATUS_ID
    common/rdm/PidStoreLoader.cpp:262: Loading SUB_DEVICE_STATUS_REPORT_THRESHOLD
    common/rdm/PidStoreLoader.cpp:262: Loading SUPPORTED_PARAMETERS
    common/rdm/PidStoreLoader.cpp:262: Loading PARAMETER_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading DEVICE_INFO
    common/rdm/PidStoreLoader.cpp:262: Loading PRODUCT_DETAIL_ID_LIST
    common/rdm/PidStoreLoader.cpp:262: Loading DEVICE_MODEL_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading MANUFACTURER_LABEL
    common/rdm/PidStoreLoader.cpp:262: Loading DEVICE_LABEL
    common/rdm/PidStoreLoader.cpp:262: Loading FACTORY_DEFAULTS
    common/rdm/PidStoreLoader.cpp:262: Loading LANGUAGE_CAPABILITIES
    common/rdm/PidStoreLoader.cpp:262: Loading LANGUAGE
    common/rdm/PidStoreLoader.cpp:262: Loading SOFTWARE_VERSION_LABEL
    common/rdm/PidStoreLoader.cpp:262: Loading BOOT_SOFTWARE_VERSION_ID
    common/rdm/PidStoreLoader.cpp:262: Loading BOOT_SOFTWARE_VERSION_LABEL
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_PERSONALITY
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_PERSONALITY_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_START_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading SLOT_INFO
    common/rdm/PidStoreLoader.cpp:262: Loading SLOT_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading DEFAULT_SLOT_VALUE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_BLOCK_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_FAIL_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_STARTUP_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading SENSOR_DEFINITION
    common/rdm/PidStoreLoader.cpp:262: Loading SENSOR_VALUE
    common/rdm/PidStoreLoader.cpp:262: Loading RECORD_SENSORS
    common/rdm/PidStoreLoader.cpp:262: Loading DIMMER_INFO
    common/rdm/PidStoreLoader.cpp:262: Loading MINIMUM_LEVEL
    common/rdm/PidStoreLoader.cpp:262: Loading MAXIMUM_LEVEL
    common/rdm/PidStoreLoader.cpp:262: Loading CURVE
    common/rdm/PidStoreLoader.cpp:262: Loading CURVE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading OUTPUT_RESPONSE_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading OUTPUT_RESPONSE_TIME_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading MODULATION_FREQUENCY
    common/rdm/PidStoreLoader.cpp:262: Loading MODULATION_FREQUENCY_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading DEVICE_HOURS
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_HOURS
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_STRIKES
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_STATE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_ON_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading DEVICE_POWER_CYCLES
    common/rdm/PidStoreLoader.cpp:262: Loading BURN_IN
    common/rdm/PidStoreLoader.cpp:262: Loading DISPLAY_INVERT
    common/rdm/PidStoreLoader.cpp:262: Loading DISPLAY_LEVEL
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_INVERT
    common/rdm/PidStoreLoader.cpp:262: Loading TILT_INVERT
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_TILT_SWAP
    common/rdm/PidStoreLoader.cpp:262: Loading REAL_TIME_CLOCK
    common/rdm/PidStoreLoader.cpp:262: Loading LOCK_PIN
    common/rdm/PidStoreLoader.cpp:262: Loading LOCK_STATE
    common/rdm/PidStoreLoader.cpp:262: Loading LOCK_STATE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading LIST_INTERFACES
    common/rdm/PidStoreLoader.cpp:262: Loading INTERFACE_LABEL
    common/rdm/PidStoreLoader.cpp:262: Loading INTERFACE_HARDWARE_ADDRESS_TYPE1
    common/rdm/PidStoreLoader.cpp:262: Loading IPV4_DHCP_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading IPV4_ZEROCONF_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading IPV4_CURRENT_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading IPV4_STATIC_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading INTERFACE_RENEW_DHCP
    common/rdm/PidStoreLoader.cpp:262: Loading INTERFACE_RELEASE_DHCP
    common/rdm/PidStoreLoader.cpp:262: Loading INTERFACE_APPLY_CONFIGURATION
    common/rdm/PidStoreLoader.cpp:262: Loading IPV4_DEFAULT_ROUTE
    common/rdm/PidStoreLoader.cpp:262: Loading DNS_IPV4_NAME_SERVER
    common/rdm/PidStoreLoader.cpp:262: Loading DNS_HOSTNAME
    common/rdm/PidStoreLoader.cpp:262: Loading DNS_DOMAIN_NAME
    common/rdm/PidStoreLoader.cpp:262: Loading SEARCH_DOMAIN
    common/rdm/PidStoreLoader.cpp:262: Loading BROKER_STATUS
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_LIST
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_LIST_CHANGE
    common/rdm/PidStoreLoader.cpp:262: Loading IDENTIFY_ENDPOINT
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_TO_UNIVERSE
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_LABEL
    common/rdm/PidStoreLoader.cpp:262: Loading RDM_TRAFFIC_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading DISCOVERY_STATE
    common/rdm/PidStoreLoader.cpp:262: Loading BACKGROUND_DISCOVERY
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_TIMING
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_TIMING_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_RESPONDERS
    common/rdm/PidStoreLoader.cpp:262: Loading ENDPOINT_RESPONDER_LIST_CHANGE
    common/rdm/PidStoreLoader.cpp:262: Loading BINDING_CONTROL_FIELDS
    common/rdm/PidStoreLoader.cpp:262: Loading BACKGROUND_QUEUED_STATUS_POLICY
    common/rdm/PidStoreLoader.cpp:262: Loading BACKGROUND_QUEUED_STATUS_POLICY_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading IDENTIFY_DEVICE
    common/rdm/PidStoreLoader.cpp:262: Loading RESET_DEVICE
    common/rdm/PidStoreLoader.cpp:262: Loading POWER_STATE
    common/rdm/PidStoreLoader.cpp:262: Loading PERFORM_SELFTEST
    common/rdm/PidStoreLoader.cpp:262: Loading SELF_TEST_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading CAPTURE_PRESET
    common/rdm/PidStoreLoader.cpp:262: Loading PRESET_PLAYBACK
    common/rdm/PidStoreLoader.cpp:262: Loading IDENTIFY_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading PRESET_INFO
    common/rdm/PidStoreLoader.cpp:262: Loading PRESET_STATUS
    common/rdm/PidStoreLoader.cpp:262: Loading PRESET_MERGEMODE
    common/rdm/PidStoreLoader.cpp:262: Loading POWER_ON_SELF_TEST
    common/rdm/PidStoreLoader.cpp:262: Loading DEVICE_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading SERIAL_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading FAN_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading STATUS_LEDS
    common/rdm/PidStoreLoader.cpp:262: Loading CCT_ADJUST
    common/rdm/PidStoreLoader.cpp:262: Loading GN_ADJUST
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_SIGNAL_LOSS_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading MODEL_ID
    common/rdm/PidStoreLoader.cpp:262: Loading MODEL_ID_LIST
    common/rdm/PidStoreLoader.cpp:262: Loading PIXEL_TYPE
    common/rdm/PidStoreLoader.cpp:262: Loading PIXEL_COUNT
    common/rdm/PidStoreLoader.cpp:262: Loading LED_DRIVE_CURRENT
    common/rdm/PidStoreLoader.cpp:262: Loading SERIAL_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading DIMMER_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading LIGHT_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading CONSTANT_COLOR_MODES
    common/rdm/PidStoreLoader.cpp:262: Loading CP_DISPLAYON
    common/rdm/PidStoreLoader.cpp:262: Loading CP_FIXTID
    common/rdm/PidStoreLoader.cpp:262: Loading CP_EVAN_RGBCMY
    common/rdm/PidStoreLoader.cpp:262: Loading CP_FIXWHEELSC
    common/rdm/PidStoreLoader.cpp:262: Loading CP_LAMPONDMX
    common/rdm/PidStoreLoader.cpp:262: Loading CP_ENCPT
    common/rdm/PidStoreLoader.cpp:262: Loading CP_PTSPEEDMODE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_DIMMERCURVE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_SILENTMODE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_SHUTTERONERR
    common/rdm/PidStoreLoader.cpp:262: Loading CP_DIMMONSHUTTER
    common/rdm/PidStoreLoader.cpp:262: Loading CP_POWERFANSMODE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_ARTNET_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_NETREPEATDMX
    common/rdm/PidStoreLoader.cpp:262: Loading CP_UNIVERSE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_AFAUTOSCALEOFF
    common/rdm/PidStoreLoader.cpp:262: Loading CP_MCOLORADJUST
    common/rdm/PidStoreLoader.cpp:262: Loading CP_MEFFRANDID
    common/rdm/PidStoreLoader.cpp:262: Loading CP_MEFFDISTRIB
    common/rdm/PidStoreLoader.cpp:262: Loading CP_EVANCURVEMODE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_PT_HOMING_SPEC
    common/rdm/PidStoreLoader.cpp:262: Loading CP_PAN_HOME_ANGLE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_TILT_HOME_ANGLE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_CWHEEL_LINEAR
    common/rdm/PidStoreLoader.cpp:262: Loading CP_ANTI_BLIND
    common/rdm/PidStoreLoader.cpp:262: Loading CP_PIXELS_UNIVERSE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_RPTONDMX_UNIVERSE
    common/rdm/PidStoreLoader.cpp:262: Loading CP_CHNLMODE_PIXELS
    common/rdm/PidStoreLoader.cpp:262: Loading SHOW_ID
    common/rdm/PidStoreLoader.cpp:262: Loading OUTPUT_POWER
    common/rdm/PidStoreLoader.cpp:262: Loading HOP_PATTERN
    common/rdm/PidStoreLoader.cpp:262: Loading BANDWIDTH
    common/rdm/PidStoreLoader.cpp:262: Loading NUM_OF_CHANNELS
    common/rdm/PidStoreLoader.cpp:262: Loading LEVEL_TEST
    common/rdm/PidStoreLoader.cpp:262: Loading CURVE
    common/rdm/PidStoreLoader.cpp:262: Loading BUMP_ENABLED
    common/rdm/PidStoreLoader.cpp:262: Loading DATA_LOSS_TIMEOUT
    common/rdm/PidStoreLoader.cpp:262: Loading BACKLIGHT_TIMEOUT
    common/rdm/PidStoreLoader.cpp:262: Loading RDM_PROXY_ENABLED
    common/rdm/PidStoreLoader.cpp:262: Loading INPUT_FORMAT
    common/rdm/PidStoreLoader.cpp:262: Loading IP_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading IP_SUBNET_MASK
    common/rdm/PidStoreLoader.cpp:262: Loading IP_GATEWAY
    common/rdm/PidStoreLoader.cpp:262: Loading DHCP_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading MAC_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading SET_UID
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_OUTPUT_STANDARD
    common/rdm/PidStoreLoader.cpp:262: Loading ADD_DISCOVERY
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_INTERSLOT_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading LATENCY
    common/rdm/PidStoreLoader.cpp:262: Loading FACTORY_SETTINGS_LOCK
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_RDM_INTERLEAVE
    common/rdm/PidStoreLoader.cpp:262: Loading PROXIED_DEVICES_ENHANCED
    common/rdm/PidStoreLoader.cpp:262: Loading ADAPTIVE_ON_OFF
    common/rdm/PidStoreLoader.cpp:262: Loading PWM_OUTPUT_FREQUENCY
    common/rdm/PidStoreLoader.cpp:262: Loading FAN_ON_PERCENTAGE
    common/rdm/PidStoreLoader.cpp:262: Loading AUTO_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading PWRUP_TEST
    common/rdm/PidStoreLoader.cpp:262: Loading INTERNAL_STATS
    common/rdm/PidStoreLoader.cpp:262: Loading NE_FAULT_DETECT_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_PROTECT_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_LOSS_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading PREHEAT_LEVEL
    common/rdm/PidStoreLoader.cpp:262: Loading OUTPUT_CAP_VALUE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_TERM_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading FULL_DISCOVERY
    common/rdm/PidStoreLoader.cpp:262: Loading OUTPUT_DEFAULT_VALUE
    common/rdm/PidStoreLoader.cpp:262: Loading DALI_FADE_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading INCREMENTAL_DISCOVERY_INTERVAL
    common/rdm/PidStoreLoader.cpp:262: Loading ACK_TIMER_FACTOR
    common/rdm/PidStoreLoader.cpp:262: Loading MDG_NETWORK_UNIVERSE_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading MDG_NETWORK_UNIVERSE_NAME
    common/rdm/PidStoreLoader.cpp:262: Loading MDG_GENERATOR_STATE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_LAMP_OFF_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_RESET_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading MCX_LAMP_OFF_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading FIXTURE_ID
    common/rdm/PidStoreLoader.cpp:262: Loading STAND_ALONE_OPERATION_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading SYNCHRONIZED
    common/rdm/PidStoreLoader.cpp:262: Loading AUTO_PROGRAM_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading ENABLE_TIMERS
    common/rdm/PidStoreLoader.cpp:262: Loading TIMER1_START_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading TIMER1_END_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading TIMER2_START_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading TIMER2_END_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading LIGHT_SENSOR_LEVEL_TRIGGER_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading CAPTURE_CURRENT_LIGHT_LEVEL
    common/rdm/PidStoreLoader.cpp:262: Loading LIGHT_SENSOR_TRIGGER_LEVEL
    common/rdm/PidStoreLoader.cpp:262: Loading ADD_SCENE
    common/rdm/PidStoreLoader.cpp:262: Loading INSERT_SCENE
    common/rdm/PidStoreLoader.cpp:262: Loading STORE_SCENE
    common/rdm/PidStoreLoader.cpp:262: Loading DELETE_SCENE
    common/rdm/PidStoreLoader.cpp:262: Loading DELETE_ALL_SCENES
    common/rdm/PidStoreLoader.cpp:262: Loading NEXT_SCENE
    common/rdm/PidStoreLoader.cpp:262: Loading PREVIOUS_SCENE
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_SETTINGS
    common/rdm/PidStoreLoader.cpp:262: Loading RUN_PROGRAM
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_WAIT_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_FADE_TIME
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_INTENSITY
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_CYAN
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_MAGENTA
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_YELLOW
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_RED
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_GREEN
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_BLUE
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_AMBER
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_WHITE
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_ZOOM
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_FOCUS
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_RANDOM_COLOR
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_COLOR_WHEEL
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_GOBO_SELECTION
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_GOBO_INDEXING
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_ANIMATION_POSITION
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_ANIMATION_INDEXING
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_GET_DMX
    common/rdm/PidStoreLoader.cpp:262: Loading SCENE_FROST_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading AUTO_SHUTTER_BO_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading EFFECT_SPEED
    common/rdm/PidStoreLoader.cpp:262: Loading EFFECT_SHORTCUTS_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading EFFECT_FEEDBACK_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_HOUR_WARNING_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_HOUR_WARNING_HOURS
    common/rdm/PidStoreLoader.cpp:262: Loading AIR_FILTER_HOUR
    common/rdm/PidStoreLoader.cpp:262: Loading AIR_FILTER_HOUR_WARNING_HOURS
    common/rdm/PidStoreLoader.cpp:262: Loading DISPLAY_ERRORS_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_ERROR_TEST_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading SAVE_CUSTOM_CONFIGURATION
    common/rdm/PidStoreLoader.cpp:262: Loading LOAD_CUSTOM_CONFIGURATION
    common/rdm/PidStoreLoader.cpp:262: Loading BARNDOOR_SOFTWARE_VERSION
    common/rdm/PidStoreLoader.cpp:262: Loading CMY_BLACKOUT_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading TRACKING_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading TRACKING_CAL
    common/rdm/PidStoreLoader.cpp:262: Loading DIMMER_CURVE
    common/rdm/PidStoreLoader.cpp:262: Loading FOCUS_TRACKING
    common/rdm/PidStoreLoader.cpp:262: Loading DISPLAY_AUTO_OFF
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_PREHEAT_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_PREHEAT_VALUE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_POWER_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_POWER_VALUE
    common/rdm/PidStoreLoader.cpp:262: Loading IRIS_BLACKOUT_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading COLOR_WHEEL_BLACKOUT_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading STUDIO_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading BLOCK_TEMP_SETTING
    common/rdm/PidStoreLoader.cpp:262: Loading GOBO3_ANIMATION_START
    common/rdm/PidStoreLoader.cpp:262: Loading GOBO3_ANIMATION_END
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_TILT_SPEED
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_TILT_MOVE_ON_RESET_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_TILT_LIMITATION_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_LIMITATION_MINIMUM
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_LIMITATION_MAXIMUM
    common/rdm/PidStoreLoader.cpp:262: Loading TILT_LIMITATION_MINIMUM
    common/rdm/PidStoreLoader.cpp:262: Loading TILT_LIMITATION_MAXIMUM
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_TILT_LIMITATION_AREA
    common/rdm/PidStoreLoader.cpp:262: Loading FOLLOW_SPOT_MODE_ENABLE
    common/rdm/PidStoreLoader.cpp:262: Loading FOLLOW_SPOT_MODE_LOCK_TOGGLE
    common/rdm/PidStoreLoader.cpp:262: Loading FOLLOW_SPOT_MODE_LOCK_PAN
    common/rdm/PidStoreLoader.cpp:262: Loading FOLLOW_SPOT_MODE_LOCK_TILT
    common/rdm/PidStoreLoader.cpp:262: Loading REGULATE_LAMP_FAN
    common/rdm/PidStoreLoader.cpp:262: Loading REGULATE_GOBO_FAN
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_COOLING
    common/rdm/PidStoreLoader.cpp:262: Loading FAN_CLEAN
    common/rdm/PidStoreLoader.cpp:262: Loading FAN_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading SERIAL_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading EVENT_LOG_USER_EVENT_TRIGGER
    common/rdm/PidStoreLoader.cpp:262: Loading FAN_ERROR_STATUS
    common/rdm/PidStoreLoader.cpp:262: Loading MAX_LAMP_POWER
    common/rdm/PidStoreLoader.cpp:262: Loading LAMP_FADE_ON_COMM_LOSS
    common/rdm/PidStoreLoader.cpp:262: Loading LOCK_PAN
    common/rdm/PidStoreLoader.cpp:262: Loading LOCK_TILT
    common/rdm/PidStoreLoader.cpp:262: Loading PAN_TILT_FREE_MOTION
    common/rdm/PidStoreLoader.cpp:262: Loading FOLLOW_SPOT_CONTROLLER_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading ZOOM_TYPE
    common/rdm/PidStoreLoader.cpp:262: Loading FOLLOW_SPOT_ZOOM
    common/rdm/PidStoreLoader.cpp:262: Loading ZERO_GOBO_WHEELS
    common/rdm/PidStoreLoader.cpp:262: Loading CLEAR_LOG
    common/rdm/PidStoreLoader.cpp:262: Loading DISABLE_MECHS
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_INPUT
    common/rdm/PidStoreLoader.cpp:262: Loading WIRELESS_UNLINK
    common/rdm/PidStoreLoader.cpp:262: Loading SCREENSAVER_DELAY
    common/rdm/PidStoreLoader.cpp:262: Loading PT_FEEDBACK
    common/rdm/PidStoreLoader.cpp:262: Loading OUTPUT_UNIFORMITY
    common/rdm/PidStoreLoader.cpp:262: Loading DL_COMPATIBLE_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading TOUCHSCREEN_LOCK
    common/rdm/PidStoreLoader.cpp:262: Loading DMX_HOLD_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading SLOT_LABELS
    common/rdm/PidStoreLoader.cpp:262: Loading MODIFY_SENSOR_DEFINITION
    common/rdm/PidStoreLoader.cpp:262: Loading NETWORK_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading NETWORK_MASK
    common/rdm/PidStoreLoader.cpp:262: Loading GATEWAY_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading DNS_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading DC_OFFSET
    common/rdm/PidStoreLoader.cpp:262: Loading DC_FADER_OFFSET
    common/rdm/PidStoreLoader.cpp:262: Loading DC_CALIBRATION
    common/rdm/PidStoreLoader.cpp:262: Loading CURVE_DEFINITION
    common/rdm/PidStoreLoader.cpp:262: Loading SWPID_AUTO_UNIVERSE_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_LOGIN
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_LOGOUT
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_RADIO_POWER_24
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_RADIO_POWER_58
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_MASK_24
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_MASK_58
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_RADIO_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_RADIO_AHFSS
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_AFHSS_MASK_24
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_AFHSS_MASK_54
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_SIGNAL_STRENGTH
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_DMX_TO_RDM_RATIO
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_DOWNSTREAM_RDM
    common/rdm/PidStoreLoader.cpp:262: Loading WDMX_IDENTIFY_PROXIES
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_CURVE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_CURVE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_STROBE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_OUTPUT_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_OUTPUT_MODE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_RED_SHIFT
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_WHITE_POINT
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_WHITE_POINT_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_FREQUENCY
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_DMX_LOSS_BEHAVIOR
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_DMX_LOSS_BEHAVIOR_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_PLUS_SEVEN
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_BACKLIGHT_BRIGHTNESS
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_BACKLIGHT_TIMEOUT
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_STATUS_INDICATORS
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_RECALIBRATE_FIXTURE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_OVER_TEMP_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_SIMPLE_SETUP_MODE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_STROBE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_RED_SHIFT_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_PLUS_SEVEN_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_BACKLIGHT_TIMEOUT_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_SIMPLE_SETUP_MODE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_OVER_TEMP_MODE_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_SEQUENCE_PLAYBACK
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_SEQUENCE_CONFIG
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LOW_POWER_TIMEOUT
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LOW_POWER_TIMEOUT_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_FREQUENCY_ENUM
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_LED_FREQUENCY_ENUM_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_PRESET_CONFIG
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_HAS_ENUM_TEXT
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_GET_ENUM_TEXT
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_POWER_COMMAND
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_POWER_COMMAND_DESCRIPTION
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_DALI_SHORT_ADDRESS
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_DALI_GROUP_MEMBERSHIP
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_AUTOBIND
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_DELETE_SUBDEVICE
    common/rdm/PidStoreLoader.cpp:262: Loading ETC_PREPARE_FOR_SOFTWARE_DOWNLOAD
    common/rdm/PidStoreLoader.cpp:262: Loading SERIAL_NUMBER
    common/rdm/PidStoreLoader.cpp:262: Loading CODE_VERSION
    common/rdm/PidStoreLoader.cpp:262: Loading MODEL_ID
    common/rdm/PidStoreLoader.cpp:262: Loading MODEL_ID_LIST
    common/rdm/PidStoreLoader.cpp:262: Loading PIXEL_TYPE
    common/rdm/PidStoreLoader.cpp:262: Loading PIXEL_COUNT
    common/rdm/PidStoreLoader.cpp:201: Load Complete
    common/network/PosixInterfacePicker.cpp:168: Skipping lo because it's a loopback
    common/network/PosixInterfacePicker.cpp:256: Found: eth0, 192.168.0.100, dc:a6:32:c2:43:9b
    common/network/InterfacePicker.cpp:92: Using interface eth0 (192.168.0.100)
    olad/OlaServer.cpp:194: Server UID is 7a70:6400a8c0
    olad/OlaServer.cpp:206: Server instance name is OLA Server
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 9, events 2001, descriptor: 0xf5a8c0
    olad/AvahiDiscoveryAgent.cpp:201: Client state changed to AVAHI_CLIENT_S_RUNNING
    common/thread/Thread.cpp:200: Thread http, policy SCHED_OTHER, priority 0
    common/http/HTTPServer.cpp:509: HTTP Server started on port 9090
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 13, events 2001, descriptor: 0xf73e78
    olad/AvahiDiscoveryAgent.cpp:236: State for OLA Server._http._tcp,_ola, group 0xf5efe0 changed to AVAHI_ENTRY_GROUP_UNCOMMITED
    olad/AvahiDiscoveryAgent.cpp:334: Adding _ola._sub._http._tcp
    olad/OlaServer.cpp:481: Updated PID definitions.
    olad/AvahiDiscoveryAgent.cpp:236: State for OLA Server._http._tcp,_ola, group 0xf5efe0 changed to AVAHI_ENTRY_GROUP_REGISTERING
    olad/OlaServer.cpp:489: PID store is at 0x1009f20
    common/thread/Thread.cpp:200: Thread signal-thread, policy SCHED_OTHER, priority 0
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 21, events 2001, descriptor: 0xf60c80
    olad/PluginManager.cpp:73: Skipping ESP Net because it was disabled
    olad/PluginManager.cpp:73: Skipping GPIO because it was disabled
    olad/PluginManager.cpp:73: Skipping KarateLight because it was disabled
    olad/PluginManager.cpp:73: Skipping KiNET because it was disabled
    olad/PluginManager.cpp:73: Skipping Milford Instruments because it was disabled
    common/io/EPoller.cpp:306: ss process time was 0.000007
    olad/PluginManager.cpp:73: Skipping Enttec Open DMX because it was disabled
    olad/PluginManager.cpp:73: Skipping Open Pixel Control because it was disabled
    common/io/EPoller.cpp:306: ss process time was 0.000005
    olad/PluginManager.cpp:73: Skipping OSC because it was disabled
    olad/PluginManager.cpp:73: Skipping Renard because it was disabled
    olad/PluginManager.cpp:73: Skipping SandNet because it was disabled
    common/io/EPoller.cpp:306: ss process time was 0.000006
    olad/PluginManager.cpp:73: Skipping ShowNet because it was disabled
    olad/PluginManager.cpp:73: Skipping SPI because it was disabled
    olad/PluginManager.cpp:73: Skipping StageProfi because it was disabled
    olad/PluginManager.cpp:73: Skipping Serial USB because it was disabled
    olad/PluginManager.cpp:73: Skipping USB because it was disabled
    olad/PluginManager.cpp:73: Skipping Pathport because it was disabled
    olad/PluginManager.cpp:195: Trying to start Dummy
    olad/plugin_api/DeviceManager.cpp:105: Installed device: Dummy Device:1-1
    olad/PluginManager.cpp:200: Started Dummy
    olad/PluginManager.cpp:195: Trying to start ArtNet
    common/network/PosixInterfacePicker.cpp:168: Skipping lo because it's a loopback
    common/network/PosixInterfacePicker.cpp:256: Found: eth0, 192.168.0.100, dc:a6:32:c2:43:9b
    common/network/InterfacePicker.cpp:92: Using interface eth0 (192.168.0.100)
    common/network/Socket.cpp:144: Binding to 0.0.0.0:6454
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 23, events 2001, descriptor: 0xfc03b0
    olad/plugin_api/DeviceManager.cpp:105: Installed device: ArtNet [192.168.0.100]:2-1
    plugins/artnet/ArtNetNode.cpp:644: Sending ArtTodRequest for address 1
    olad/plugin_api/PortManager.cpp:119: Patched 2-1-O-0 to universe 1
    plugins/artnet/ArtNetNode.cpp:644: Sending ArtTodRequest for address 2
    olad/plugin_api/PortManager.cpp:119: Patched 2-1-O-1 to universe 2
    plugins/artnet/ArtNetNode.cpp:644: Sending ArtTodRequest for address 3
    olad/plugin_api/PortManager.cpp:119: Patched 2-1-O-2 to universe 3
    plugins/artnet/ArtNetNode.cpp:644: Sending ArtTodRequest for address 4
    olad/plugin_api/PortManager.cpp:119: Patched 2-1-O-3 to universe 4
    plugins/artnet/ArtNetNode.cpp:516: Sending ArtPoll
    olad/PluginManager.cpp:200: Started ArtNet
    olad/PluginManager.cpp:195: Trying to start E1.31 (sACN)
    common/network/PosixInterfacePicker.cpp:168: Skipping lo because it's a loopback
    common/network/PosixInterfacePicker.cpp:256: Found: eth0, 192.168.0.100, dc:a6:32:c2:43:9b
    common/network/InterfacePicker.cpp:92: Using interface eth0 (192.168.0.100)
    common/network/Socket.cpp:144: Binding to 0.0.0.0:5568
    common/io/EPoller.cpp:82: EPOLL_CTL_ADD 24, events 2001, descriptor: 0xfa2f90
    olad/plugin_api/DeviceManager.cpp:105: Installed device: E1.31 (DMX over ACN) [192.168.0.100]:11-1
    olad/plugin_api/PortManager.cpp:119: Patched 11-1-I-0 to universe 1
    olad/plugin_api/PortManager.cpp:119: Patched 11-1-I-1 to universe 2
    olad/plugin_api/PortManager.cpp:119: Patched 11-1-I-2 to universe 3
    olad/plugin_api/PortManager.cpp:119: Patched 11-1-I-3 to universe 4
    olad/PluginManager.cpp:200: Started E1.31 (sACN)
    olad/PluginManager.cpp:195: Trying to start FTDI USB DMX
    plugins/ftdidmx/FtdiWidget.cpp:133: Found 0 FTDI devices with PID: 24577.
    plugins/ftdidmx/FtdiWidget.cpp:205: Freeing list
    plugins/ftdidmx/FtdiWidget.cpp:133: Found 0 FTDI devices with PID: 24593.
    plugins/ftdidmx/FtdiWidget.cpp:205: Freeing list
    olad/PluginManager.cpp:200: Started FTDI USB DMX
    olad/PluginManager.cpp:195: Trying to start UART native DMX
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA0
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA1
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA2
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA3
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA4
    olad/PluginManager.cpp:200: Started UART native DMX
    common/io/EPoller.cpp:306: ss process time was 0.000012
    common/io/EPoller.cpp:306: ss process time was 0.000002
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000002
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000004
    common/io/EPoller.cpp:306: ss process time was 0.000002
    common/io/EPoller.cpp:306: ss process time was 0.000002
    olad/AvahiDiscoveryAgent.cpp:236: State for OLA Server._http._tcp,_ola, group 0xf5efe0 changed to AVAHI_ENTRY_GROUP_ESTABLISHED
    plugins/artnet/ArtNetNode.cpp:1784: Artnet RDM discovery complete
    plugins/artnet/ArtNetNode.cpp:1784: Artnet RDM discovery complete
    plugins/artnet/ArtNetNode.cpp:1784: Artnet RDM discovery complete
    plugins/artnet/ArtNetNode.cpp:1784: Artnet RDM discovery complete
    common/io/EPoller.cpp:306: ss process time was 0.000004
    olad/OlaServer.cpp:385: Garbage collecting
    plugins/artnet/ArtNetNode.cpp:516: Sending ArtPoll
    common/io/EPoller.cpp:306: ss process time was 0.000009
    common/io/EPoller.cpp:306: ss process time was 0.000006
    common/io/EPoller.cpp:306: ss process time was 0.000005
    olad/OlaServer.cpp:385: Garbage collecting
    plugins/artnet/ArtNetNode.cpp:516: Sending ArtPoll
    common/io/EPoller.cpp:306: ss process time was 0.000004
    common/io/EPoller.cpp:306: ss process time was 0.000002
    common/io/EPoller.cpp:306: ss process time was 0.000002
    ^Ccommon/thread/SignalThread.cpp:115: Received signal: Interrupt
    common/http/HTTPServer.cpp:536: Notifying HTTP server thread to stop
    common/http/HTTPServer.cpp:538: Waiting for HTTP server thread to exit
    common/http/HTTPServer.cpp:540: HTTP server thread exited
    common/io/EPoller.cpp:116: EPOLL_CTL_DEL 13
    common/io/EPoller.cpp:116: EPOLL_CTL_DEL 9
    common/io/EPoller.cpp:116: EPOLL_CTL_DEL 23
    common/io/EPoller.cpp:116: EPOLL_CTL_DEL 24
    common/io/EPoller.cpp:306: ss process time was 0.000005
    common/io/EPoller.cpp:306: ss process time was 0.000007
    

    then I hit ctl-c to stop it

    Hope this helps

    Thanks
    /Magnus

  3. peternewman commented on Nov 11, 2021

    @peternewman
    Member

    Here's the output from running olad -l 4 -c /etc/ola :

    Thanks, so the relevant bit is:

    olad/PluginManager.cpp:195: Trying to start UART native DMX
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA0
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA1
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA2
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA3
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA4
    olad/PluginManager.cpp:200: Started UART native DMX

    So the code is here:

    /* Do the platform-specific initialisation of the UART to 250kbaud */
    if (!ola::io::LinuxHelper::SetDmxBaud(m_fd)) {
    OLA_WARN << "Failed to set baud rate to 250k";
    return false;
    }

    bool LinuxHelper::SetDmxBaud(int fd) {
    #if defined(HAVE_STROPTS_H) && defined(HAVE_TERMIOS2)
    static const int rate = 250000;
    struct termios2 tio; // linux-specific terminal stuff
    if (ioctl(fd, TCGETS2, &tio) < 0) {
    return false;
    }
    tio.c_cflag &= ~CBAUD;
    tio.c_cflag |= BOTHER;
    tio.c_ispeed = rate;
    tio.c_ospeed = rate; // set custom speed directly
    if (ioctl(fd, TCSETS2, &tio) < 0) {
    return false;
    }
    if (LogLevel() >= OLA_LOG_INFO) {
    if (ioctl(fd, TCGETS2, &tio) < 0) {
    OLA_INFO << "Error getting altered settings from port";
    } else {
    OLA_INFO << "Port speeds for " << fd << " are " << tio.c_ispeed
    << " in and " << tio.c_ospeed << " out";
    }
    }
    return true;
    #else
    return false;
    (void) fd;
    #endif // defined(HAVE_STROPTS_H) && defined(HAVE_TERMIOS2)
    }

    At a guess, we're in the undefined bit at the bottom for some reason.

    Are you happy to have a go at compiling from source, that's probably where we need to go to fix this? Probably start off just compiling our master branch (or 0.10 branch) and then when that's working (well compiling but showing the same fault) we can add some debugging and go from there...

  4. MagnusHerrlin commented on Nov 12, 2021

    @MagnusHerrlin
    Author

    My knowledge about Linux are very limited, in fact what I know so far is what I've learned from using the Raspberry Pis
    and searching the internet.

    But from what I can read from your code the program either exits on line 61 (Is this when it can not find the device?)
    or line 69(Failed to set the baudrate?)

    However instead of compiling ola from scratch (takes a loong time)
    I found this program to test the ports

    // SOURCE: https://blog.mbedded.ninja/programming/operating-systems/linux/linux-serial-ports-using-c-cpp/
    #include <stdio.h>
    #include <string.h>
    #include <fcntl.h>
    #include <errno.h>
    #include <termios.h>
    #include <unistd.h>
    int main() {
      
      int serial_port = open("/dev/ttyAMA0", O_RDWR);
      struct termios tty;  
      if(tcgetattr(serial_port, &tty) != 0) 
      {
          printf("Error %i from tcgetattr: %s\n", errno, strerror(errno));
          return 1;
      }  
      tty.c_cflag &= ~PARENB;
      tty.c_cflag &= ~CSTOPB;
      tty.c_cflag &= ~CSIZE;
      tty.c_cflag |= CS8;
      tty.c_cflag &= ~CRTSCTS;
      tty.c_cflag |= CREAD | CLOCAL;  tty.c_lflag &= ~ICANON;
      tty.c_lflag &= ~ECHO;
      tty.c_lflag &= ~ECHOE;
      tty.c_lflag &= ~ECHONL;
      tty.c_lflag &= ~ISIG;
      tty.c_iflag &= ~(IXON | IXOFF | IXANY);
      tty.c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP|INLCR|IGNCR|ICRNL);  
      tty.c_oflag &= ~OPOST;
      tty.c_oflag &= ~ONLCR;  tty.c_cc[VTIME] = 10;
      tty.c_cc[VMIN] = 0;  
      
      cfsetispeed(&tty, 250000);
      cfsetospeed(&tty, 250000);  
      
       if (tcsetattr(serial_port, TCSANOW, &tty) != 0) 
      {
          printf("Error %i from tcsetattr: %s\n", errno, strerror(errno));
          return 1;
      }  
      
      unsigned char msg[] = { 'H', 'e', 'l', 'l', 'o', '\r' };
      
      write(serial_port, "Hello, world!", sizeof(msg));  
      
      char read_buf [256];  memset(&read_buf, '\0', sizeof(read_buf));  
      int num_bytes = read(serial_port, &read_buf, sizeof(read_buf));  
      if (num_bytes < 0) 
      {
          printf("Error reading: %s", strerror(errno));
          return 1;
      }  
      printf("Read %i bytes. Received message: %s", num_bytes, read_buf);
      close(serial_port);
      return 0;
    }
    

    I opened it in Geany made a few changes compiled,built and ran it
    and with a link between Tx and Rx I can read the transmitted text.

    Btw I tried this on my old installation (Buster),
    I will now transfer the file to the new installation and try it again.
    (Hopefully we can get some useful info out of that)

    Thanks
    /Magnus

  5. MagnusHerrlin commented on Nov 12, 2021

    @MagnusHerrlin
    Author

    Just tried it on the new installation and it works there too.
    The difference I can see is that the test prog use termios.h
    and ola termios2
    I wonder what the differece is, back to Google.

    /Magnus

  6. peternewman commented on Nov 12, 2021

    @peternewman
    Member

    But from what I can read from your code the program either exits on line 61 (Is this when it can not find the device?) or line 69(Failed to set the baudrate?)

    It could also be line 82 too (if it can't find termios2).

    However instead of compiling ola from scratch (takes a loong time) I found this program to test the ports

    Yes, it can be slow, but not so bad on a Pi 4 surely (especially if you disable everything you don't need). You'll also have to do this at least once to fix the problem, unless you want to wait for a release from us and then a deb from Raspbian.

    Just tried it on the new installation and it works there too. The difference I can see is that the test prog use termios.h and ola termios2 I wonder what the differece is, back to Google.

    https://sourceware.org/legacy-ml/libc-alpha/2019-04/msg00200.html

    termios2 is just a struct.

    You could try merging our code into your example and testing like that.

  7. peternewman commented on Nov 13, 2021

    @peternewman
    Member

    I'm not sure if you get a ping automatically from a link @MagnusHerrlin but it looks like the cause has been found, I was half right:
    #1750

  8. peternewman commented on Nov 13, 2021

    @peternewman
    Member

    @MagnusHerrlin if you get a chance, do you want to try compiling #1751 which will confirm exactly why it failed to set the baud rate.

  9. MagnusHerrlin commented on Nov 13, 2021

    @MagnusHerrlin
    Author

    Hi Peter

    I would love to help, but I'm not really sure how to compile and install it.
    I have tried for the last two days trying to compile ola,
    The first attempts installed ola in /usr/local/bin and this is not where it is installed when done via apt
    so I tried with ./config --prefix=/usr --exec-prefix=/usr and that installed it in the right place.
    then I did make -j 4 all and waited,
    and it compiled without errors (but a lot of warnings about auto_ptr something)
    then a sudo make install and
    sudo ldconfig
    It could run it but the whole system got very unstable and the web interface took a long time to load.
    I also noticed that the file in /etc/init.d/olad did not exist. why?
    from what I read you should do a debuild but that command could not be found and I could not install in with apt.

    So exactly HOW should I do to compile #1751?
    How can I download or switch to this branch?
    I am having a hard time trying to understand how to work with git (even though I watched several tutorials).
    So if you could tell me how I should do to get #1751 and compile it and install it in the right directories
    it would be great.

    And another question: say I spent half an hour compiling everything
    and I make some changes in /ola/plugins/uartdmx/UartWidget.cpp
    do I have to compile everything again?

    Could'nt I just to go into /ola/plugins/uartdmx/ and compile or make this part and then link everything together?
    because all the other objectfiles are already compiled, its just the linking/install step that remains.

    Am I wrong about this?

    Best regards
    /Magnus

  10. MagnusHerrlin commented on Nov 13, 2021

    @MagnusHerrlin
    Author

    Hi

    I installed gh from github
    then did this

    gh pr checkout 1751
    ./autoreconf -i
    Here I uncommented line 3 in /etc/apt/sources.list
    sudo apt update
    sudo apt build-dep ola
    sudo apt install flake8
    autoreconf -i
    ./configure --prefix=/usr --exec-prefix=/usr
    git status // to check if in the right branch
    make -j 4 all
    sudo make install
    sudo ldconfig

    cd ..
    olad -l 4

    and the result is:
    olad/PluginManager.cpp:195: Trying to start UART native DMX
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA0
    common/io/ExtendedSerial.cpp:84: Failed to set baud rate, due to missing stropts.h or termios2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA0
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA1
    common/io/ExtendedSerial.cpp:84: Failed to set baud rate, due to missing stropts.h or termios2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA1
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA2
    common/io/ExtendedSerial.cpp:84: Failed to set baud rate, due to missing stropts.h or termios2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA2
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA3
    common/io/ExtendedSerial.cpp:84: Failed to set baud rate, due to missing stropts.h or termios2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA3
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA4
    common/io/ExtendedSerial.cpp:84: Failed to set baud rate, due to missing stropts.h or termios2
    plugins/uartdmx/UartWidget.cpp:180: Failed to set baud rate to 250k
    plugins/uartdmx/UartDmxPlugin.cpp:82: Unable to setup device for output, device ignored /dev/ttyAMA4
    olad/PluginManager.cpp:200: Started UART native DMX

    But the uarts still don't show up in the webinterface.

    /Magnus

  11. MagnusHerrlin commented on Nov 14, 2021

    @MagnusHerrlin
    Author

    So I tried someting else

    I changed UartWidget.cpp
    to this

    /* do the port settings */

    if (tcgetattr(m_fd, &my_tios) < 0) { // get current settings
    OLA_WARN << "Failed to get POSIX port settings";
    return false;
    }
    cfmakeraw(&my_tios); // make it a binary data port

    my_tios.c_cflag |= CLOCAL; // port is local, no flow control
    my_tios.c_cflag &= ~CSIZE;
    my_tios.c_cflag |= CS8; // 8 bit chars
    my_tios.c_cflag &= ~PARENB; // no parity
    my_tios.c_cflag |= CSTOPB; // 2 stop bit for DMX
    my_tios.c_cflag &= ~CRTSCTS; // no CTS/RTS flow control

    cfsetispeed(&my_tios, 250000);
    cfsetospeed(&my_tios, 250000);

    if (tcsetattr(m_fd, TCSANOW, &my_tios) < 0) { // apply settings
    OLA_WARN << "Failed to set POSIX port settings";
    return false;
    }

    /* Do the platform-specific initialisation of the UART to 250kbaud */
    // if (!ola::io::LinuxHelper::SetDmxBaud(m_fd)) {
    // OLA_WARN << "NEW Failed to set baud rate to 250k";
    // return false;
    // }

    and did a make -j 4 all
    and got the answer to my previous question
    since it only compiled the changes
    then I did a
    sudo make install
    and
    sudo ldconfig

    and this time I could select the Uarts in the webinterface
    I have'nt had time to verify the baudrate with a scope yet,
    I only have leds connected to the outputs,
    but I can see a change when I set all channels to 0 or full

    But I can also see a strange chase effect between the outputs if i set all channels to zero
    Not sure what this is coming from

    I tried to put a video here but you could not see it, so I removed it.

    However here's the output from olad -l 4

    olad/PluginManager.cpp:195: Trying to start UART native DMX
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA0
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA0
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    plugins/uartdmx/UartDmxPlugin.cpp:92: Started UartDmxDevice /dev/ttyAMA0
    olad/plugin_api/DeviceManager.cpp:105: Installed device: UART native DMX:20-/dev/ttyAMA0
    olad/plugin_api/PortManager.cpp:119: Patched 20-/dev/ttyAMA0-O-0 to universe 1
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA1
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA1
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    plugins/uartdmx/UartDmxPlugin.cpp:92: Started UartDmxDevice /dev/ttyAMA1
    olad/plugin_api/DeviceManager.cpp:105: Installed device: UART native DMX:20-/dev/ttyAMA1
    olad/plugin_api/PortManager.cpp:119: Patched 20-/dev/ttyAMA1-O-0 to universe 2
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA2
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA2
    plugins/uartdmx/UartDmxThread.cpp:136: Granularity for UART thread is GOOD
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA2
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    plugins/uartdmx/UartDmxPlugin.cpp:92: Started UartDmxDevice /dev/ttyAMA2
    olad/plugin_api/DeviceManager.cpp:105: Installed device: UART native DMX:20-/dev/ttyAMA2
    olad/plugin_api/PortManager.cpp:119: Patched 20-/dev/ttyAMA2-O-0 to universe 3
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA3
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA3
    plugins/uartdmx/UartDmxThread.cpp:136: Granularity for UART thread is GOOD
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    plugins/uartdmx/UartDmxPlugin.cpp:92: Started UartDmxDevice /dev/ttyAMA3
    olad/plugin_api/DeviceManager.cpp:105: Installed device: UART native DMX:20-/dev/ttyAMA3
    olad/plugin_api/PortManager.cpp:119: Patched 20-/dev/ttyAMA3-O-0 to universe 4
    plugins/uartdmx/UartDmxPlugin.cpp:67: Trying to open UART device /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:70: Opening serial port /dev/ttyAMA4
    plugins/uartdmx/UartWidget.cpp:76: Opened serial port /dev/ttyAMA4
    plugins/uartdmx/UartDmxThread.cpp:136: Granularity for UART thread is GOOD
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    plugins/uartdmx/UartDmxPlugin.cpp:92: Started UartDmxDevice /dev/ttyAMA4
    olad/plugin_api/DeviceManager.cpp:105: Installed device: UART native DMX:20-/dev/ttyAMA4
    olad/plugin_api/PortManager.cpp:119: Patched 20-/dev/ttyAMA4-O-0 to universe 5
    olad/PluginManager.cpp:200: Started UART native DMX
    common/io/EPoller.cpp:306: ss process time was 0.000004
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000002
    common/io/EPoller.cpp:306: ss process time was 0.000001
    common/io/EPoller.cpp:306: ss process time was 0.000001
    plugins/uartdmx/UartDmxThread.cpp:136: Granularity for UART thread is GOOD
    plugins/uartdmx/UartDmxThread.cpp:136: Granularity for UART thread is GOOD

    All the best
    /Magnus

  12. 17 remaining items

  13. Pshatsillo commented on Jan 7, 2022

    @Pshatsillo

    Thank You!

  14. peternewman commented on Jan 7, 2022

    @peternewman
    Member

    Thank You!

    Does that mean it works then @Pshatsillo ? I'm hoping someone can test it before I merge it...

  15. Pshatsillo commented on Jan 7, 2022

    @Pshatsillo
  16. Pshatsillo commented on Jan 11, 2022

    @Pshatsillo

    @peternewman, your fork when ./configure throw error "configure: error: Missing cppunit, please install >= 1.9.6", but it installed in system. It happened without any prefixes. Latest OLA branch configuring without problems

  17. peternewman commented on Jan 11, 2022

    @peternewman
    Member

    @peternewman, your fork when ./configure throw error "configure: error: Missing cppunit, please install >= 1.9.6", but it installed in system. It happened without any prefixes. Latest OLA branch configuring without problems

    Can you share the config.log ?

    Which OLA branch are you using that works? There's nothing missing from that which is in 0.10:
    peternewman/ola@0.10-uart-logging...OpenLightingProject:0.10

    Nothing obviously relevant from master either:
    peternewman/ola@0.10-uart-logging...OpenLightingProject:master

    Does OLA 0.10 pass configure on your machine?
    https://github.com/OpenLightingProject/ola/tree/0.10

  18. Pshatsillo commented on Jan 11, 2022

    @Pshatsillo

    I use master branch. OLA 0.10 fails with same error. If i made your changes in both files manually everything works perfect.
    config.log

    I will try again

  19. peternewman commented on Jan 11, 2022

    @peternewman
    Member

    I use master branch. OLA 0.10 fails with same error.
    config.log

    So that's not 0.10 branch:

    It was created by OLA configure 0.9.8, which was
    generated by GNU Autoconf 2.69.
    

    It's not even my 0.10 branch; I don't know if you haven't done autoreconf -i or there's some old cached one or something.

    If i made your changes in both files manually everything works perfect.

    That's great news, and all that really matters! I assume when you say perfectly you've used the UART output itself as opposed to just got it to compile as intended? If so that's good enough for me for it to be merged.

  20. Pshatsillo commented on Jan 11, 2022

    @Pshatsillo

    Yes, it seems my mistake with checkout branches. Now configure in your branch was success. Waiting when compilation ends...

    UPD: Everything is fine! Thank you!

  21. peternewman commented on Jan 11, 2022

    @peternewman
    Member

    UPD: Everything is fine! Thank you!

    Just to be explicit, do you mean DMX output works again too? Do you have any scope or ability to confirm it's doing the correct frame/baud rate again?

  22. Pshatsillo commented on Jan 11, 2022

    @Pshatsillo

    Yes, led is flashing on master, tomorrow I will try to connect DMX dimmer to my RPI cm4

  23. Pshatsillo commented on Jan 12, 2022

    @Pshatsillo

    Everything is fine and work perfect!

    pi@raspberrypi:~/ola/olad $ ./olad -l 3 --http-data-dir /home/pi/ola/olad/www
    olad/Olad.cpp:98: OLA Daemon version 0.10.8
    olad/OlaDaemon.cpp:121: Using configs in /home/pi/.ola
    common/thread/Thread.cpp:200: Thread pref-saver, policy SCHED_OTHER, priority 0
    common/file/Util.cpp:134: Could not open /usr/local/share/ola/pids: No such file or directory
    common/rdm/PidStoreLoader.cpp:79: Failed to list files in /usr/local/share/ola/pids
    olad/OlaServer.cpp:173: No PID definitions loaded
    olad/OlaServer.cpp:194: Server UID is 7a70:e61ea8c0
    olad/OlaServer.cpp:206: Server instance name is OLA Server
    olad/plugin_api/Preferences.cpp:436: Missing /home/pi/.ola/ola-universe.conf: No such file or directory - this isn't an error, we'll just use the defaults
    common/thread/Thread.cpp:200: Thread http, policy SCHED_OTHER, priority 0
    olad/OlaServer.cpp:481: Updated PID definitions.
    olad/OlaServer.cpp:489: PID store is at 0
    common/http/HTTPServer.cpp:509: HTTP Server started on port 9090
    common/thread/Thread.cpp:200: Thread signal-thread, policy SCHED_OTHER, priority 0
    olad/PluginManager.cpp:195: Trying to start Dummy
    olad/plugin_api/DeviceManager.cpp:105: Installed device: Dummy Device:1-1
    olad/PluginManager.cpp:200: Started Dummy
    olad/PluginManager.cpp:195: Trying to start ArtNet
    olad/plugin_api/DeviceManager.cpp:105: Installed device: ArtNet [192.168.30.230]:2-1
    olad/PluginManager.cpp:200: Started ArtNet
    olad/PluginManager.cpp:195: Trying to start ShowNet
    olad/plugin_api/DeviceManager.cpp:105: Installed device: ShowNet [192.168.30.230]:3-1
    olad/PluginManager.cpp:200: Started ShowNet
    olad/PluginManager.cpp:195: Trying to start ESP Net
    olad/plugin_api/DeviceManager.cpp:105: Installed device: ESP Net [192.168.30.230]:4-1
    olad/PluginManager.cpp:200: Started ESP Net
    olad/PluginManager.cpp:195: Trying to start Serial USB
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    olad/PluginManager.cpp:200: Started Serial USB
    olad/PluginManager.cpp:195: Trying to start Enttec Open DMX
    common/io/IOUtils.cpp:39: open(/dev/dmx0): No such file or directory
    plugins/opendmx/OpenDmxPlugin.cpp:80: Could not open /dev/dmx0 No such file or directory
    olad/PluginManager.cpp:200: Started Enttec Open DMX
    olad/PluginManager.cpp:195: Trying to start SandNet
    olad/plugin_api/DeviceManager.cpp:105: Installed device: SandNet [192.168.30.230]:7-1
    olad/PluginManager.cpp:200: Started SandNet
    olad/PluginManager.cpp:195: Trying to start StageProfi
    olad/PluginManager.cpp:200: Started StageProfi
    olad/PluginManager.cpp:195: Trying to start Pathport
    olad/plugin_api/DeviceManager.cpp:105: Installed device: Pathport [192.168.30.230]:9-1
    olad/PluginManager.cpp:200: Started Pathport
    olad/PluginManager.cpp:195: Trying to start E1.31 (sACN)
    olad/plugin_api/DeviceManager.cpp:105: Installed device: E1.31 (DMX over ACN) [192.168.30.230]:11-1
    olad/PluginManager.cpp:200: Started E1.31 (sACN)
    olad/PluginManager.cpp:195: Trying to start SPI
    olad/PluginManager.cpp:200: Started SPI
    olad/PluginManager.cpp:195: Trying to start KiNET
    olad/plugin_api/DeviceManager.cpp:105: Installed device: KiNet Device:16-1
    olad/PluginManager.cpp:200: Started KiNET
    olad/PluginManager.cpp:195: Trying to start KarateLight
    common/io/IOUtils.cpp:39: open(/dev/kldmx0): No such file or directory
    plugins/karate/KaratePlugin.cpp:79: Could not open /dev/kldmx0 No such file or directory
    olad/PluginManager.cpp:200: Started KarateLight
    olad/PluginManager.cpp:195: Trying to start Milford Instruments
    olad/PluginManager.cpp:200: Started Milford Instruments
    olad/PluginManager.cpp:195: Trying to start Renard
    olad/PluginManager.cpp:200: Started Renard
    olad/PluginManager.cpp:195: Trying to start UART native DMX
    common/io/ExtendedSerial.cpp:96: Port speeds for 28 are 250000 in and 250000 out
    common/thread/Thread.cpp:200: Thread , policy SCHED_OTHER, priority 0
    olad/plugin_api/DeviceManager.cpp:105: Installed device: UART native DMX:20-/dev/ttyAMA1
    olad/PluginManager.cpp:200: Started UART native DMX
    olad/PluginManager.cpp:195: Trying to start Open Pixel Control
    olad/PluginManager.cpp:200: Started Open Pixel Control
    olad/PluginManager.cpp:195: Trying to start GPIO
    olad/PluginManager.cpp:200: Started GPIO
    plugins/uartdmx/UartDmxThread.cpp:136: Granularity for UART thread is GOOD
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    olad/plugin_api/PortManager.cpp:119: Patched 2-1-O-0 to universe 5555
    olad/plugin_api/PortManager.cpp:119: Patched 20-/dev/ttyAMA1-O-0 to universe 5555
    olad/plugin_api/Universe.cpp:286: Added source client, 0x608c40 to universe 5555
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    plugins/artnet/ArtNetNode.cpp:1784: Artnet RDM discovery complete
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    olad/plugin_api/Universe.cpp:439: Removed Stale Client
    common/io/Serial.cpp:151: Device /dev/ttyUSB0 doesn't exist, so there's no point trying to acquire a lock
    ^Ccommon/thread/SignalThread.cpp:115: Received signal: Interrupt
    common/http/HTTPServer.cpp:536: Notifying HTTP server thread to stop
    common/http/HTTPServer.cpp:538: Waiting for HTTP server thread to exit
    common/http/HTTPServer.cpp:540: HTTP server thread exited
    
    pi@raspberrypi:~/ola/olad $
    
  24. MagnusHerrlin commented on Jan 12, 2022

    @MagnusHerrlin
    Author

    Hi

    I just compiled and installed #1760 and it is working fine I also checked with a scope everything is looking fine.
    Then I made a test to leave the first serialport alone and use it for bluetooth instead
    so I commented out the following in /boot/config.txt

    #dtoverlay=disable-bt
    #init_uart_clock=16000000
    #enable UART
    #enable_uart=1

    please note even the line with the baudrate setting is commented out.

    I only use uart2 to uart5

    dtoverlay=uart2
    dtoverlay=uart3
    dtoverlay=uart4
    dtoverlay=uart5

    and the baudrate is still correct on the used ports

    However when I run olad with --log-level 3
    I get a lot of errors about the uart that is not in use:
    plugins/uartdmx/UartWidget.cpp:129: /dev/ttyAMA0 Short or failed write!
    the port It is not patched to any universe.
    but anyway its working.

    Thanks
    /Magnus

  25. peternewman commented on Jan 13, 2022

    @peternewman
    Member

    Thanks for testing all, I've merged that now!

  26. peternewman commented on Jan 13, 2022

    @peternewman
    Member

    @MagnusHerrlin I've opened #1762 for your other issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions