Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
workshop:rf433ctl_workshop [2012-04-18 23:43]
homunkoloss
workshop:rf433ctl_workshop [2015-09-24 13:29] (current)
xro
Line 1: Line 1:
-====== ​Workshop ​mit dem geilen Otti ====== +====== ​Funksteckdosen Fernsteuern ​mit teensy  ​====== 
-====== ​hidrc ====== +====== ​aka Workshop: Mikrocontrollerprogrammierung mit teensy ​====== 
-====== ​Einrichtung ​====== +====== ​Vorbereitung ​====== 
-===== Kommandos lernen ===== +Es müssen folgende Pakete installiert werden: ​ 
-<html><​pre>​ +<code>~ % sudo apt-get install subversion gcc-avr avr-libc build-essential ​
-~ % sudo apt-get install subversion gcc-avr avr-libc build-essential avrdude binutils-avr libusb-dev python-matplotlib+avrdude binutils-avr libusb-dev python-matplotlib</​code>​ 
 + 
 +Weiters ist es ratsam einen eigenen Ordner für den Workshop anzulegen. 
 +<​code>​
 ~ % mkdir teensy_workshop ~ % mkdir teensy_workshop
 ~ % cd teensy_workshop ~ % cd teensy_workshop
-~/teensy_workshop % svn checkout https://​krypta.wirdorange.org/​svn/​hidrc/​trunk hidrc +</code>
-A    hidrc/​usb_keyboard_debug.c +
-A    hidrc/​hid_listen +
-A    hidrc/​hid_listen/​rawhid.c +
-A    hidrc/​hid_listen/​gpl3.txt +
-A    hidrc/​hid_listen/​hid_listen.c +
-A    hidrc/​hid_listen/​rawhid.h +
-A    hidrc/​hid_listen/​Makefile +
-A    hidrc/​print.h +
-A    hidrc/​teensy_loader_cli +
-A    hidrc/​teensy_loader_cli/​gpl3.txt +
-A    hidrc/​teensy_loader_cli/​Makefile.bsd +
-A    hidrc/​teensy_loader_cli/​teensy_loader_cli.c +
-A    hidrc/​teensy_loader_cli/​Makefile +
-A    hidrc/​usb_keyboard_debug.h +
-A    hidrc/​keymap_example.h +
-A    hidrc/​udev-rules +
-A    hidrc/​udev-rules/​49-teensy.rules +
-A    hidrc/​example.c +
-A    hidrc/​Makefile +
-A    hidrc/​print.c +
- ​U ​  ​hidrc +
-Ausgecheckt,​ Revision 16. +
-~/​teensy_workshop % cd hidrc +
-~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % make+
  
--------- begin -------- +====== hidrc ====== 
-avr-gcc (GCC) 4.3.5 +Mit hidrc kann man einen Linux-PC mit NEC-Fernbedienungen fernsteuernAndere Protokolle wie RC5 oder RC6 werden derzeit ​nicht unterstützt.
-Copyright (C) 2008 Free Software Foundation, Inc. +
-Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es +
-gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE.+
  
 +===== Benötigte Bauteile =====
 +  * Teensy
 +  * TSOP1838
  
-Compiling C: example.c +==== Pinbelegung ==== 
-avr-gcc -c -mmcu=atmega32u4 ​        -I. -gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./​example.lst ​ -std=gnu99 -MMD -MP -MF .dep/​example.o.d example.c -o example.o ​ +TSOP1838
-example.c:38:20: Fehler: keymap.h: Datei oder Verzeichnis nicht gefunden +D3Data 
-example.c: In Funktion »__vector_23«+Gesamter Port D ist als Input konfiguriert
-example.c:110: Fehler: »mapping« nicht deklariert (erste Benutzung in dieser Funktion) +PC7 = VCC 
-example.c:​110:​ Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt +PC6 = GND
-example.c:​110:​ Fehler: für jede Funktion in der er auftritt.) +
-make: *** [example.o] Fehler 1 +
-2 ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cp keymap_example.h keymap.h +
-~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % make+
  
