Termometr na USB.
Pewnego dnia postanowiłem zamówić sobie coś do zabawy w Dallasie. Wybór padł na dwa ciekawe scalaki:
- DS2490 - mostek usb/1wire
- DS18B20 - termometr 1wire
Po paru dniach odebrałem scalaczki i tu zaczynają się schody. Zmontowałem mostek według schematu:

Płytka była prosta, więc zrobiłem ją pisakiem (tak, pisakiem pod SMD... wtedy jeszcze nie wiedziałem o papierze kredowym):

Całośc zmontowana i podłaczona do komputera pokazała się w /proc/bus/usb (oczywiście wszystko robiłem pod linuksem). I teraz nagle problem: jak zrobić sterowniki? Zdecydowałem się na userspace usb driver. Nawet nie pamiętam, skąd miałem dokumentację... w kazdym razie udało mi się skleić kawałek kodu, który czasem nawet działał. Znajdziecie go tutaj, jednak nie liczcie na wiele... strasznie niechlujny, bo nie wiedziałem, jak mam to pisać.
Everything should be built top-down, except the first time.
Napisałem też skrypt w PHP, który generował mi obrazek z aktualną temperaturą. Jako że maxim przysłał mi 2 czujniki, jeden owinąłem porządnie (przynajmniej tak wtedy sądziłem) taśmą izolacyjną i wystawiłem za okno. Pracował tam przez całą jesień, zimę i wiosnę. W międzyczasie wiele się działo, a kiedy całość (mostek usb/1wire i 2 czujniki) zaczęły odmawiać współpracy, po prostu je odłączyłem. Oto, co zostało z czujnika, który był wystawiony za okno (zimą sople na nim wisiały...):

To zielone to patyna. (takie coś co powstaje z rozkładu miedzi pod wpływem czynników atmosferycznych)
Jak (nie) widać na fotce, jedna z nóg po prostu nie istniała, a dwie były tak przeżarte przez rdzę i wilgoć, że prawie już nie istniały. Morał: do takich rzeczy używać poxipolu...
Wracając do termometru: skrypt, który zrobiłem, służył mi długi czas jako bardzo 1337 sygnaturka na forum... potem zacząłem się bawić sterownikami (okazało się, że w jądrze linuksa są już gotowe sterowniki do mostka usb/1wire i sensorów temperatury), a potem, jak przestało działać, rzuciłem wszystko do szuflady i zapomniałem.
Układ, zmontowany, wygląda tak:

Większość plików już dawno nie istnieje - zginęły w mroku dziejów. Kiedyś pod adresem http://ds1820.republika.pl/ było to wszystko udostępnione, ale potem się rozsypało. Nic ciekawego w sumie... resztki tej strony są dostępne tutaj. Obrazek wyglądał tak:

Kwestia sterowników: obecnie są dostępne sterowniki zarówno pod Windows (firmowe), jak i pod Linuksa (w nowszych jądrach z rodziny 2.6). Nie ma więc problemu z tym, żeby zmontowany układ pokazywał temperaturę, to, że ja się męczyłem z pisaniem sterowników nie oznacza, że Wy też musicie. :)