Anonymous Login
2026-01-15 07:03 CET

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0000016HomeAutomation SystemModules, Embedded softwarepublic2012-08-06 12:11
ReporterKristian Holmberg 
Assigned To 
PrioritylowSeverityminorReproducibilityalways
StatusnewResolutionopen 
PlatformhwPWMOSsvnOS Version2153
Summary0000016: hwPWM, different scaling on channel 1+2 and 3+4 led scaling active
DescriptionThere seems to be different scaling between ch 12 and 34. Turn-on is at different levels for the two, when using Dimmer_AbsoluteFade, channel 1+2 turn on at level 2, while 3+4 turn on at level 10. At maximum (255) there seems to be no difference in intensity between the two channels.

Led scaling was enabled on all channels

This may be a configuration issue, it may also be a scaling issue
Steps To ReproduceUse configuration in additional information
Verify through atomic, preferably measuring directly on outputs (B/C + F/G)
Additional Information#config.inc
## Section act_hwPWM -- Do not edit this line

#Uncomment the line below if you want to use EEPROM with this module, dont forget to also uncomment the line in sources.list
act_hwPWM_USEEEPROM=1

act_hwPWM_ID=0x1

act_hwPWM_STORE_VALUE_TIMEOUT=0x2 /* <TIMER> -- DO NOT REMOVE THIS COMMENT -- */
act_hwPWM_STORE_VALUE_TIMEOUT_TIME=10

act_hwPWM_SEND_STATUS_TIMEOUT=0x3 /* <TIMER> -- DO NOT REMOVE THIS COMMENT -- */
act_hwPWM_SEND_STATUS_INTERVAL_S=5

act_hwPWM_FADE_TIMER=0x4 /* <TIMER> -- DO NOT REMOVE THIS COMMENT -- */

act_hwPWM_ENABLE_FADE=1

# Examples:
# for channel 1 or 2:
# COM=2, WGM= 5, CS=4
# will give 120Hz PWM, adjust CS to change frequency

# for channel 3 or 4:
# COM=2, WGM= 1, CS=3
# will give 240Hz PWM, adjust CS to change frequency

#Channel 1 and 2 is attached to the 16 bit timer 1
#Channel 3 and 4 is attached to the 8 bit timer 0

#### PWM Channel 1 and 2 ####
# COM-modes:
# In Fast PWM mode:
# 0 - Disabled
# 1 - Toggle OC1A on compare match, OC1B disabled (if WGM = 14 or 15)
# 2 - Clear output on Compare match, set at bottom (non-inverting)
# 3 - Set output on Compare match, clear at bottom (inverting)
# In Phase correct mode:
# 0 - Disabled
# 1 - Toggle OC1A on compare match, OC1B disabled (if WGM = 9 or 11)
# 2 - Clear output on compare match when upcounting
# set when downcounting
# 3 - Set output on compare match when upcounting
# clear when downcounting
#
# WGM-modes:
# Mode "TOP" "Update Output" "Name"
# 0 - 0xFFFF Immediate Normal
# 1 - 0x00FF Top PWM, Phase correct, 8-bit
# 2 - 0x01FF Top PWM, Phase correct, 9-bit
# 3 - 0x03FF Top PWM, Phase correct, 10-bit
# 4 - 0CR1A Immediate CTC
# 5 - 0x00FF Bottom PWM, Fast, 8-bit
# 6 - 0x01FF Bottom PWM, Fast, 9-bit
# 7 - 0x03FF Bottom PWM, Fast, 10-bit
# 8 - ICR1 Bottom PWM, Phase and frequency correct
# 9 - OCR1A Bottom PWM, Phase and frequency correct
# 10 - ICR1 Top PWM, Phase correct
# 11 - OCR1A Top PWM, Phase correct
# 12 - ICR1 Immediate CTC
# 13 - Reserved
# 14 - ICR1 Bottom PWM, Fast
# 15 - OCR1A Bottom PWM, Fast

#### PWM Channel 1, EXP_B, Timer1, OC1B ####

# Select Compare Output Mode, act_hwPWM_CHx_COM
# Set to 0 to disable this channel
# See datasheet for more information
act_hwPWM_CH1_COM=2

# Select Waveform Generation Mode, act_hwPWM_CHx_WGM
# See table datasheet for information
act_hwPWM_CH1_WGM=5

# Select Clock Prescaler, act_hwPWM_CHx_CS
# 1 divide by 1 2 divide by 8
# 3 divide by 32 4 divide by 64
# 5 divide by 128 6 divide by 256
# 7 divide by 1024
# See datasheet for more information
act_hwPWM_CH1_CS=4

# Set this to 1 to enable LED scaling on PWM output
act_hwPWM_CH1_LED=1

#### PWM Channel 2, EXP_C, Timer1, OC1A ####
act_hwPWM_CH2_COM=2
act_hwPWM_CH2_WGM=5
act_hwPWM_CH2_CS=4
act_hwPWM_CH3_LED=1

#### PWM Channel 3 and 4 ####
# COM-modes:
# In Fast PWM mode:
# 0 - Disabled
# 1 - Toggle output on compare match (if WGM >= 4)
# 2 - Clear output on Compare match, set at bottom (non-inverting)
# 3 - Set output on Compare match, clear at bottom (inverting)
# In Phase correct mode:
# 0 - Disabled
# 1 - Toggle output on compare match (if WGM >= 4)
# 2 - Clear output on compare match when upcounting
# set when downcounting
# 3 - Set output on compare match when upcounting
# clear when downcounting
#
# WGM-modes:
# Mode "TOP" "Update Output" "Name"
# 0 - 0xFF Immediate Normal
# 1 - 0xFF Top PWM, Phase correct
# 2 - 0CRA Immediate CTC
# 3 - 0xFF Bottom PWM, Fast
# 4 - Reserved
# 5 - OCRA Top PWM, Phase correct
# 6 - Reserved
# 7 - OCRA Bottom PWM, Fast

#### PWM Channel 3, EXP_F, Timer0, OC0A ####
act_hwPWM_CH3_COM=2
act_hwPWM_CH3_WGM=1
act_hwPWM_CH3_CS=3
act_hwPWM_CH3_LED=1

#### PWM Channel 4, EXP_G, Timer0, OC0B ####
act_hwPWM_CH4_COM=2
act_hwPWM_CH4_WGM=1
act_hwPWM_CH4_CS=3
act_hwPWM_CH4_LED=1

## End section act_hwPWM -- Do not edit this line
TagsNo tags attached.
Attached Files

-Relationships
+Relationships

-Notes
Linus Lundin

~0000019

Linus Lundin (developer)

Try changing WGM to 3 for channels 3 and 4
/Linus
+Notes

-Issue History
Date Modified Username Field Change
2012-08-03 23:40 Kristian Holmberg New Issue
2012-08-06 12:11 Linus Lundin Note Added: 0000019
+Issue History