--------- begin -------- +Ansicht von vorne (Runde empfänger Teil sichtbar) 
-avr-gcc (GCC) 4.3.5 +<​html><​pre>​ 
-Copyright (C) 2008 Free Software Foundation, Inc. +_________ 
-Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es +|       | 
-gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE.+|   ​O ​  | 
 +|       | 
 +--------- 
 +|   ​| ​  | 
 +|   ​| ​  | 
 +D  Gnd Vcc 
 +</​pre></​html>​
  
 +==== Quellcode herunterladen ====
 +<​html><​pre>​
 +~/​teensy_workshop % svn checkout https://​krypta.wirdorange.org/​svn/​hidrc/​trunk hidrc
 +~/​teensy_workshop % cd hidrc
 +</​pre></​html>​
  
-Compiling C: example.c +==== hidrc kompilieren ​==== 
-avr-gcc -c -mmcu=atmega32u4 ​        -I. -gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./​example.lst ​ -std=gnu99 -MMD -MP -MF .dep/​example.o.d example.c -o example.o  +<​html><​pre>​ 
- +~/teensy_workshop/hidrc (svn)-[trunk:16] % cp keymap_example.h keymap.h 
-Compiling C: usb_keyboard_debug.c +~/​teensy_workshop/​hidrc (svn)-[trunk:16] % make
-avr-gcc -c -mmcu=atmega32u4 ​        -I. -gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./​usb_keyboard_debug.lst ​ -std=gnu99 -MMD -MP -MF .dep/​usb_keyboard_debug.o.d usb_keyboard_debug.c -o usb_keyboard_debug.o ​ +
- +
-Compiling C: print.c +
-avr-gcc -c -mmcu=atmega32u4 ​        -I. -gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,​-adhlns=./print.lst ​ -std=gnu99 -MMD -MP -MF .dep/print.o.d print.c ​-o print.o  +
- +
-Linkingexample.elf +
-avr-gcc -mmcu=atmega32u4 ​        -I-gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,​-adhlns=example.o ​ -std=gnu99 -MMD -MP -MF .dep/​example.elf.d example.o usb_keyboard_debug.o print.o --output example.elf -Wl,​-Map=example.map,​--cref -Wl,--relax -Wl,​--gc-sections ​    -lm +
- +
-Creating load file for Flash: example.hex +
-avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature example.elf example.hex +
- +
-Creating load file for EEPROM: example.eep +
-avr-objcopy -j .eeprom --set-section-flags=.eeprom="​alloc,​load"​ \ +
- --change-section-lma .eeprom=0 --no-change-warnings -O ihex example.elf example.eep || exit 0 +
- +
-Creating Extended Listing: example.lss +
-avr-objdump --S -z example.elf > example.lss +
- +
-Creating Symbol Table: example.sym +
-avr-nm -n example.elf > example.sym +
- +
-Size after: +
-   ​text  ​  ​data  ​   bss     dec     hex filename +
-   ​2600  ​    ​34  ​    ​26  ​  ​2660  ​   a64 example.elf +
- +
--------- end -------- +
 ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cd teensy_loader_cli ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cd teensy_loader_cli
-...eensy_workshop/​hidrc/​teensy_loader_cli (svn)-[trunk:​16] % make +~/​teensy_workshop/​hidrc/​teensy_loader_cli (svn)-[trunk:​16] % make 
-cc -O2 -Wall -s -DUSE_LIBUSB -o teensy_loader_cli teensy_loader_cli.c -lusb +~/​teensy_workshop/​hidrc/​teensy_loader_cli (svn)-[trunk:​16] % cd ../​hid_listen
-...eensy_workshop/​hidrc/​teensy_loader_cli (svn)-[trunk:​16] % cd .. +
-~/teensy_workshop/​hidrc (svn)-[trunk:​16] % cd hid_listen+
 ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % make ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % make
