Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Oppgraderer Ikea Trådfri via deCONZ


Kenneth

Anbefalte innlegg

1 minutt siden, Kenneth skrev:

hvor fikk du tak i FW ifra?

 

De lastes ned i steg 5. :) 

Sitat

Skriv nästa kommando:/usr/bin/python2.7 ikea-ota-download.py Detta kommer ladda ner IKEA Trådfri mjukvarufilerna till en speciell mapp på din Raspberry Pi där deCONZ kan sedan hitta dem.

 

Om samme script virker på Windows vet jeg ikke...

Lenke til kommentar
Del på andre sider

1 minutt siden, Kenneth skrev:

 

@ZoRaC Ok, nei det er spesifikt for "Linux" OS og fungerer ikke i windows som jeg kjører deCONZ på.

 

Ok. Firmwarefilene hentes herfra av scriptet: http://fw.ota.homesmart.ikea.net/feed/version_info.json

 

Men om du får oppdatert fra Windows, selv om du laster ned filene manuelt, det vet jeg ikke. 

Lenke til kommentar
Del på andre sider

10 hours ago, ZoRaC said:

 

De lastes ned i steg 5. :) 

 

Om samme script virker på Windows vet jeg ikke...

 

10 hours ago, Kenneth said:

 

@ZoRaC Ok, nei det er spesifikt for "Linux" OS og fungerer ikke i windows som jeg kjører deCONZ på.

 

Det virker fint å laste ned med scriptet i Windows hvis en legger in Python for Windows. Bare vær obs på at hvis du har (eller installerer) Phyton 3 så må scriptet forandres litt da det er laget for pyton 2. Ser ut som en også kan bruke deCONZ i Windows til å oppdatere, prøver på en IKEA motion sensor og den tygger seg sent avgårde.

 

Dagens fangst med "ikea-ota-download.py" på Windows 10:

ikeafw.png.b4c443462c122f57358062c20b119d2b.png

 

Oppdatert script for py3:

#!/usr/bin/env python
"""
Snipped to dowload current IKEA ZLL OTA  -
Updated for Python 3 - changed output folder to .\otafiles (Windows)
"""

import os
import json
import urllib.request

f = urllib.request.urlopen("http://fw.ota.homesmart.ikea.net/feed/version_info.json")
data = f.read()

arr = json.loads(data)

#otapath = '%s/otau' % os.path.expanduser('~')

otapath= '.\otafiles'

if not os.path.exists(otapath):
	os.makedirs(otapath)

for i in arr:
	if 'fw_binary_url' in i:
		url = i['fw_binary_url']
		ls = url.split('/')
		fname = ls[len(ls) - 1]
		path = '%s\%s' % (otapath, fname)

		if not os.path.isfile(path):
			urllib.request.urlretrieve(url, path)
			print(path)
		else:
		    print('%s already exists' % fname)

 

Endret av backspace
Updated with py script
  • Like 2
Lenke til kommentar
Del på andre sider

  • 2 uker senere...
2 hours ago, Kenneth said:

@backspace Kånge, dette må jeg teste :) Mulig jeg må spørre litt mer da jeg ikke kjenner pyton.

 

 Trenger ikke kunne så mye om python her, scriptet brukes kun for å laste ned FW filene. Jeg installerte bare siste Py 3 windows versjon rett frem, ticket av for update av PATH ved installasjons wizard. Da var det bare  å kjøre "py ikea-ota-download.py" i et command vindu og så får du filene der hvor du har definert "otapath=" i scriptet. Jeg oppdaterte manuelt en "IKEA motion sensor" via deCONZ > Plutgins > STD OTAU Plugin. Den tok veldig lang tid, men ble oppdatert til slutt. Skulle prøve en lyspære men den hadde siste versjon så fikk ikke prøvd det. Ellers må også deConz og firmware for Conbee/RasBee være av nyere dato for at det skal virke.

Lenke til kommentar
Del på andre sider

  • 5 måneder senere...

Tok litt tid for jeg har fått testet dette noe vesentlig.

Jeg har fått lastet ned OTA filene til Ikea og lagt de under deconz/otau men når jeg forsøker oppdaterer skjer det ingenting.

Ved å søke litt på nett ser jeg at de aller fleste som oppdaterer ikea med deconz får .zigbee filer, noe som det ser ut som at deconz konverterer selv.

Men dette skjer ikke hos meg..

 

