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

Marhil

Medlemmer
  • Innlegg

    527
  • Ble med

  • Besøkte siden sist

  • Dager vunnet

    7

Alt skrevet av Marhil

  1. Du kan ta utgangspunkt i ord som som ikke har så mangre rimord, kanskje? Pølse eller eple... høres jo bra ut å rope ut i stua http://rimord.com
  2. Flott, satt akkurat og fundere på annonsering over Chromecast hvis toget mitt er forsinket. Låner litt kode av deg
  3. Eller kjøpe en slik https://m.aliexpress.com/item/2027467349.html?aff_click_id=0bf2fe4ddf7646858ec61243296743cb-1481138372529-00368-UneMJZVf&aff_platform=y#autostay Og koble til en Fibaro universal sensor på signalet fra tipping bucket. Evt den billige Clas Ohlson dørsensoren som også tilbyr en DRY krets.
  4. Nei, den så interessant ut. Skal testes Tror ikke jeg kan skylde på RPi, for den spiller ikkeav lyden, bare tilbyr nedlasring av mp3 til Chromecasten.
  5. Jeg har lekt meg med Google TTS, og det viste seg å være ganske enkelt å hente ned en mp3-fil med tale ved å bruke Pythons gTTS-pakke. Tidligere kunne man bare bruke en Google URL for å laste ned tale, men nå ser det ut som det er lagt inn CAPTCHA og at den er begrenset med 100 tegn. Jeg har ikke tittet i koden til gTTS, så jeg vet ikke hvordan biblioteket omgår dette, men det fungerer i alle fall bra. Siden det ikke er så spennende å laste ned en mp3 og spille av på PCen, så ønsket jeg å kjøre lyden over Chromecast. For dette finnes det også et bibliotek for i Python, som heter pychromecast. Det er det samme som Home Assistant bruker (tror det er samme forfatter av begge). Det er omtrent like enkelt å bruke som gTTS og gir deg vel egentlg full kontroll over Chromecast. Jeg er en novise når det gjelder Python, så dette gikk nok ganske mye saktere enn jeg håpet på, men etter en kveld har jeg en fungerende løsning. Jeg har 1 stk python-fil på min RPI3 som gjør følgende når den fyres opp: 1. Starter en mikroskopisk HTTP-server (Flask), for å ha et grensesnitt i nettverket å kalle på 2. Laget en del "rest-aktige" tjenester på denne 3. Serveren tar i mot kallet over HTTP, kontakter Google TTS og laster ned mp3 4. Serveren sender så lyden til en av de to Chromecastene mine. 5 .Serveren returnerer en slags jalla-JSON som forteller om resultatet. Følgende tjenester har jeg foreløpig: http://server/device/setactive/DEVICE1 (eller 2) #Dette kallet lar meg velge Chromecast-enhet http://server/cast/say/no/rottefella er utløst #Dette kallet laster ned mp3 og sender til aktiv Chromecast-enhet. /no/ er for norsk språk. http://server/media/mp3 #Dette er URLen som chromecast bruker for å laste ned mp3-filen http://server/showdevice/ #Viser metainfo om enheten. Vet ikke hva jeg skal med denne, men det var det første jeg gjorde http://server/showstatus/ #Viser tilstanden/statusen til aktiv Chromecast. Om den spiller, osv. Nå her jeg koblet den opp mot bevegelsessensor og lux-meter for å teste. Familien begynner å bli litt lei av meldinger av typen "Det er fjerde null lux på kjøkkenet" (Google er dårlig på oversetting av engelske desimaltegn ) Så hvordan funker dette? Litt for tregt... Det tar noen sekunder å få chromecast til å spille av mp3-fila, dessverre. Noen ganger henger heller ikke Chromecast helt med. Det hender at lyden kommer på midt i det andre ordet i setningen, f.eks. Men for å lese opp status om vær, forsinkede tog osv, vil det nok funke. Python er genialt, alt dette er gjort på 80 linjer kode. Nå er jeg så lite dreven på Python at jeg har tatt en del shortcuts. Det "skulle bare funke". Så får vi ta oppussingen etterhvert, de vil garantert være behov for det Hva gjenstår? Vel, bortsett fra oppussningen, så har jeg ikke sett på multiroom ennå. Jeg har heller ingen metode for å justere volum. Her er koden: from __future__ import print_function from flask import Flask, send_file, jsonify from gtts import gTTS import time import pychromecast import io import os # Create app app = Flask(__name__) app.config['SERVER'] = 'http://192.168.100.22' app.config['PORT'] = '1337' app.config['DEBUG'] = True app.config['DEVICE1'] = 'ChromecastAudioStua' app.config['DEVICE2'] = 'Chromecast' mc = None cast = None @app.route("/") def hello(): ret="<a href=\"" + app.config['SERVER'] + ":" + app.config['PORT'] +"/device/setactive/DEVICE1\">Activate " + app.config['DEVICE1'] + "</a></br>\n" + "<a href=\""+ app.config['SERVER'] + ":" + app.config['PORT'] +"/device/setactive/DEVICE2\">Activate " + app.config['DEVICE2'] + "</a></br>\n" return ret @app.route("/cast/showdevice") def device(): if cast is None: return jsonify(message="No active device", success="true") app.logger.debug(cast.device) return jsonify(message=cast.device, success="true") @app.route("/cast/showstatus") def status(): return jsonify(success="true", message=cast.status) @app.route("/cast/say/<string:language>/<string:message>") def say(message, language): if mc is None: return jsonify(success="false", message = "No active device found") tts = gTTS(text=message, lang=language) tts.save("temp.mp3") mc.play_media(app.config['SERVER'] +':'+ app.config['PORT'] +'/media/mp3', 'audio/mpeg') app.logger.debug("Playing sound from " + app.config['SERVER'] +':'+ app.config['PORT']) return jsonify(success="true", message = "") @app.route("/media/mp3") def getmp3(): if not os.path.isfile("./temp.mp3"): return jsonify(success="false", message = "File does not exist") with open("temp.mp3", mode='rb') as file: data = file.read() app.logger.debug("Sending Mp3") return send_file(io.BytesIO(data), attachment_filename="temp.mp3", mimetype="audio/mpeg3") @app.route("/device/setactive/<string:deviceno>") def setActiveDevice(deviceno): global cast cast = None cast = pychromecast.get_chromecast(friendly_name=app.config[deviceno]) if cast is None: return jsonify(message="Unable to find device: " + app.config[deviceno] + ". Is it turned off?", success="false") cast.wait() global mc mc = cast.media_controller return jsonify(success="true", message=app.config[deviceno]) if __name__ == "__main__": app.run(debug=app.config['DEBUG'], host='0.0.0.0', port=int(app.config['PORT']))
  6. Marhil

    RG-11 Regnsensor

    Har noen fått lekt med sensorene sine ennå? Det hadde vært morsomt om noen skrev noen ord om bruk og oppkobling. Har alle brukt den eminente guiden fra @psv021 , eller har noen gjort ting annerledes?
  7. Marhil

    Google home

    De har den fortsatt, men de har lagt på CAPTCHA eller hva det nå heter. I tillegg mener jeg at de har begrenset den til maks 100 tegn.
  8. Marhil

    Google home

    *Litt* sent å svare på denne, men Testet ut Google TTS med Python-bliblioteket gTTS. Det er rimelig rett frem: #Installere pakken med Pythons pakkemanager: sudo pip3 install gTTS #starte Python command shell: python3 #importere klassen >>> from gtts import gTTS #Kalle på Google TTS >>> tts = gTTS(text='Dette er en test, er det mulig å skrive så lang tekst og få den lastet ned, tro?', lang='no') #Lagre snakk som mp3 >>> tts.save("/home/marius/test.mp3") Ser ut som den støtter ubegrenset mengde tekst: "It allows for unlimited lengths of spoken text by tokenizing long sentences where the speech would naturally pause."
  9. I dag har jeg laget en billig lekkasjesensor. Brukte dørsensor fra Clas (249,-) og et par ledningsstumper. Har testet med vann og det funker tilsynelatende helt ypperlig.
  10. Ok, takker (jeg så ikke at diskusjonen hadde enda en side før jeg postet).
  11. Har du mer info om implantatet? Hvor kjøpte du det (og kommer du deg inn i f.eks USA med det? :-) ) Har det både RFID og NFC? Har noen som kanskje kan bruke skalpellen for meg...
  12. Er ikke så godt bevandret innefor dette, men ser at Tronika har "full pakke" værstasjon til 2500: https://www.tronika.no/no/zwave-klimastyring/976-vaerstasjon-zmnhzd1.html?search_query=vaerstasjon+z-wave&results=1 Ellers kan du bruke en rimelig en fra Oregon (433): https://www.amazon.com/Oregon-Scientific-PCR800-Wireless-Professional/dp/B004LZGKKO/ref=cm_cr_arp_d_product_top?ie=UTF8
  13. Løsning nr 3 kan være å skaffe deg en tipping bucket regnmåler å sette før dunken. Da kan du bare la vannet gå rett i sluket, etter regnmåler. Oregon (433) eller Netatmo (http)? Litt sent tips, kanskje, side du allerede har bestilt
  14. Ok, takk for utfyllende svar! Trodde du brukte nexa-releet til å måle effekt, og fikk det ikke til å gå opp ;-)
  15. Hvordan fungerer dette? Spør fordi jeg er nysgjerrig... Har du kontaktor på kursen I sikringsskapet? Hvordan måler du effekt når LCMR 1000 vel takler kun 1000 watt? Anbefalte el-folka kontakter som alternativ til å dra ut kontakten?
  16. Jeg bruker denne: http://m.clasohlson.com/no/Z-wave-TKB-TZ68G-fjernstrømbryter-på-av/36-5741 Den skal takle last opp til 3,5kw elementet mitt er på 2,3kw og den blir ikke mer enn litt lunken.
  17. Zipato sier se er i sluttfasen av testing/integrasjon av Doorbird via SIP, så noe støtte er det. I følge rykter fungerer LAN SIP, men ikke cloud SIP ennå.
  18. Ja, det er jo greit, men skulle gjerne også sett forskjellen I forbruk hvis jeg skrur den av noen timer. Det er jo bare å lage en enkel schedule det, så kanskje... Men det er best å gjøre det på vinteren , da er innetemperaturen mest stabil. Får ta en tur til Thailand snart :-)
  19. Jeg har det, men for å få noe vettug ut av dette bør ingen bruke varmtvann I løpet av noen døgn, vel. Det er vanskelig å gjennomføre, og I feriene have jeg andre ting å drive på med :-)
  20. Varmetapet er ikke bare «én ting», det er hele greia (med dagens måte å betale strøm på). Det du evt sparer på er at vannet I tanken er kaldere enn vanlig og dermed er potensialet/delta mellom vanntemperatur og lufttemperatur mindre. Jo større forskjell, jo større varmetap. Men siden du må opp igjen i temperatur, så må du ta igjen det tapte minus det du vant på mindre delta. Så vidt jeg har skjønt :-)
  21. Hos meg går «varmetapet» rett ut i kjøkkenet, så vinterstid er det I praksis intet tap (fordi jeg bruker panelovner ellers). Hvis vi får nye måter å betale strømmen på, f.eks økt pris på høy effekt I gitte tidsrom, så kan du kanskje spare noen kroner ved å ha den avslått inntil noen timer ut på formiddagen, til alle andre har varmet opp dusjvannet sitt igjen ;-)
  22. Marhil

    RG-11 Regnsensor

    Det skjedde tydeligvis noe rart da jeg bestilte, Ben fra Hydreon sier at han ikke finner noen bestilling fra meg. Må si jeg er litt skeptisk når jeg selv tror at alt har gått greit, har sendt av gårde kortnummer osv, og så får jeg en slik beskjed. Har dere som har fått bestilt også fått bekreftelse på mail? Ps: hvis noen ombestemmer seg, eller det skulle være en sensor til overs, så stiller jeg meg i kø :-)
  23. Marhil

    RG-11 Regnsensor

    Flott tiltak, dumt jeg allerede har bestilt... Sent fra min H60-L04 via Tapatalk
  24. Jeg _tror_ at min lås spiller Sauen Shaun når den er fornøyd med spenningen og Twinkle, twinkle little star når spenningen er lav. Uansett er det alltid spennende å høre hvilken melodi som spilles i dag. Forventer Twinkle hvert øyeblikk (mulig jeg har misforstått disse lydene, altså) Sent fra min H60-L04 via Tapatalk
×
×
  • 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.