-gcc -O2 -Wall -DLINUX ​  -c -o hid_listen.o hid_listen.c +</​pre></​html>​ 
-gcc -O2 -Wall -DLINUX ​  -c -o rawhid.o rawhid.c + 
-rawhid.c:​53:​45:​ warning: assertions are a deprecated extension +==== udev-Regel kopieren ==== 
-gcc -o hid_listen hid_listen.o rawhid.o ​ +<​html><​pre>​
-strip hid_listen+
 ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % cd .. ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % cd ..
 ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % sudo cp udev-rules/​49-teensy.rules /​etc/​udev/​rules.d/​49-teensy.rules ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % sudo cp udev-rules/​49-teensy.rules /​etc/​udev/​rules.d/​49-teensy.rules
 ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % sudo /​etc/​init.d/​udev reload ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % sudo /​etc/​init.d/​udev reload
-Rather than invoking init scripts through ​/etc/init.d, use the service(8) +</pre></html>
-utility, e.g. service udev reload+
  
-Since the script you are attempting to invoke has been converted to an +==== Programm auf teensy brennen ==== 
-Upstart job, you may also use the reload(8) utility, e.g. reload udev+<​html><​pre>​
 ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % make program ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % make program
-./teensy_loader_cli/teensy_loader_cli -mmcu=atmega32u4 -w example.hex+</pre></html> 
 + 
 +==== Kommandos lernen ==== 
 +<​html><​pre>​
 ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cd hid_listen ~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cd hid_listen
 ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % ./​hid_listen ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % ./​hid_listen
Line 122: Line 80:
 ^C ^C
 130 ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % vim ../keymap.h 130 ~/​teensy_workshop/​hidrc/​hid_listen (svn)-[trunk:​16] % vim ../keymap.h
 +</​pre></​html>​
 +
 +=== Keycode eintragen ===
 +Den vorher ausgelesenen Wert (hier 722EEDD1) trägt man in die Datei /​hid_listen/​keymap.h ein.
  
-Keycode eintragen 
 722EEDD1 -> 0x72,​0x2E,​0xED,​0xD1 722EEDD1 -> 0x72,​0x2E,​0xED,​0xD1
  
 0x72,​0x2E,​0xED,​0xD1,//​Key//,​ //​Modifier//,​ 0x72,​0x2E,​0xED,​0xD1,//​Key//,​ //​Modifier//,​
 +
 z.B.: 0x72,​0x2E,​0xED,​0xD1,​ KEY_DELETE, KEY_ALT | KEY_CTRL, z.B.: 0x72,​0x2E,​0xED,​0xD1,​ KEY_DELETE, KEY_ALT | KEY_CTRL,
 +
 Gültige Werte für //Key// und //​Modifier//​ stehen in der Datei **usb_keyboard_debug.h** Gültige Werte für //Key// und //​Modifier//​ stehen in der Datei **usb_keyboard_debug.h**
  
-</​pre></​html>​ 
  
- 
-==== Pinbelegung ==== 
- 
-TSOP1838: 
-D3: Data 
-Gesamter Port D ist als Input konfiguriert. 
-PC7 = VCC 
-PC6 = GND 
- 
-Ansicht von vorne (Runde empfänger Teil sichtbar) 
-<​html><​pre>​ 
-_________ 
-|       | 
-|   ​O ​  | 
-|       | 
---------- 
-|   ​| ​  | 
-|   ​| ​  | 
-D  Gnd Vcc 
-</​pre></​html>​ 
  
 ===== rf433ctl ===== ===== rf433ctl =====
