2100 LED question
-
The script linked above? It's a shell script; so like a bash script except not bash, it uses the default bsd shell. https://man.freebsd.org/cgi/man.cgi?query=sh
-
@stephenw10 said in 2100 LED question:
https://man.freebsd.org/cgi/man.cgi?query=sh
Thanks $ "Expands to the positional parameters" There has got to be get this to work with a tracking id for an ACL
I did not know it could do solid red, pretty cool!!!
Well changing the number in that script is easy but adding that script to the acl is going to be harder. I think I can just add in the command to change to red to the tracking id somehow, again within the open source code finding that section of code is harder.
-
You could run pfctl -vvss to check for open states using the ruleID and use that to trigger the LED via a script run on a cronjob.
-
@JonathanLee said in 2100 LED question:
Microsofts Xenix
LOL - you said Microsoft Xenix,
Radio Shack back in the day ran this on the Model II (1979ish)
the computer is long gone, but I have a set of 8" install floppies and manuals around somewhere if you need them ;-)Later iterations of the Radio Shack (Tandy) line after they changed from the Motorola processor and switched to Intel (IBM PC Clone), could ran SCO Unix - I pulled the manual from the shelf you want me to look something up for you
Or if you want something more "original" we could go back to this
From this core are also derived
Microsoft's OS/2 / Windows
and
Digital Equipment Corp (DEC) pdp and VAX based systems
the core systems in each remarkable close to the core unix
and
Apple's OS versionswhat a blast - those day
.TITLE SHEP,’APPLE DOS’ * 6.3 10-6-78 * 8 BIT ASSEMBLER .M6502 * ************************************************************************************** * (C) COPYRIGHT 1978 APPLE COMPUTER, INC ************************************************************************************** ORG1 EQU $1B00 ORG2 EQU $3600 DISKIO EQU $3D00 ASC1 EQU $3800
-
@jrey EPIC!!! I have a Xenix book too,
I have a VM that runs it so could play with it. I wanted it as a kid in the 1990s so bad. I had Dos 3.11 back in the day. I learned that the mail application is like Alpine
https://unix.stackexchange.com/questions/366048/xenix-sco-v-running-in-contemporary-machines-as-vms
Check out part one and two that is my addition to how to run it in virtual box step by step, no clue why someone marked it -1 for me :( I bet it is someone that hated that os or something.
-
I got the output with the a rule using that command YEAH!!!
-
@JonathanLee said in 2100 LED question:
I have a VM that runs it so I could play with it
Cool I have and old DEC PDP emulator that I fire up from time to time just to perform a memory test (that is my memory - how much can I remember)
have fun with the lights. (like your "night before" re-wording) you could also just create some time based rules to block the late night gamer.. But then again the lights do sound like they are way more fun.
-
@jrey I like the lights because even with the offline timers he turns it on to play what's already installed on it. Once at 3am till 5am on his last soccer game, he looked like a zombie the next day.
-
I got my rule id it is 43
However running
switch -R does not work for some reason
It would be these rules to show stats only
In linux you can just display specific information I wonder how to pluck that out in freebsd
pfctl -vvsr
I will figure it out I just need all the rules that are in use for GAME_IP_GROUP
YEAHHHH use them with pfctl -vvss | grep ', rule ... and we should be good to make a script use a if clause if !null it should work and make a cron for it
-
pfctl -vvss | grep ', rule 43'
-
I am going to use this as a string entry and check to see if it is null if not turn the led on.
Simple enough in theory.
-
Something maybe like this
#!/bin/sh pfctl -vvss | grep ', rule 79' >/dev/null res=$? if [ $res = 0 ]; then sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 1 >/dev/null fi Or... #!/bin/sh str="$(pfctl -vvss | grep ', rule 79')" if [ -z "$str" ]; then sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 1 >/dev/null fi
Ref Researching:
https://forums.freebsd.org/threads/bin-sh-how-to-save-a-shell-command-output-into-a-string-variable.90088/ -
The problem there is that the rule number an change if you add or remove rules. I was hoping you might be able to see tags on rules in the states but I don't see a way to do that. Yet...
-
@stephenw10 It works if you don't adjust the rules I have it going now.
-
/root/deviceonlinenight
#!/bin/sh pfctl -vvss | grep ', rule 79' >/dev/null res=$? if [ $res = 0 ]; then sysctl -q dev.gpio.2.led.0.pwm=1 gpioctl -f /dev/gpioc2 0 duty 200 >/dev/null sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 200 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 200 >/dev/null else sysctl -q dev.gpio.2.led.0.pwm=1 gpioctl -f /dev/gpioc2 0 duty 0 >/dev/null gpioctl -f /dev/gpioc2 1 duty 0 >/dev/null gpioctl -f /dev/gpioc2 2 duty 0 >/dev/null sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 0 >/dev/null gpioctl -f /dev/gpioc2 4 duty 0 >/dev/null gpioctl -f /dev/gpioc2 5 duty 0 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 0 >/dev/null gpioctl -f /dev/gpioc2 7 duty 0 >/dev/null gpioctl -f /dev/gpioc2 8 duty 0 >/dev/null fi
/root/deviceonlineday
#!/bin/sh pfctl -vvss | grep ', rule 79' >/dev/null res=$? if [ $res = 0 ]; then sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 100 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 100 >/dev/null else sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 0 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 7 duty 100 >/dev/null fi
-
pfctl -vvss| grep '192.168.1.11' would work great too as it would be IP address based not rule based
also
pfctl -vvss| grep -e 192.168.1.18 -e 192.168.1.11 -
Nice!
-
Kind of amazing looking when testing the deviceonlinenight.sh
It looks like the CM-5
The 90s Connection Machine
-
#!/bin/sh pfctl -vvss | grep ', rule 79' >/dev/null res=$? if [ $res = 0 ]; then sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 100 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 7 duty 0 >/dev/null gpioctl -f /dev/gpioc2 6 duty 100 >/dev/null gpioctl -f /dev/gpioc2 8 duty 100 >/dev/null else sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 0 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 0 >/dev/null gpioctl -f /dev/gpioc2 8 duty 0 >/dev/null gpioctl -f /dev/gpioc2 7 duty 7 >/dev/null fi
This will have purple and red :)
-
Another way to do this now you can run the pfctl command once and use the case command to iterate over the variable I named state
#!/bin/sh state=$( pfctl -vvss ) res=1 resb=1 case "$state" in *, rule 79*) res=0 ;; esac case "$state" in *192.168.1.11*) resb=0 ;; esac if [ $res = 0 ] && [ $resb = 0 ]; then sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 50 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 7 duty 0 >/dev/null gpioctl -f /dev/gpioc2 6 duty 50 >/dev/null elif [ $res = 0 ]; then sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 0 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 7 duty 0 >/dev/null gpioctl -f /dev/gpioc2 6 duty 50 >/dev/null elif [ $resb = 0 ]; then sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 7 duty 0 >/dev/null gpioctl -f /dev/gpioc2 6 duty 0 >/dev/null sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 50 >/dev/null else sysctl -q dev.gpio.2.led.1.pwm=1 gpioctl -f /dev/gpioc2 3 duty 0 >/dev/null sysctl -q dev.gpio.2.led.2.pwm=1 gpioctl -f /dev/gpioc2 6 duty 0 >/dev/null gpioctl -f /dev/gpioc2 7 duty 50 >/dev/null fi