IEEE 802.15.4 subsystem
Sign in or create your account | Project List | Help
IEEE 802.15.4 subsystem Git Source Tree
Root/
| Source at commit 8c574484b889c7b17d2ba4b6929947050f87d91e created 6 years 3 months ago. By Josef Filzmaier, atusb/fw: Introduce DEBUG flag | |
|---|---|
| 1 | #!/bin/sh |
| 2 | |
| 3 | . ./Common |
| 4 | |
| 5 | |
| 6 | USB_ID=20b7:1540 |
| 7 | CLOCK_DRIFT_PPM=50 |
| 8 | |
| 9 | |
| 10 | enumerate() |
| 11 | { |
| 12 | step "Enumeration" |
| 13 | cmd "usbwait -t 5 $USB_ID && echo okay" |
| 14 | expect okay |
| 15 | } |
| 16 | |
| 17 | |
| 18 | led() |
| 19 | { |
| 20 | # |
| 21 | # BBBBBBBB CCCCCCCC DDDDDDDD |
| 22 | # 01234567 01234567 01234567 |
| 23 | # |
| 24 | # -xxxS-L- -x-----n InMM-S-- |
| 25 | # T E R RSIO C |
| 26 | # |
| 27 | step "LED" |
| 28 | cmd "echo >/dev/tty; \ |
| 29 | g_echo 'Press \033[7m P \033[mass if the LED blinks, \033[7m F \033[mail if not' \ |
| 30 | >/dev/tty; \ |
| 31 | atrf-gpio -c -p \ |
| 32 | xxxxxx1x.xxxxxxxx.xxxxxxxx \ |
| 33 | delay=50 \ |
| 34 | xxxxxx0x.xxxxxxxx.xxxxxxxx \ |
| 35 | delay=200" |
| 36 | doit |
| 37 | } |
| 38 | |
| 39 | |
| 40 | gpio_usb() |
| 41 | { |
| 42 | # TRX_OFF state (transceiver pull-up/downs inactive) |
| 43 | |
| 44 | # -xxxS-L- -x-----n InMM-S-- |
| 45 | # T E R RSIO C |
| 46 | |
| 47 | step "GPIO scan (TRX_OFF)" |
| 48 | cmd "$LOCAL_EXEC atrf-gpio -d $LOCAL_DUT \ |
| 49 | HHHH0HzH.HxHxHHHh.oHHHHHHH '# TRX_OFF state (H)' \ |
| 50 | 0HHH0HzH.HxHxHHHh.oHHHHHHH '# test B0' \ |
| 51 | H0HH0HzH.HxHxHHHh.oHHHHHHH '# test B1 (ICSP SCK)' \ |
| 52 | HH0H0HzH.HxHxHHHh.oHHHHHHH '# test B2 (ICSP MOSI)' \ |
| 53 | HHH00HzH.HxHxHHHh.oHHHHHHH '# test B3 (ICSP MISO)' \ |
| 54 | HHHH00zH.HxHxHHHh.oHHHHHHH '# test B5' \ |
| 55 | HHHH0H0H.HxHxHHHh.oHHHHHHH '# test B6 (LED, 0)' \ |
| 56 | HHHH0H1H.HxHxHHHh.oHHHHHHH '# test B6 (LED, 1)' \ |
| 57 | HHHH0Hz0.HxHxHHHh.oHHHHHHH '# test B7' \ |
| 58 | HHHH0HzH.0xHxHHHh.oHHHHHHH '# test C0' \ |
| 59 | HHHH0HzH.Hx0xHHHh.oHHHHHHH '# test C2' \ |
| 60 | HHHH0HzH.HxHx0HHh.oHHHHHHH '# test C4' \ |
| 61 | HHHH0HzH.HxHxH0Hh.oHHHHHHH '# test C5' \ |
| 62 | HHHH0HzH.HxHxHH0h.oHHHHHHH '# test C6' \ |
| 63 | HHHH0HzH.HxHxHHH1.oHHHHHHH '# test C7 (nRST_RF)' \ |
| 64 | HHHH0HzH.HxHxHHHh.0HHHHHHH '# test D0 (IRQ_RF)' \ |
| 65 | HHHH0HzH.HxHxHHHh.o0zHHHHH '# test D1 (nSS)' \ |
| 66 | HHHH0HzH.HxHxHHHh.oH0HHHHH '# test D2 (MISO)' \ |
| 67 | HHHH0HzH.HxHxHHHh.oHz0HHHH '# test D3 (MOSI)' \ |
| 68 | HHHH0HzH.HxHxHHHh.oHzH0HHH '# test D4' \ |
| 69 | HHHH0HzH.HxHxHHHh.oHzHH0HH '# test D5 (SCLK)' \ |
| 70 | HHHH0HzH.HxHxHHHh.oHzHHH0H '# test D6' \ |
| 71 | HHHH0HzH.HxHxHHHh.oHzHHHH0 '# test D7' \ |
| 72 | HHHH0HzH.HxHxHHHh.oHzHHHHH '# test LED'" |
| 73 | doit |
| 74 | |
| 75 | # INT |
| 76 | |
| 77 | # -xxxS-L- -x-----n InMM-S-- |
| 78 | # T E R RSIO C |
| 79 | |
| 80 | step "GPIO scan (INT)" |
| 81 | cmd "$LOCAL_EXEC atrf-gpio -d $LOCAL_DUT \ |
| 82 | xxxxxxxx.xxxxxxxx.oxxxxxxx '# reset state' \ |
| 83 | 0x04=1 '# IRQ_POLARITY = 1' \ |
| 84 | xxxxxxxx.xxxxxxxx.hxxxxxxx '# test INT (1)' \ |
| 85 | xxxxxxxx.xxxxxxxx.h0xxxxxx '# test INT (2)' \ |
| 86 | xxxxxxxx.xxxxxxxx.h1xxxxxx '# restore nSEL' \ |
| 87 | 0x04=0 '# IRQ_POLARITY = 0' \ |
| 88 | xxxxxxxx.xxxxxxxx.o1xxxxxx '# test INT again'" |
| 89 | doit |
| 90 | |
| 91 | # SLP_TR |
| 92 | |
| 93 | # -xxxS-L- -x-----n InMM-S-- |
| 94 | # T E R RSIO C |
| 95 | |
| 96 | step "GPIO scan (SLP_TR)" |
| 97 | cmd "$LOCAL_EXEC atrf-gpio -d $LOCAL_DUT \ |
| 98 | 02=9 delay '# enter PLL_ON' \ |
| 99 | 02:9/0x1f '# verify state' \ |
| 100 | frame '# one-byte frame' \ |
| 101 | 0xf: '# clear interrupts' \ |
| 102 | 0xe=8 '# enable TRX_END intr' \ |
| 103 | xxxxxxxx.xxxxxxxx.oxxxxxxx '# confirm INT' \ |
| 104 | slp_tr delay '# send frame' \ |
| 105 | xxxxxxxx.xxxxxxxx.hxxxxxxx '# check INT'" |
| 106 | doit |
| 107 | |
| 108 | # nRST |
| 109 | |
| 110 | step "GPIO scan (nRST)" |
| 111 | cmd "$LOCAL_EXEC atrf-gpio -d $LOCAL_DUT \ |
| 112 | 02:8/0x1f '# verify TRX_OFF' \ |
| 113 | reset '# reset transceiver' \ |
| 114 | 02:0/0x1f '# verify P_ON'" |
| 115 | doit |
| 116 | } |
| 117 | |
| 118 | |
| 119 | xtal_usb() |
| 120 | { |
| 121 | step "Crystal frequency" |
| 122 | cmd "$LOCAL_EXEC atrf-xtal -d $LOCAL_DUT -p $CLOCK_DRIFT_PPM" |
| 123 | expect_re ppm # we catch any problems via the exit code |
| 124 | } |
| 125 | |
| 126 | |
| 127 | begin usb.profile |
| 128 | enumerate |
| 129 | led |
| 130 | # power ? |
| 131 | gpio_usb |
| 132 | identify |
| 133 | xtal_usb |
| 134 | spectrum |
| 135 | transmit |
| 136 | |