-<html><​pre+==== Quellcode herunterladen ==== 
-homunkoloss@vidar ~/​teensy_workshop % svn checkout ​https://svn.spreadspace.org/​realraum/​rf433rcv+<code
-A    rf433rcv/​pc +homunkoloss@vidar ~/​teensy_workshop % git clone https://github.com/​realraum/​rf433rcv
-A    rf433rcv/​pc/​uncompress.c +
-A    rf433rcv/​pc/​decode2.pl +
-A    rf433rcv/​pc/​plot_bin.sh +
-A    rf433rcv/​pc/​autotaste.sh +
-A    rf433rcv/​pc/​swap.pl +
-A    rf433rcv/​pc/​hid.h +
-A    rf433rcv/​pc/​codes +
-A    rf433rcv/​pc/​decode.pl +
-A    rf433rcv/​pc/​rawhid_test.c +
-A    rf433rcv/​pc/​hid_MACOSX.c +
-A    rf433rcv/​pc/​hid_WINDOWS.c +
-A    rf433rcv/​pc/​realraum_codes.pl +
-A    rf433rcv/​pc/​send.sh +
-A    rf433rcv/​pc/​reset.c +
-A    rf433rcv/​pc/​hid_LINUX.c +
-A    rf433rcv/​pc/​plot.py +
-A    rf433rcv/​pc/​data2sample.pl +
-A    rf433rcv/​pc/​sample2data.pl +
-A    rf433rcv/​pc/​testdata +
-A    rf433rcv/​pc/​testdata/​11111_d_bin +
-A    rf433rcv/​pc/​testdata/​sw2on_bin +
-A    rf433rcv/​pc/​testdata/​11111_a_bin_off +
-A    rf433rcv/​pc/​testdata/​11111_b_bin_off +
-A    rf433rcv/​pc/​testdata/​11111_c_bin_off +
-A    rf433rcv/​pc/​testdata/​11111_d_bin_off +
-A    rf433rcv/​pc/​testdata/​11111_a_bin +
-A    rf433rcv/​pc/​testdata/​11111_b_bin +
-A    rf433rcv/​pc/​testdata/​11111_c_bin +
-A    rf433rcv/​pc/​compress.c +
-A    rf433rcv/​pc/​Makefile +
-A    rf433rcv/​teensy +
-A    rf433rcv/​teensy/​usb_rawhid.c +
-A    rf433rcv/​teensy/​example.c +
-A    rf433rcv/​teensy/​Makefile +
-A    rf433rcv/​teensy/​usb_rawhid.h +
-Ausgecheckt,​ Revision 516. +
-homunkoloss@vidar ~/​teensy_workshop % ll +
-insgesamt 8 +
-drwxr-xr-x 7 homunkoloss homunkoloss 4096 2012-04-18 23:35 hidrc/ +
-drwxr-xr-x 5 homunkoloss homunkoloss 4096 2012-04-18 23:37 rf433rcv/+
 homunkoloss@vidar ~/​teensy_workshop % cd rf433rcv homunkoloss@vidar ~/​teensy_workshop % cd rf433rcv
-homunkoloss@vidar ~/​teensy_workshop/​rf433rcv (svn)-[rf433rcv:​516] % ll 
-insgesamt 8 
-drwxr-xr-x 4 homunkoloss homunkoloss 4096 2012-04-18 23:37 pc/ 
-drwxr-xr-x 3 homunkoloss homunkoloss 4096 2012-04-18 23:37 teensy/ 
 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv (svn)-[rf433rcv:​516] % cd pc homunkoloss@vidar ~/​teensy_workshop/​rf433rcv (svn)-[rf433rcv:​516] % cd pc
 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % make homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % make
-gcc -Wall -O2 -DOS_LINUX ​  -c -o rawhid_test.o rawhid_test.c +</​code>​ 
-gcc -Wall -O2 -DOS_LINUX -c -o hid.o hid_LINUX.c + 
-gcc -o rawhid_test rawhid_test.o hid.o -lusb +==== teensy_loader_cli verlinken ==== 
-strip rawhid_test +<​code>​
-gcc -o compress compress.c +
-gcc -o uncompress uncompress.c +
-gcc -Wall -O2 -DOS_LINUX -c -o reset.o reset.c +
-gcc -o reset reset.o hid.o -lusb +
-strip reset +
-homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % vim Makefile+
 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cd ~ homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cd ~
 homunkoloss@vidar ~ % ln -s teensy_workshop/​hidrc/​teensy_loader_cli ​ homunkoloss@vidar ~ % ln -s teensy_workshop/​hidrc/​teensy_loader_cli ​
Line 221: Line 113:
 drwxr-xr-x ​ 4 homunkoloss homunkoloss ​  4096 2012-04-18 23:37 teensy_workshop/​ drwxr-xr-x ​ 4 homunkoloss homunkoloss ​  4096 2012-04-18 23:37 teensy_workshop/​
 [...] [...]
 +
 homunkoloss@vidar ~ % cd - homunkoloss@vidar ~ % cd -
 ~/​teensy_workshop/​rf433rcv/​pc ~/​teensy_workshop/​rf433rcv/​pc
 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cd ../teensy homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cd ../teensy
 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​teensy (svn)-[rf433rcv:​516] % make homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​teensy (svn)-[rf433rcv:​516] % make
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​teensy (svn)-[rf433rcv:​516] % make program
 +../pc/reset || true
 +~/​teensy_loader_cli/​teensy_loader_cli -mmcu=atmega32u4 -w example.hex
 +</​code>​
  
