diff --git a/README.md b/README.md index 10f1184c5ebe8f37f4b1e053cf7edb1cdcd3a61a..2120976beb2abf35f3b6c752def0b105a0fd6e28 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ If everything worked, a line should be added to skyglow.log: #date moon[mlx] moon[dmx] lightpollution[mlx] 2020-07-21 15:00:00 0.05 11 [15, 54, 4, 19, 0, 1, 5, 0, 40, 12, 123, 123] ``` -The indices of the list containing the lightpollution valus refer to the number of the ecounits. +The indices of the list containing the lightpollution values refer to the number of the ecounits. ##Setup## diff --git a/ola_recv_dmx.py b/ola_recv_dmx.py new file mode 100644 index 0000000000000000000000000000000000000000..6f1abdf100152a7c7d2e34ae562bbc9e11647963 --- /dev/null +++ b/ola_recv_dmx.py @@ -0,0 +1,66 @@ +#!/usr/bin/env python +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Library General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# +# ola_recv_dmx.py +# Copyright (C) 2005 Simon Newton + +"""Receive DMX data.""" + +import getopt +import textwrap +import sys +from ola.ClientWrapper import ClientWrapper + +__author__ = 'nomis52@gmail.com (Simon Newton)' + + +def NewData(data): + print(data) + + +def Usage(): + print(textwrap.dedent(""" + Usage: ola_recv_dmx.py --universe <universe> + + Display the DXM512 data for the universe. + + -h, --help Display this help message and exit. + -u, --universe <universe> Universe number.""")) + + +def main(): + try: + opts, args = getopt.getopt(sys.argv[1:], "hu:", ["help", "universe="]) + except getopt.GetoptError as err: + print(str(err)) + Usage() + sys.exit(2) + + universe = 1 + for o, a in opts: + if o in ("-h", "--help"): + Usage() + sys.exit() + elif o in ("-u", "--universe"): + universe = int(a) + + wrapper = ClientWrapper() + client = wrapper.Client() + client.RegisterUniverse(universe, client.REGISTER, NewData) + wrapper.Run() + + +if __name__ == "__main__": + main()