Browse Source

base-files: add support for the morse LED trigger

Write "delay" and "message" options to their respective files,
allowing Morse code message configuration through UCI.
The delay (dit length) defaults to 150ms (about 8 words per minute,
suitable for beginners).

Signed-off-by: Petr Viktorin <[email protected]>
Signed-off-by: Gabor Juhos <[email protected]>

SVN-Revision: 34380
Gabor Juhos 13 years ago
parent
commit
38fced86ee
2 changed files with 8 additions and 1 deletions
  1. 1 1
      package/base-files/Makefile
  2. 7 0
      package/base-files/files/etc/init.d/led

+ 1 - 1
package/base-files/Makefile

@@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk
 include $(INCLUDE_DIR)/version.mk
 include $(INCLUDE_DIR)/version.mk
 
 
 PKG_NAME:=base-files
 PKG_NAME:=base-files
-PKG_RELEASE:=119
+PKG_RELEASE:=120
 
 
 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/
 PKG_BUILD_DEPENDS:=opkg/host
 PKG_BUILD_DEPENDS:=opkg/host

+ 7 - 0
package/base-files/files/etc/init.d/led

@@ -24,6 +24,8 @@ load_led() {
 	config_get delayoff $1 delayoff
 	config_get delayoff $1 delayoff
 	config_get interval $1 interval "50"
 	config_get interval $1 interval "50"
 	config_get port_state $1 port_state
 	config_get port_state $1 port_state
+	config_get delay $1 delay "150"
+	config_get message $1 message ""
 
 
 	if [ "$trigger" = "rssi" ]; then
 	if [ "$trigger" = "rssi" ]; then
 		# handled by rssileds userspace process
 		# handled by rssileds userspace process
@@ -66,6 +68,11 @@ load_led() {
 				echo $port_state > /sys/class/leds/${sysfs}/port_state
 				echo $port_state > /sys/class/leds/${sysfs}/port_state
 			;;
 			;;
 
 
+		"morse")
+			echo $message > /sys/class/leds/${sysfs}/message
+			echo $delay > /sys/class/leds/${sysfs}/delay
+			;;
+
 		switch[0-9]*)
 		switch[0-9]*)
 			local port_mask
 			local port_mask