--------- begin -------- +===== Variante Easy ===== 
-avr-gcc ​(GCC4.3.5 +{{:​workshop:​rf-433-proto.jpg|}} 
-Copyright ​(C2008 Free Software Foundation, Inc. +<​html><​pre>​ 
-Dies ist freie Software; die Kopierbedingungen stehen in den QuellenEs +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc ​(svn)-[rf433rcv:​516] % ./autotaste.sh 0 > taste.txt 
-gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE.+/​tmp/​tmp.Kbk5QqjpWm 
 +/​tmp/​tmp.Id0D1V7c7e 
 +/​tmp/​tmp.UVg5C9GFzd 
 +0: 
 +1 47 
 +2  
 +8  
 +9  
 +10 189 
 +11  
 +12 2 
 +27  
 +28 220 
 +29  
 +30 10 
 +31  
 +284  
 +285 17 
 +286  
 +1: 
 +1  
 +2 26 
 +3  
 +4  
 +33 
 +6  
 +7  
 +8 219 
 +9  
 +10 15 
 +11  
 +12 6 
 +13  
 +14 6 
 +15  
 +16 1 
 +18 3 
 +19  
 +20 2 
 +21  
 +22 2 
 +24 3 
 +26  
 +27 170 
 +28  
 +1173samples 
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc ​(svn)-[rf433rcv:​516] % cat taste.txt | ./compress | ./​rawhid_test - 
 +Clearing Buffer 
 +Sending Buffer 63 bytes 
 +66 04 96 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0 3f 00 00 00 fc ff ff 1f 80 ff ff ff 03 f8 ff ff 3f 80 ff 01 00 00 e0 ff ff  
 +Sending Buffer 63 bytes 
 +66 7f 00 fc 01 00 00 c0 ff ff ff 01 fc 07 00 00 80 ff ff ff 03 f0 ff ff 7f 00 fe ff ff 0f e0 3f 00 00 00 fc ff ff 0f 80 7f 00 00 00 f0 0f 00 00 00 fe 00 00 00 e0 1f 00 00 00 fe 03 00 00 80 7f  
 +Sending Buffer 23 bytes 
 +66 00 00 00 f8 ff ff 3f 00 ff ff ff 03 f0 1f 00 00 00 fe 03 00 00 c0 3f  
 +Executing Send command
  
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] %   
 +</​pre></​html>​
  
-Compiling Cexample.c +===== Beschreibung der einzelnen Schritte ===== 
-avr-gcc -c -mmcu=atmega32u4 ​        -I-gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./​example.lst  ​-std=gnu99 ​-MMD -MP -MF .dep/example.o.d example.c -o example.o  +AutotasteVersucht eine Periode herauszufiltern,​ schneidet den Rest weg
-example.c:​52:​ Warnung: Funktionsdeklaration ist kein Prototyp+./​rawhid_test:​ Rohes Signal aufnehmenauf stdout ausgeben. Ohne Parameter: Empfangen, mit filename als Parameter: Sende File, mit "-" sende stdin. 
 +compress: string ​-> binörformat,​ mit parameter: kein längenfeld 
 +uncompress: binärformat ​-> string 
 +./realraum_codes.pl: Bitmuster erzeugen.
  
-Compiling Cusb_rawhid.c +<​html><​pre>​ 
-avr-gcc -c -mmcu=atmega32u4 ​        -I-gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./usb_rawhid.lst  -std=gnu99 -MMD -MP -MF .dep/usb_rawhid.o.d usb_rawhid.-o usb_rawhid.+homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] % ./​rawhid_test 
 +00000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111110000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000011111111111111111111111111110000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111111111111111111111110000000001111111111111111111111111110000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111111111111111111111100000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111110000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000011111111100000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111110000000000000000000000000001111111111111111111111111111000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000011111111111111111111111111100000000011111111111111111111111111110000000001111111111111111111111111110000000000111111111000000000000000000000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111110000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111110000000000000000000000000001111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111110000000000000000000000000001111111111111111111111111111000000000111111111111111111111111111100000000011111111111111111111111111100000000001111111110000000000000000000000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111111111111111111111111000000000111111111111111111111111111000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111100000000000000000000000000011111111111111111111111111110000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111110000000000000000000000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000011111111111111111111111111100000000001111111110000000000000000000000000000111111111111111111111111111000000000111111111111111111111111111100000000011111111111111111111111111100000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111111111111111111111110000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111100000000000000000000000000001111111111111111111111111110000000001111111111111111111111111111000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111111111111111111111110000000001111111111111111111111111110000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111111111111111111111100000000001111111110000000000000000000000000000111111110000000000000000000000000000011111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000011111111111111111111111111110000000001111111111111111111111111110000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111111111111111111111100000000011111111111111111111111111100000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111110000000000000000000000000001111111111111111111111111111000000000111111111111111111111111111000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111100000000000000000000000000011111111111111111111111111110000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111110000000000000000000000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111100000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000001111111111111111111111111100000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111110000000000000000000000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111111111111111111111110000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000011111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111111111111111111111100000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111000000000000000000000000000111111111111111111111111111100000000011111111100000000000000000000000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000001111111100000000000000000000000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000000111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000000111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111110000000000000000000000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111111111111111111111111000000000111111111000000000000000000000000000011111111111111111111111111100000000001111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000011111111100000000000000000000000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111100000000000000000000000000001111111110000000000000000000000000000111111111000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111100000000000000000000000000001111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111111111111111111111100000000011111111111111111111111111110000000001111111110000000000000000000000000000111111111111111111111111111000000000011111111000000000000000% ​                                                        ​homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​rawhid_test | ./plot.py 
 +cat ^CTraceback (most recent call last): 
 +  File "​./​plot.py"​line 12, in <​module>​ 
 +    pylab.show() 
 +  File "/usr/​lib/​pymodules/​python2.7/​matplotlib/​backends/​backend_tkagg.py",​ line 79, in show 
 +    Tk.mainloop() 
 +  File "/​usr/​lib/​python2.7/lib-tk/​Tkinter.py", line 328, in mainloop 
 +    _default_root.tk.mainloop(n) 
 +KeyboardInterrupt 
 +1 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat autotaste.sh 
 +#!/bin/sh
  
