Jag har nu fått reserv USB-adaptern som jag beställt (tack för den snabba leveransen Erik!) och som utlovat så kommer här en guide till hur man får igång ett entråds nätvärk i MacOSX. Jag ber också på förhand om ursäkt för att jag har en tendens att vara långrandig emellanåt.
Det finns två stycken program/mjukvaru-paket för 1-wire nätverk som jag har lyckats få att fungera i MacOSX. Det första är ett javaprogram. Detta javaprogram har visserligen ett användargränssnitt men är skrivet för flera år sedan och jag har bara fått det att fungera med en temperatursensor. Dessutom så lär det inte fungera på din Intel-dator.
Det andra alternativet är owfs som du möjligtvis har läst om här på forumet. Jag har flera gånger försökt att kompilera owfs för Mac utan några större framgångar men har dock lyckats hitta och använda en gammal (från 2005!) färdigkompilerad version på deras hemsida som jag använt på min G4:a. Inte heller denna version lär dock fungera på din dator.
Det visar sig dock att det finns en lösning i form av Homebrew. Homebrew är en samling av program som används från terminalen för att ladda hem och kompilera Linux-programvara till OSX. De som håller på med Homebrew har bland annat modifierat owfs kompileringen så att detta nu fungerar på ditt system. Det finns instruktioner på hur du installerar Homebrew på följande adress:
https://github.com/mxcl/homebrew/wiki/installation.
Översatt till svenska så är dessa följande:
1. Installera Xcode (utvecklarverktyg) på din dator. Du hittar utvecklarverktygen på antingen en av de installationsskivor som följde med datorn, eller så kan du registrerar dig på
developer.apple.com och ladda hem de därifrån.
2. Öppna terminalen och skriv in (kopiera och klistra in) följande rad:
Kod: Markera allt
ruby -e "$(curl -fsSLk https://gist.github.com/raw/323731/install_homebrew.rb)"
Du måste vara administratör när du gör detta och du kommer att bli ombed att ange ditt lösenord.
Notera att om du redan har Fink och/eller MacPorts installerat så bör du ta bort dessa .
När Homebrew är installerat så är det en smal sak att sedan installera owfs. Skriv helt enkelt följande rad i terminalen:
Detta kommando kommer att ladda hem andra mjukvaror som krävs för att owfs ska fungera innan det installerar owfs.
Du är nu nästan igång. Plugga in USB-adaptern och en temperatur sensor i denna och skriv därefter in följande rad i terminalen:
Med detta kommando så startar du den serverprogramvara som kommunicerar med 1-wire enheterna på nätverkat.
-u betyder att du har nätverket anslutet via en USB-adapter.
-p 2048 anger att owserver använder nätverksporten 2048 för att ta emot förfrågningar (du kan om du vill ange nästan vilket tal som helst mellan 1024 och ~65000).
--foreground betyder att owserver inte ska "gömma sig" så att du senare lätt kan stänga av programmet genom att trycka på ctrl-C.
Nästa steg blir att ta reda på vilka enheter som är anslutna till nätverket. Öppna ett nytt terminalfönster (?-N) och skriv följande (om du använde 2048 som port för owserver):
Om temperatursensorn är inkopplad som den ska så bör du få en lista som ser ut något i stil med följande:
Kod: Markera allt
/81.860B2F000000
/28.700FB8010000
/bus.0
/uncached
/settings
/system
/statistics
/structure
Det är en av dom översta raderna som är intressanta i det här fallet. Raden som börjar med
/81. indikerar en identifikationskrets som sitter i USB-adaptern medan den andra raden är adressen till din temperatursensor. Notera att adressen på din temperatursensor inte måste börja med
/28. utan börjar troligtvis med
/10. istället.
För att se vilka alternativ som finns för utläsning av din temperatursensor så skriver man (i mitt fall):
Du byter förstås ut adressen i raden ovan med adressen för din temperatursensor.
I listan som du får fram av kommandot så bör du kunna se alternativet
temperature.
För att faktiskt också läsa ut temperaturen så ska man istället använda kommandot
owread.
Skriv i terminalen följande rad (med adressen utbytt med adressen för din temperatursensor):
Kod: Markera allt
owread -s 2048 /28.700FB8010000/temperature
Om allt har fungerat som det ska så ska terminalen nu spotta fram en temperatur i grader celsius.
Med detta som start så bör du kunna fortsätta med andra guider för att lägga in temperaturer i tex. en rrd-databas, eller om du vill så kan jag ge dig en väldigt enkel metod för att lagra datan i en vanlig textfil.