1

Temat: ATtiny85 z LittleWire

Opisywałem już ATtiny w zastosowaniu, jednakże większość osób sądzi że opisywany moduł to jedyna możliwość sterowania tym układem. Otóż nie, samym littlewire można sterować dedykowanymi programami które będą realizowały określone funkcje. W pakiecie littewire można znaleźć kilkanaście różnych przykładów, które łatwo można dostosować do własnych potrzeb. Jako przykłady zastosowania:

- pomiar napięcia:

# ./adc
> Little Wire firmware version: 1.3
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
> Value: 3FF    Voltage: 4995.117188 milivolts
^C

PIN2 (PB2) robi za wejście, dzięki czemu można bezpośrednio zmierzyć napięcie tam doprowadzone. Czyli pośrednio można mierzyć inne wartości które można przerobić na napięcie, np. nacisk, temperaturę (termopara), oświetlenie. Można monitorować np. napięcie baterii.

- magistrala 1wire

# ./onewire
> Little Wire found with firmware version: 1.3
> Address search ... 
> Addr#0:  28    B4    F2    FA    2    0    0    C5    
> End of search with 1 onewire device(s) found
> Start the talking with the last onewire device found
> SCRATCH::57: 1:4B:46:7F:FF: 9:10:C7
LSB 01010111
MSB 00000001
> TEMP  21.437 deg. C
> SCRATCH::57: 1:4B:46:7F:FF: 9:10:C7
LSB 01010111
MSB 00000001
> TEMP  21.437 deg. C
^C

Podłączając zwykły DS1820 można błyskawicznie odczytać i mierzyć temperaturę za jego pomocą.

- sterowanie WS2812

WS2812 jest diodą RGB LED z własnym kontrolerem sterowanym tylko jedną linią. Można podłączyć jedną diodę lub kilkanaście w szeregu, dzięki czemu można dowolnie sterować kolorem świecie diody. Można to wykorzystać od zwykłych "ozdobnych" linii (jak podświetlanie czegoś) lub np. wskaźnik jakiegoś zdarzenia (identycznie jak led w niektórych smartfonach). Mam kilka takich led, więc jak ktoś jest zainteresowany zakupem to niech da znać.

# ./blink_ws2812
> Little Wire firmware version: 1.3
Red
Green
Blue
Off..
Red
Green
Blue
^C

Jak to działa w praktyce: http://youtu.be/6HWta1zmql4

- sterowanie GPIO

Zwykły odczyt stanu linii, np:

# ./button
> Little Wire firmware version: 1.3
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.
> Button pressed.

Lub sterowanie włączaniem czy wyłączeniem linii

# ./blink
----------------------------------------------------------
> 1 Little Wire device is found with serialNumber: 512
----------------------------------------------------------
> Little Wire firmware version: 1.3
Blink!
...
Blink!
...
Blink!
...

Pierwsze można wykorzystać np. do odczytu stanu dołączonego przycisku czy stanu zwarcia jakiejś linii, drugie - np. do sterowania przekaźnika (układu typu usbrelay).

Littlewire implementuje także magistralę i2c (odczyt i programowanie czujników), magistralę SPI (odczyt i programowanie pamięci), programator usbtinyisp oraz sprzętowy i programowy generator impulsów PWM. API projektu jest dostępne, a podane przykłady w projekcie z pewnością ułatwią pisanie własnych programów.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

2

Odp: ATtiny85 z LittleWire

gdzie zakupie takie cudo na polskim rynku?

3

Odp: ATtiny85 z LittleWire

Gotowca nie wiem. Sam możesz sobie zrobić - to tylko układ. Jak chcesz to mogę Ci odsprzedać jednego z blackboxów - jak to wygląda jest w linku na początku postu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

4

Odp: ATtiny85 z LittleWire

Ciekawa sprawa, niestety nigdy nie interesowałem się Arduino (i trochę przerażają mnie tematy związane z programatorami), więc zapytam lamersko o drogę na skróty.
Czy w gotowcach trzeba wprogramować V-USB ?
Czy w gotowcach da się wgrywać Little Wire z kompa przez USB ?

TP-Link TL-WR1043ND v1, Chaos Calmer 15.05 (r46849 by obsy)

5

Odp: ATtiny85 z LittleWire

Zależy jaki gotowiec. Albo jest pusty i trzeba programatorem chip zaprogramować, albo jest gotowy i nie robisz nic, albo ma jakiś bootloader (np. micronucleus ) i wtedy z możesz sobie przez usb wgrać co chcesz, littlewire w szczególności.

PS. Jak masz  micronucleus  to toto jest kompatybilne po pewnych dodatkach z GUI Ardunino, więc można normalnie programy pisać. Choć masz tam mało pamięci, bo zostaje ci zaledwie ok 6KB.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

6 (edytowany przez alossek 2014-10-29 14:28:31)

Odp: ATtiny85 z LittleWire

Być może się tym zainteresuję (bo przydałby się dodatkowe GPIO), ale mam dwa szybkie pytania:
1. czy kmod-gpio-lw-usb zabrane z AA zadziała mi w BB (bo widzę ze nie ma)
2. czy ktoś słyszał o podobny rozwiązaniu z większą ilością GPIO (tu 4), podobnym - w sensie:
- podobnie zaprogramuję chip,
- łatwo zdobędę/skompiluję sterownik dla openwrt
- cena sensowna podobna (słowem gotowy układ "do wszystkiego" na allegro za 150 pln mnie nie interesuje)