-Linkingexample.elf +FN=`mktemp` 
-avr-gcc -mmcu=atmega32u4 ​        -I. -gdwarf--DF_CPU=16000000UL ​-Os -funsigned-char -funsigned-bitfields ​-ffunction-sections ​-fpack-struct ​-fshort-enums -Wall -Wstrict-prototypes ​-Wa,-adhlns=example.o  -std=gnu99 ​-MMD -MP -MF .dep/example.elf.d example.o usb_rawhid.o --output example.elf -Wl,-Map=example.map,--cref -Wl,--relax -Wl,--gc-sections ​    -lm+FN2=`mktemp` 
 +FN3=`mktemp` 
 +echo $FN >&​2 
 +echo $FN2 >&2  
 +echo $FN3 >&​2 
 +./​rawhid_test > $FN 
 +./decode.pl $FN $1 | xargs ./​decode2.pl $FN > $FN2 
 +if [ $1 -eq 1 ]; then 
 +  ./swap.pl < $FN2 >$FN3 
 +else 
 +  cat $FN2 > $FN3 
 +fi 
 +./plot.py < $FN3 
 +cat $FN3 
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] % ll 
 +insgesamt 388 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​  261 2012-04-18 23:37 autotaste.sh* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​  762 2012-04-18 23:37 codes 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​ 7332 2012-04-18 23:37 compress* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​  640 2012-04-18 23:37 compress.
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​  274 2012-04-18 23:37 data2sample.pl* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​  182 2012-04-18 23:37 decode2.pl* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​ 1173 2012-04-18 23:37 decode.pl* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​  219 2012-04-18 23:37 hid.h 
 +-rw-r--r-- 1 homunkoloss homunkoloss 11445 2012-04-18 23:37 hid_LINUX.c 
 +-rw-r--r-- 1 homunkoloss homunkoloss 11770 2012-04-18 23:37 hid_MACOSX.c 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 3660 2012-04-18 23:37 hid.o 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 8537 2012-04-18 23:37 hid_WINDOWS.c 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 1485 2012-04-18 23:37 Makefile 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​   41 2012-04-18 23:37 plot_bin.sh* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​  258 2012-04-18 23:37 plot.py* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​ 9688 2012-04-18 23:37 rawhid_test* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 2426 2012-04-18 23:37 rawhid_test.
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 2904 2012-04-18 23:37 rawhid_test.o 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​ 2263 2012-04-18 23:37 realraum_codes.pl* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​ 9668 2012-04-18 23:37 reset* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​  869 2012-04-18 23:37 reset.c 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 1344 2012-04-18 23:37 reset.o 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​  458 2012-04-18 23:37 sample2data.pl* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​   48 2012-04-18 23:37 send.sh* 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​   73 2012-04-18 23:37 swap.pl* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​ 1174 2012-04-18 23:44 taste.txt 
 +drwxr-xr-x 3 homunkoloss homunkoloss ​ 4096 2012-04-18 23:37 testdata/ 
 +-rwxr-xr-x 1 homunkoloss homunkoloss ​ 7336 2012-04-18 23:37 uncompress* 
 +-rw-r--r-- 1 homunkoloss homunkoloss ​  518 2012-04-18 23:37 uncompress.c 
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste.txt | ./plot.py 
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste.txt | ./​sample2data.pl 
 +Base 9 
 +011101010111010000001100% ​                                                                                                    ​homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste.txt | ./plot.py 
 +^Z 
 +[1]  + 4205 done       cat taste.txt |  
 +       4206 suspended ​ ./plot.py 
 +20 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % bg 
 +[1]  + 4205 done       cat taste.txt |  
 +       4206 continued ​ ./plot.py 
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste.txt | ./​sample2data.pl > taste-data 
 +Base 9 
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste-data | ./​data2sample.pl 5 | ./plot.py 
 +^C 
 +Traceback (most recent call last): 
 +  File "​./​plot.py"​line 12, in <​module>​ 
 +    pylab.show() 
 +  File "/​usr/​lib/​pymodules/​python2.7/​matplotlib/​backends/​backend_tkagg.py",​ line 79, in show 
 +    Tk.mainloop() 
 +  File "/​usr/​lib/​python2.7/​lib-tk/​Tkinter.py",​ line 328, in mainloop 
 +    _default_root.tk.mainloop(n) 
 +KeyboardInterrupt 
 +1 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] %  
 +1 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste-data | ./​data2sample.pl 5 | ./compress| ./​rawhid_test - 
 +Clearing Buffer 
 +Sending Buffer 63 bytes 
 +66 02 80 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 f0 ff 07 ff 7f f0 ff 07 1f 00 f0 ff 07 1f 00 f0 ff 07 1f 00 f0 ff 07 ff 7f f0 ff 07 1f 00 f0 ff 07 1f 00 f0 01 00 1f  
 +Sending Buffer 19 bytes 
 +66 00 f0 01 00 1f 00 f0 01 00 ff 7f f0 ff 07 1f 00 f0 01 00  
 +Executing Send command
  