Forslag?

Lenke til kommentar
Del på andre sider

7 minutter siden, Kenneth skrev:

 

Næh, jeg har jo ikke noe Phyton stæsj på windows maskinen, de har jeg lastet ned manuelt og lagt i outa katalogen. 

Så filene har jeg..

 

Men siden du sier at filene ser ut til å være i «feil» format, kanskje det scriptet gjør noe mer med filene enn å bare laste dem ned? Hvorfor installerer du ikke bare Python på Windows-maskina?

Lenke til kommentar
Del på andre sider

21 minutes ago, ZoRaC said:

 

Men siden du sier at filene ser ut til å være i «feil» format, kanskje det scriptet gjør noe mer med filene enn å bare laste dem ned? Hvorfor installerer du ikke bare Python på Windows-maskina?

 

Det skal sies at jeg har testet med python, men scriptet feilet å kjøre. 

Jeg har null snøring på python, på det nivået at jeg ikke vet hvordan jeg egentlig skal eksekvere skriptet.

Men jeg fikk det til på ett vis, selv om det er lenge siden jeg forsøke, men likevel stoppet skriptet med en error. 

Ikke at jeg husker i farten hva det var.


En kollega kjører Deconz i en container på synology NAS. Han har lastet ned de samme filene og der ble de "konverter" til .zigbee av deconz eller "noe" annet.

Han viste ikke hvorfor det skjedde, men siden det ikke skjer hos meg antar jeg det er noe med windows eller noe annet galt jeg gjør.

Hadde jeg funnet en bruksanvisning som viste hvordan dette skulle funke på windows hadde jeg nok vært litt nærmere.

 

Antar jeg ikke er den eneste som kjører Deconz i windows der ute.

Endret av Kenneth
Lenke til kommentar
Del på andre sider

11 minutes ago, ZoRaC said:

 

Scriptet funker bare på 2.x. Med 3.x må du bruke scriptet som @backspace har lagt ut lengre opp i tråden her. 


Ok, jeg kikket litt for å forsøke friske opp minnet mitt.

 

Dette er scriptet:

#!/usr/bin/env python
"""
Snipped to dowload current IKEA ZLL OTA  -
Updated for Python 3 - changed output folder to .\otafiles (Windows)
"""

import os
import json
import urllib.request

f = urllib.request.urlopen("http://fw.ota.homesmart.ikea.net/feed/version_info.json")
data = f.read()

arr = json.loads(data)

#otapath = '%s/otau' % os.path.expanduser('~')

otapath= 'C:\Program Files (x86)\deCONZ\otau'

if not os.path.exists(otapath):
    os.makedirs(otapath)

for i in arr:
    if 'fw_binary_url' in i:
        url = i['fw_binary_url']
        ls = url.split('/')
        fname = ls[len(ls) - 1]
        path = '%s\%s' % (otapath, fname)

        if not os.path.isfile(path):
            urllib.request.urlretrieve(url, path)
            print(path)
        else:
            print('%s already exists' % fname)

 

Python er installert her:

C:\Phyton3

 

Kommando

C:\Phyton3.exe ikea-ota-download.py

 

Error:

C:\Python3>python.exe ikea-ota-download.py
  File "ikea-ota-download.py", line 34
    print('%s already exists' % fname)
                                      ^
SyntaxError: invalid character in identifier

Endret av Kenneth
Lenke til kommentar
Del på andre sider

12 timer siden, Kenneth skrev:

Error:

C:\Python3>python.exe ikea-ota-download.py
  File "ikea-ota-download.py", line 34
    print('%s already exists' % fname)
                                      ^
SyntaxError: invalid character in identifier

 

Hmm, da må nok noen som kan Python hjelpe deg. Kanskje @backspace ser hva feilen er?

Lenke til kommentar
Del på andre sider

Er ingen Python expert, men du kan jo bare laste ned Python 2 og bruke original scriptet for å se om det virker. Er på ferie så har ikke PC tilgjengelig så får ikke sjekket det opp. 

 

Men scriptet laster bare ned filene, gjør ikke noe mod av filene i denne prosessen. Du ser jo ca hva filesize er for filene i screen capture lengre opp i tråden her så mulig filene er ok som du lastet ned manuelt.

 

Endret av backspace
Lenke til kommentar
Del på andre sider

  • 7 måneder senere...
  • 4 måneder senere...

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.