TP-Link TL-WR1043ND v1, Chaos Calmer 15.05 (r46849 by obsy)

7

Odp: ATtiny85 z LittleWire

1. Nie, muszę skompilować
2. i2c zwykłe, są expandery z gpio.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

8

Odp: ATtiny85 z LittleWire

Czy da się to sprzęgnąć z digitemp?
Chodzi mi o to czy w miarę łatwo da się przerobić np. skrypty kolegi bbarwika by działały z littlewire?
Czy jeśli bym podłączył dwa urządzonka to bym miał 8 gpio?

9

Odp: ATtiny85 z LittleWire

Nie, po co? Przecież zamiast odczytywać digitempem po prostu czytasz innym programem temperaturę.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

10 (edytowany przez xury 2014-10-29 21:18:31)

Odp: ATtiny85 z LittleWire

Ok rozumiem, po prostu dopadła mnie pomroczność jasna smile
Czyli po prostu odczytywać dane z czujników ostripować i oskryptować dopasowując do skryptów bbarwika.
Myślę, że dam radę.

BTW nie dało by rady przenieść Littlewire z Attiny85 na inny AVR z większą ilością gpio? Np na Atmega 8 ?

Sam co nieco pisałem na AVR w BASCOMie, ale C nie ruszam.

11

Odp: ATtiny85 z LittleWire

Da się na wszystko na czym v-usb działa. W sumie to przeciez nawet nie musi być littlewire, zwykłe sterowanie portami w avr, chyba większość tutoriali o v-usb od tego zaczyna smile Zobacz http://eko.one.pl/forum/viewtopic.php?id=3894

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

12

Odp: ATtiny85 z LittleWire

Main page.
Jest: 2014-10-26: Littewire w zastosowaniach
Powinno być:2014-10-26: Littlewire w zastosowaniach

13

Odp: ATtiny85 z LittleWire

Powinno smile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14

Odp: ATtiny85 z LittleWire

@Cezary, Można poprosić o linka do wsadu który siedzi w attiny85 ? Wgrana do mojego olimexio85 (klon attiny85) wersja littlewire 1.2 lub 1.3 chyba nie działa bo system sypie błędami.

15

Odp: ATtiny85 z LittleWire

Dokładnie tego używam: http://littlewire.cc/resources/littlewire_v13.hex

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: ATtiny85 z LittleWire

Gdzie dla tl-wr3420 znajdę skompilowane pakiety little wire opisywane w tym artykule ?
http://eko.one.pl/?p=openwrt-attiny

17

Odp: ATtiny85 z LittleWire

W repo AA u mnie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

18

Odp: ATtiny85 z LittleWire

No właśnie ja jakoś nie mogę tego odszukać
http://dl.eko.one.pl/attitude_adjustmen … /packages/

19

Odp: ATtiny85 z LittleWire

A mimo wszystko to tam jest: kmod-gpio-lw-usb_3.3.8-1_ar71xx.ipk

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

20

Odp: ATtiny85 z LittleWire

Mi zależy na opisywanym w ostatnim zdaniu z tej strony
http://eko.one.pl/?p=openwrt-attiny

"W moim repo można znaleźć pakiet littlewire zawierający skompilowane przykładowe programy dla tego projektu. Zobacz także http://eko.one.pl/forum/viewtopic.php?pid=120577#p120577"

pakiecie littlewire zawierający skompilowane przykłady tj adc, blink itp

Pakiet kmod-gpio-lw-usb oczywiście jest smile

21

Odp: ATtiny85 z LittleWire

A to z kolei jest w repo BB i nazywa się littlewire smile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

22

Odp: ATtiny85 z LittleWire

W mogę poprosić o skompilowanie dla AA lub ewentualnie czy zadziała littlewire na AA z BB.
Dziwnym trafem mam do dyspozycji router tl-wr 3420 v2 i na nim nie wykłada się LW a na sagemie 2704 v2 z zainstalowanym BB oczywiście się wykłada w ten sposób opisywany już w innym poście
"Fri Oct 31 20:13:14 2014 kern.err kernel: [432623.324000] usb 2-1: device descriptor read/64, error -62"

23

Odp: ATtiny85 z LittleWire

Możesz zainstalować z BB. Będzie się o libusb-compact buntował, ale zignoruj to i doinstaluj libusb po prostu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

24

Odp: ATtiny85 z LittleWire

Coś nie idzie
Na tym routerze nie ma internetu to przegrałem najpierw pliki do folderu /tmp programem winscp

root@Gargoyle:/tmp# ls
TZ                                   lock
cached_basic_vars                    log
dhcp.leases                          resolv.conf
dropbear                             resolv.conf.auto
etc                                  root
fstab                                run
hosts                                spool
kmod-gpio-lw-usb_3.3.8-1_ar71xx.ipk  state
libusb_0.1.12-3_ar71xx.ipk           sysinfo
littlewire_20140920_ar71xx.ipk
root@Gargoyle:/tmp# opkg install ./littlewire_20140920_ar71xx.ipk
ERROR: No package named littlewire found, try updating your package lists

root@Gargoyle:/tmp# opkg install /tmp/littlewire_20140920_ar71xx.ipk
ERROR: No package named littlewire found, try updating your package lists

root@Gargoyle:/tmp#

25

Odp: ATtiny85 z LittleWire

opkg install opkg jak coś, bo gpkg korzystasz...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.