Open gershte opened 7 years ago
I'll see if I can get that written up for you. What is your technical competency? It will help me determine how in depth I need to write this. This isn't a item I'd be able to help with overly.
On Mar 21, 2017 11:23 AM, "gershte" notifications@github.com wrote:
No detailed downgrading instruction provided
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/bren1818/TCPFirmwareRestore/issues/1, or mute the thread https://github.com/notifications/unsubscribe-auth/ACDCH8a6hjUTz1qHpk-J1GbaZRn1MrVcks5rn-togaJpZM4Mj-CI .
I am not so bad with technical part. I am not a computer programmer but keeping an Asterisk Linux server in my basement and using in for more than 10 years. But I think lot of users would appreciate your detailed manual in the future because TCP bulbs work with Smartthings again! https://community.smartthings.com/t/release-tcp-connected-bulbs-work-with-smartthings-again/78817
Thank you in advanced!
@gershte I have written some instructions here: https://github.com/bren1818/TCPFirmwareRestore/blob/master/Instructions.docx
Given differences in routers, and software etc, I cant write a guide for every scenario, but hopefully this will get you on the right track.
I'm glad these files are helping people! I had no idea haha. I was trying to write some code for SmartThings, but since I dont have a hub, I couldn't get an API key, and I wasn't going to shell out for just a hub when I don't need it.
Best of luck!
You are the Great!
@gershte Happy to help out. Hopefully it works for you!
Not yet! Work in progress. Could you describe little bit more about setting up DNS records? My DNS server works. Log is showing lot of activity. But pyton window is dead. Nothing getting there...
Just installing the DNS manager on your local machine, will only have your local machine use it. All a DNS server does really is determine what address resolves to which ip, and caches that. IE, when you type in google in your address bar, the DNS look up sees that google is 172.217.1.110 and routes the request there. This is why you need to make it so that your router (which your other devices are connected to) points to your computer and lets your computer decide where each address routes to.
Since you override the update.greenwavereality.com and update.greenwavereality.eu in your host file on the local machine, the dns server application thinks that your computer is that address. Therefor when your bridge goes to "the internet" looking for updates, it finds that the update url is your computer, versus some other server out there. Since you have the python application running, it answers the reqest of the bridge and sends the 'update'.
Bridge --> Router -->DNS Lookup (Your PC) -->Python App
Sometimes DNS records get cached so, you may want to do an ipconfig /flushdns on your local machine. Also if you're using the simple dns application set the ttl (time to live) to a lower number. It will increase the likelihood of your bridge finding it.
Hope that helps! It took me a few tries. In - fact, you can see some of my posts here: https://github.com/hypergolic/greeenwave_firmware/issues/2 https://github.com/hypergolic/greeenwave_firmware/issues/1
No luck.... Python server is running, DNS server log shows requests from the bridge but no a sign of activity in the CMD window....
Try power cycling the bridge and holding the sync button that may help...
On Mar 30, 2017 10:18 AM, "gershte" notifications@github.com wrote:
No luck.... Python server is running, DNS server log shows requests from the bridge but no a sign of activity in the CMD window....
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bren1818/TCPFirmwareRestore/issues/1#issuecomment-290424873, or mute the thread https://github.com/notifications/unsubscribe-auth/ACDCHziRnnL1BLxAlYt-I6ANDegAMsF5ks5rq7mygaJpZM4Mj-CI .
Trust me... I have tried everything.
@gershte I feel your frustration, I totally struggled to get it to go too. Here are some simple things to troubleshoot.
First off - if you go to https://greenwavereality.com or https://greenwavereality.eu on your computer hosting the python script, do you see it show up as a hit on the python server?
You have to make sure that you have the greenwavereality.com and greenwavereality.com pointing to your localhost (127.0.0.1) in your host file. You should do the update as well.
To ensure the DNS application is up and running and that your router is routing traffic to your machine, on another computer in your house, or tablet or whatever try accessing or pining greenwavereality.com / greenwavereality.eu. In theory it should return to you the IP of your computer running your python server.
Make sure you've rebooted your computer and router and cleared your DNS cache. In your router settings and in the Smart DNS make sure the TTL/lease time is small like 5 seconds so lookups happen more frequently.
Lastly, have you tried disconnecting your internet altogether ?
What type of router are you using?
Best of luck,
Bren
I am also having trouble getting the bridge talk to my python server.
I suspect my DNS server setup is not correct. The setup of the SimpleDNS Plus was a pretty vague in the instructions. Having never used this tool I couldn't figure out how to create records as shown in the document. However, following this http://support.simpledns.com/kb/a59/basic-dns-server-configuration-example.aspx helped a bit. I still don't think it is working correctly though. I see dns requests from the bridge, but it doesn't look like it is repsonding properly. Here's a snippet from SimpleDNS activity log:
01:50:39 Request from 192.168.1.16 for A-record for tcp.greenwavereality.com 01:50:39 Sending reply to 192.168.1.16 about A-record for tcp.greenwavereality.com: 01:50:39 -> Header: Non-Existent Domain 01:50:39 -> Authority: SOA-record for greenwavereality.com = asus-windows10 [2017051702]
(192.168.1.16 is the tcp bridge, asus-windows10 is my PC)
Otherwise, I verified the python server is listening (If I go to greenwavereality.com it shows folder contents).
So, I noticed that I must use the exact IP in my hosts file as in the python script. Ie, if I use 127.0.0.1 in hosts but 192.168.1.16 in python script, then browsing to greewavereality.com no longer hits the python server. Which one should I be using?
I also see a ton of dns requests for tcp.greenwavereality.com but very rarely any requests for update.greenwavereality.com. Any idea how to force an update request? I tried clicking the Sync button but that didn't seem to do anything.
hi @inahas - A couple things which will hopefully help you out In your host file you should be re-writing a few domains
127.0.0.1 greenwavereality.eu 127.0.0.1 greenwavereality.com 127.0.0.1 update.greenwavereality.com 127.0.0.1 update.greenwavereality.eu
(127.0.0.1 is your local host so on your computer running the dns / python script, it should be 127.0.0.1) on your router however, you want to point your DNS to your computer which in your case is 192.168.1.16
With the SimpleDNS (you dont have to use it, I just found it worked for me) you want to have matching records for greenwavereality.eu and greenwavereality.com - I think greenwavereality.eu is still active which is why some bridges re-update.
Make sure on your router you've pointed its DNS to the computer hosting the files and running the Simple DNS application. I'd also add firewall rules on it to not allow greenwavereality.com or greenwavereality.eu to go outside the network.
Then on your local computer open up command prompt and flush your dns (ipconfig /flushdns) also it wouldn't hurt to reboot your router.
once everything is up and running again, unplug the TCP bridge (power). Then while holding down the sync button, plug it back in. It will take a few seconds, but you should see it try to connect to the python script.
Hope that helps, let me know how it goes
If you try to ping the addresses, you should get:
Server Running
Now if you access the browser path in the update.php ie: https://update.greenwavereality.eu/roxy/download/1349139456/rootfs.bin
You should get something like this:
If you allow the exception and click continue, you should see the server respond pretty quickly like so:
Now in theory, you should be able to flash your bridge by unplugging the power, holding the sync button and plugging the power back in. Keep holding the sync button.
I have heard though that some bridges will not flash. Its also a finicky process to begin with. Hopefully you get it going...
OK. Finally it worked! This is definitely not for the faint of heart :( Here's what worked for me:
Click on Quick Zone Wizard; fill in the zone name (eg. greenwavereality.com); put in my IP in Web server IP (eg. 192.168.1.13); Save.
Or did I?
I still wasn't getting any hits on my httpserver. Then I noticed something. The bridge was asking for update.greenwavereality.com.austin.rr.com! I have no clue why. So I created another zone for update.greenwavereality.com.austin.rr.com. Now I started seeing hits in the https server. But they were all the same GETs for /update.php and nothing else... Further inspection of the logs it appeared that it was trying to contact update.greenwavereality.eu.austin.rr.com as well! So I added another record for that.
Only then it grabbed the binary! Downgraded to 2.0.47. Hurray....
Thank you so much for the instructions. I think the SimpleDNS part can use some more details and more screenshots would be helpful as well, but they were invaluable.
Now, before I plug everything back, I need a surefire way to block this thing access to the internet. I was able to SSH into the bridge and browsed around. Is there anything that can be done to permanently sever all future upgrade requests?
Fascinating, thank you for sharing. No this job is not for the faint of heart haha. update.greenwavereality.com.austin.rr.com and update.greenwavereality.com.austin.rr.eu eh? Do you know what version of the bridge you have? I wonder if Greenwave pushed an update to change the DNS servers, it is possible. This may explain some of the issues other users have had. Any-how fantastic work getting it going!
There is no good luck on my side! That is what I did.
a) All four addresses are pointing to localhost. This method did not work. I could not get hit on Python Server. b) Pointing them to IP address of my PC where the Python Server is running helped me getting hits when I have typed https://update.greenwavereality.eu/roxy/ in my browser address line.
I did not have any luck in both cases. I can see DNS requests from my gateway in the DNS Server log files.
But I can not see any hits in the Python Server window....
Any ideas what may be wrong?
Looks like you have everything down pat. Do you have your home router's DNS pointing to your computer? An easy way to test if things are routing is (on another device in your house connected to the same router) try pinging the greenwave address and see if it returns the IP of your machine. It's possible that the router/bridges haven't updated their DNS cache yet. Rebooting them usually does the trick.
On a Windows machine you can do ipconfig /flushdns to clear the DNS cache.
It's a finicky process no doubt. Read some of the comments here. Others have struggled and you it to go eventually, but it can be a pain. It's not necessarily worth it to flash the bridges in my opinion, but depends on what you are wanting to do.
Best of luck
On Jun 3, 2017 2:46 PM, "gershte" notifications@github.com wrote:
There is no good luck on my side! That is what I did.
- Host File. I have tried two versions.
[image: hosts] https://cloud.githubusercontent.com/assets/25707886/26756130/0efebd62-486a-11e7-9875-6e46c3939f9c.jpg
a) All four addresses are pointing to localhost. This method did not work. I could not get hit on Python Server. b) Pointing them to IP address of my PC where the Python Server is running helped me getting hits when I have typed https://update.greenwavereality.eu/roxy/ in my browser address line.
[image: screenshot 8] https://cloud.githubusercontent.com/assets/25707886/26756168/a4742c10-486a-11e7-9265-9364b56e1005.jpg
- Python Server is up, running and getting hits from my browser.
[image: screenshot 6] https://cloud.githubusercontent.com/assets/25707886/26756175/b543d4aa-486a-11e7-81aa-4e49d4945bbe.jpg
[image: screenshot 7] https://cloud.githubusercontent.com/assets/25707886/26756177/bee0623a-486a-11e7-8e83-efd0e1d8d108.jpg
[image: screenshot 9] https://cloud.githubusercontent.com/assets/25707886/26756187/d09415b2-486a-11e7-87d6-3d7dd1f0b2ae.jpg
- DNS server is running. It has three DNS records are set up. I have tried two version of DNS records sets. The first set pointed to localhost address, as you can see on the screenshot, and the second one pointed to the PC IP address 192.168.1.22.
[image: screenshot 1] https://cloud.githubusercontent.com/assets/25707886/26756191/e218aabe-486a-11e7-89e1-e7ce87efb7bd.jpg [image: screenshot 2] https://cloud.githubusercontent.com/assets/25707886/26756192/e3b6c75c-486a-11e7-925c-b6af7fc4c875.jpg [image: screenshot 3] https://cloud.githubusercontent.com/assets/25707886/26756193/e5a612de-486a-11e7-9979-0ad10685a8aa.jpg
[image: screenshot 10] https://cloud.githubusercontent.com/assets/25707886/26756194/e8de6442-486a-11e7-8ee8-b1778ac0f56a.jpg [image: screenshot 12] https://cloud.githubusercontent.com/assets/25707886/26756196/efda59c2-486a-11e7-8030-c6c4dcf00802.jpg [image: screenshot 11] https://cloud.githubusercontent.com/assets/25707886/26756195/eb6c8766-486a-11e7-9be3-ca81ba1843aa.jpg
I did not have any luck in both cases. I can see DNS requests from my gateway in the DNS Server log files.
[image: screenshot 14] https://cloud.githubusercontent.com/assets/25707886/26756207/21f89dba-486b-11e7-9c71-558f59ccb443.jpg
[image: screenshot 13] https://cloud.githubusercontent.com/assets/25707886/26756211/2857b8b2-486b-11e7-81bb-4ba892f81953.jpg
But I can not see any hits in the Python Server window....
Any ideas what may be wrong?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/bren1818/TCPFirmwareRestore/issues/1#issuecomment-305993977, or mute the thread https://github.com/notifications/unsubscribe-auth/ACDCH3QcJgZ3h3TwoYNiokYbpkdgtsI1ks5sAankgaJpZM4Mj-CI .
No detailed downgrading instruction provided