-Creating load file for Flashexample.hex +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] % ./​realraum_codes.pl 
-avr-objcopy -O ihex -R .eeprom ​-.fuse -.lock -.signature example.elf example.hex+Usage ./​realraum_codes.pl {pollin,​rsl336t,​weiss,​schwarz} remote parameters at ./​realraum_codes.pl line 28. 
 +255 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​realraum_codes.pl pollin 
 +parameters 00000 {a|b|c|d} {0|1} at ./​realraum_codes.pl line 74. 
 +255 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​realraum_codes.pl pollin 11111 b 1 
 +000000000001000101010001% ​                                                                                                    ​homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​realraum_codes.pl pollin 11111 b 1 | ./​data2sample.pl 5 | ./compress| ./​rawhid_test - 
 +Clearing Buffer 
 +Sending Buffer 63 bytes 
 +66 02 80 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 ff 07 1f 00 f0 01 00 1f 00 f0 ff 07 1f  
 +Sending Buffer 19 bytes 
 +66 00 f0 ff 07 1f 00 f0 ff 07 1f 00 f0 01 00 1f 00 f0 ff 07  
 +Executing Send command
  
-Creating load file for EEPROMexample.eep +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] % ./​realraum_codes.pl pollin 11111 b ./​data2sample.pl 5 ./compress./​rawhid_test - 
-avr-objcopy -j .eeprom --set-section-flags=.eeprom="​alloc,​load"​ \ +Clearing Buffer 
- --change-section-lma ​.eeprom=--no-change-warnings -O ihex example.elf example.eep || exit 0+Sending Buffer 63 bytes 
 +66 02 80 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 01 00 1f 00 f0 ff 07 1f 00 f0 01 00 1f 00 f0 ff 07 1f  
 +Sending Buffer 19 bytes 
 +66 00 f0 ff 07 1f 00 f0 ff 07 1f 00 f0 ff 07 1f 00 f0 01 00  
 +Executing Send command
  
