evanrich / py-eagle-mqtt Goto Github PK
View Code? Open in Web Editor NEWPython based Docker for Eagle to MQTT reader
License: Other
Python based Docker for Eagle to MQTT reader
License: Other
If there is any interest in this, I can add the following blocks:
MessageCluster
DeviceInfo
NetworkInfo
on my PG&E meter, these are the only additional things I get, and they contain the following.
MessageCluster
<MessageCluster>
<DeviceMacId>redacted</DeviceMacId>
<MeterMacId>redacted</MeterMacId>
<TimeStamp></TimeStamp>
<Id></Id>
<Text></Text>
<Priority></Priority>
<StartTime></StartTime>
<Duration></Duration>
<ConfirmationRequired>N</ConfirmationRequired>
<Confirmed>N</Confirmed>
<Queue>Active</Queue>
<Port>/dev/ttySP0</Port>
</MessageCluster>
DeviceInfo
<DeviceInfo>
<DeviceMacId>redacted</DeviceMacId>
<InstallCode>redacted</InstallCode>
<LinkKey>redacted</LinkKey>
<FWVersion>1.4.48 (6952)</FWVersion>
<HWVersion>1.2.5</HWVersion>
<ImageType>0x1301</ImageType>
<Manufacturer>Rainforest Automation, Inc.</Manufacturer>
<ModelId>Z109-EAGLE</ModelId>
<DateCode>redacted</DateCode>
<Port>/dev/ttySP0</Port>
<Port>/dev/ttySP0</Port>
</DeviceInfo>
Network Info
<NetworkInfo>
<DeviceMacId>redacted</DeviceMacId>
<CoordMacId>redacted</CoordMacId>
<Status>Connected</Status>
<Description>Successfully Joined</Description>
<ExtPanId>redacted</ExtPanId>
<Channel>25</Channel>
<ShortAddr>redacted</ShortAddr>
<LinkStrength>0x64</LinkStrength>
<Port>/dev/ttySP0</Port>
</NetworkInfo>
Let me know if you are interested in this and I'll work to add it
Hi,
I was trying to connect to a MQTT server using that required a username and password. After a bunch of troubleshooting I discovered that MQTT_PASSWORD should be MQTT_PASS as defined in py-eagle-mqtt/Docker/src/conf/broker.py line 21.
Either the broker.py should be updated to read the environment variable MQTT_PASSWORD or the documentation should be updated. I'd be happy to create a pull request if you indicate which way you want to go.
Price info was missing from the original code. Should add it in so that price/kWh can be tracked
HI. Just noticed this in my logs. Data is showing up on the eagle cloud website. no problems there. Even price!
Changes:
I moved to the 200 series eagle about a month ago. and it has generally been fine (after setting it up correctly). I did add a second instance of your excellent container so I have redundancy. Both show this error.
LMK your thoughts whenever you have a moment.
So far:
Original error.
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/bottle.py", line 868, in _handle
return route.call(**args)
File "/usr/local/lib/python3.8/site-packages/bottle.py", line 1748, in wrapper
rv = callback(*a, **ka)
File "/app/src/bin/tHome-eagle.py", line 80, in root_post
log.info( "Read packet: %s" % obj.name )
Now seeing this error with latest tag:
Traceback (most recent call last):
File "/app/src/bin/tHome-eagle.py", line 114, in <module>
client = T.broker.connect( c.configDir, log )
File "/app/src/python/tHome/broker/connect.py", line 37, in connect
client.connect( cfg.host, cfg.port, cfg.keepAlive )
File "/usr/local/lib/python3.8/site-packages/paho/mqtt/client.py", line 937, in connect
return self.reconnect()
File "/usr/local/lib/python3.8/site-packages/paho/mqtt/client.py", line 1071, in reconnect
sock = self._create_socket_connection()
File "/usr/local/lib/python3.8/site-packages/paho/mqtt/client.py", line 3522, in _create_socket_connection
return socket.create_connection(addr, source_address=source, timeout=self._keepalive)
File "/usr/local/lib/python3.8/socket.py", line 808, in create_connection
raise err
File "/usr/local/lib/python3.8/socket.py", line 796, in create_connection
sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused
I ran TCPDump against the Eagle IP address: Sample of the activity.
So, I sense they are talking? I can't tell if this points to any sort of problem? The
`
09:19:54.652778 IP 172.17.0.10.22042 > eagle-005792.local.39196: Flags [P.], seq 1:18, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 17
09:19:54.652778 IP 172.17.0.10.22042 > eagle-005792.local.39196: Flags [P.], seq 1:18, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 17
09:19:54.652808 IP Agro.home.22042 > eagle-005792.local.39196: Flags [P.], seq 1:18, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 17
09:19:54.652814 IP Agro.home.22042 > eagle-005792.local.39196: Flags [P.], seq 1:18, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 17
09:19:54.652818 IP Agro.home.22042 > eagle-005792.local.39196: Flags [P.], seq 1:18, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 17
09:19:54.652942 IP 172.17.0.10.22042 > eagle-005792.local.39196: Flags [FP.], seq 18:156, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 138
09:19:54.652942 IP 172.17.0.10.22042 > eagle-005792.local.39196: Flags [FP.], seq 18:156, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 138
09:19:54.652960 IP Agro.home.22042 > eagle-005792.local.39196: Flags [FP.], seq 18:156, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 138
09:19:54.652965 IP Agro.home.22042 > eagle-005792.local.39196: Flags [FP.], seq 18:156, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 138
09:19:54.652967 IP eagle-005792.local.39196 > Agro.home.22042: Flags [.], ack 18, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.652968 IP Agro.home.22042 > eagle-005792.local.39196: Flags [FP.], seq 18:156, ack 740, win 84, options [nop,nop,TS val 416155856 ecr 105070], length 138
09:19:54.652967 IP eagle-005792.local.39196 > Agro.home.22042: Flags [.], ack 18, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.652967 IP eagle-005792.local.39196 > 172.17.0.10.22042: Flags [.], ack 18, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.652986 IP eagle-005792.local.39196 > 172.17.0.10.22042: Flags [.], ack 18, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.652990 IP eagle-005792.local.39196 > 172.17.0.10.22042: Flags [.], ack 18, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.653451 IP eagle-005792.local.39196 > Agro.home.22042: Flags [F.], seq 740, ack 157, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.653451 IP eagle-005792.local.39196 > Agro.home.22042: Flags [F.], seq 740, ack 157, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.653451 IP eagle-005792.local.39196 > 172.17.0.10.22042: Flags [F.], seq 740, ack 157, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.653469 IP eagle-005792.local.39196 > 172.17.0.10.22042: Flags [F.], seq 740, ack 157, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.653472 IP eagle-005792.local.39196 > 172.17.0.10.22042: Flags [F.], seq 740, ack 157, win 3650, options [nop,nop,TS val 105070 ecr 416155856], length 0
09:19:54.653486 IP 172.17.0.10.22042 > eagle-005792.local.39196: Flags [.], ack 741, win 84, options [nop,nop,TS val 416155857 ecr 105070], length 0
09:19:54.653486 IP 172.17.0.10.22042 > eagle-005792.local.39196: Flags [.], ack 741, win 84, options [nop,nop,TS val 416155857 ecr 105070], length 0
09:19:54.653507 IP Agro.home.22042 > eagle-005792.local.39196: Flags [.], ack 741, win 84, options [nop,nop,TS val 416155857 ecr 105070], length 0
09:19:54.653512 IP Agro.home.22042 > eagle-005792.local.39196: Flags [.], ack 741, win 84, options [nop,nop,TS val 416155857 ecr 105070], length 0
09:19:54.653516 IP Agro.home.22042 > eagle-005792.local.39196: Flags [.], ack 741, win 84, options [nop,nop,TS val 416155857 ecr 105070], length 0
^C
199 packets captured
303 packets received by filter
104 packets dropped by kernel
`
need to convert this to python3 since 2.7 won't be supported forever. Most of the work is already done, just creating this to track.
File Docker/Dockerfile contains a typo in the base image - "alpine" is written "apline". Correcting this typo would allow me to use docker-compose to build the image direct from github. I have created a pull request with this small change.
The bot created this issue to inform you that pyup.io has been set up on this repo.
Once you have closed it, the bot will open pull requests for updates as soon as they are available.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.