-Creating Extended Listingexample.lss +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] %                                                        
-avr-objdump -h -S -z example.elf ​example.lss+</​pre></​html>
  
-Creating Symbol Table: example.sym 
-avr-nm -n example.elf > example.sym 
  
-Size after: 
-   ​text  ​  ​data  ​   bss     dec     hex filename 
-   ​3604  ​     0     710    ​4314  ​  ​10da example.elf 
  
--------- end --------+===== Pinbelegung ===== 
 +USB-Stick am PC anstecken. Leitung auf D0 legen. 
 +Sender: Datenleitung auf F0, GND auf GND, Vcc auf Vcc.
  
-homunkoloss@vidar ​~/​teensy_workshop/​rf433rcv/​teensy ​(svn)-[rf433rcv:516] % make program + 
-../pc/reset || true + 
-~/​teensy_loader_cli/​teensy_loader_cli ​-mmcu=atmega32u4 -example.hex+ 
 + 
 + 
 + 
 +===== Fehlersuche ===== 
 +==== hidrc kompiliert nicht ==== 
 +=== Fehler === 
 +<​html><​pre>​ 
 +~/​teensy_workshop/​hidrc (svn)-[trunk:16] % make 
 +-------- begin -------- 
 +avr-gcc (GCC) 4.3.5 
 +Copyright (C) 2008 Free Software Foundation, Inc. 
 +Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es 
 +gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE. 
 + 
 + 
 +Compiling C: example.c 
 +avr-gcc -c -mmcu=atmega32u4 ​        ​-I. -gdwarf-2 -DF_CPU=16000000UL -Os -funsigned-char -funsigned-bitfields -ffunction-sections -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,​-adhlns=./​example.lst  -std=gnu99 -MMD -MP -MF .dep/​example.o.d example.c -o example.o  
 +example.c:​38:​20:​ Fehler: keymap.h: Datei oder Verzeichnis nicht gefunden 
 +example.c: In Funktion »__vector_23«:​ 
 +example.c:​110:​ Fehler: »mapping« nicht deklariert (erste Benutzung in dieser Funktion) 
 +example.c:​110:​ Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt 
 +example.c:​110:​ Fehler: für jede Funktion in der er auftritt.) 
 +make: *** [example.o] Fehler 1
 </​pre></​html>​ </​pre></​html>​
  
 +=== Lösung ===
 +~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cp keymap_example.h keymap.h
 +
 +----
 +{{tag>​workshop project}}
realraum Graz, Brockmanngasse 15, 8010 Graz, realraum - Verein für Technik in Kultur und Gesellschaft
  • /var/lib/dokuwiki/data/attic/workshop/rf433ctl_workshop.1334785380.txt.gz
  • Last modified: 2012-04-18 23:43
  • by homunkoloss