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
Last revision Both sides next revision
workshop:rf433ctl_workshop [2012-04-18 23:40]
homunkoloss
workshop:rf433ctl_workshop [2015-09-23 02:04]
xro
Line 1: Line 1:
-====== Workshop mit dem geilen Otti ====== +====== Workshop: Mikrocontrollerprogrammierung ​mit teensy ​====== 
-====== ​hidrc ====== +====== ​Vorbereitung ​====== 
-====== Einrichtung ====== +Es müssen folgende Pakete installiert werden: ​ 
-===== Kommandos lernen ===== +<code>~ % sudo apt-get install subversion gcc-avr avr-libc build-essential ​
-<html><​pre>​ +avrdude binutils-avr libusb-dev python-matplotlib</​code>​ 
-~ % sudo apt-get install subversion gcc-avr avr-libc build-essential avrdude binutils-avr libusb-dev python-matplotlib+ 
 +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 -------- +
-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.+
  
 +Ansicht von vorne (Runde empfänger Teil sichtbar)
 +<​html><​pre>​
 +_________
 +|       |
 +|   ​O ​  |
 +|       |
 +---------
 +|   ​| ​  |
 +|   ​| ​  |
 +D  Gnd Vcc
 +</​pre></​html>​
  
-Compiling C: example.c +==== Quellcode herunterladen ​==== 
-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 % svn checkout https://krypta.wirdorange.org/svn/​hidrc/​trunk hidrc 
-Compiling C: usb_keyboard_debug.c +~/​teensy_workshop % cd hidrc 
-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 ​ +</pre></html>
- +
-Compiling Cprint.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 ​ +
- +
-Linking: example.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 -h -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 --------+
  
 +==== hidrc kompilieren ====
 +<​html><​pre>​
 +~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % cp keymap_example.h keymap.h
 +~/​teensy_workshop/​hidrc (svn)-[trunk:​16] % make
 ~/​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 79:
 ^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 ​
-homunkoloss@vidar ~ % ll +homunkoloss@vidar ~ % ls -l 
-insgesamt 756 +[...]
--rw-r--r-- ​ 1 homunkoloss homunkoloss ​ 33809 2011-10-18 19:22 Adressbuch.vcf +
-drwxr-xr-x ​ 6 homunkoloss homunkoloss ​  4096 2012-04-18 22:36 Arbeitsfläche/​ +
-drwxr-xr-x ​ 2 homunkoloss homunkoloss ​  4096 2012-01-29 17:30 Audiobooks/​ +
-drwxr-xr-x ​ 7 homunkoloss homunkoloss ​  4096 2012-04-15 12:25 Bilder/ +
-drwxr-xr-x 15 homunkoloss homunkoloss ​  4096 2012-04-18 08:16 Dokumente/​ +
-drwxr-xr-x 15 homunkoloss homunkoloss ​ 12288 2012-04-18 22:44 Downloads/​ +
-drwx------ ​ 5 homunkoloss homunkoloss ​  4096 2012-04-18 22:31 Dropbox/ +
-drwxr-xr-x ​ 2 homunkoloss homunkoloss ​  4096 2011-08-30 18:24 install/ +
--rw-r--r-- ​ 1 homunkoloss homunkoloss ​ 18179 2011-09-02 20:11 Installation.odt +
--rw-r--r-- ​ 1 homunkoloss homunkoloss ​   404 2011-09-02 19:55 install.sh +
--rw-r--r-- ​ 1 homunkoloss homunkoloss ​   173 2012-02-13 23:07 Leseempfehlung_gimpf.txt +
-drwxr-xr-x ​ 5 homunkoloss homunkoloss ​  4096 2012-03-30 15:06 Musik/ +
-drwxr-xr-x ​ 2 homunkoloss homunkoloss ​  4096 2011-08-28 22:17 Öffentlich/​ +
-drwx------ ​ 2 homunkoloss homunkoloss ​  4096 2012-03-28 15:26 PDF/ +
-drwxr-xr-x ​ 2 homunkoloss homunkoloss ​  4096 2012-01-29 17:30 Podcasts/ +
--rw-r--r-- ​ 1 homunkoloss homunkoloss 502977 2011-10-04 22:07 Protokoll\ 24.1.2011.docx +
-drwxr-xr-x ​ 4 homunkoloss homunkoloss ​  4096 2012-03-23 12:23 QualtingerLiestMeinKampf/​ +
--rw-r--r-- ​ 1 homunkoloss homunkoloss ​ 42165 2012-03-03 15:43 realraum_flyer.sla +
-drwxr-xr-x ​ 4 homunkoloss homunkoloss ​  4096 2012-01-24 18:36 share.ffgraz.net:​8080/​ +
-drwxr-xr-x ​ 2 homunkoloss homunkoloss ​  4096 2011-12-09 15:28 sketchbook/+
 lrwxrwxrwx ​ 1 homunkoloss homunkoloss ​    39 2012-04-18 23:39 teensy_loader_cli -> teensy_workshop/​hidrc/​teensy_loader_cli/​ lrwxrwxrwx ​ 1 homunkoloss homunkoloss ​    39 2012-04-18 23:39 teensy_loader_cli -> teensy_workshop/​hidrc/​teensy_loader_cli/​
 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/​
-drwxrwxr-x ​ 2 homunkoloss homunkoloss ​  4096 2012-01-29 16:14 Ubuntu\ One/ +[...] 
-drwxr-xr-x ​ 5 homunkoloss homunkoloss ​  4096 2012-04-18 23:11 Videos/ +
-drwxr-xr-x ​ 5 homunkoloss homunkoloss ​  4096 2012-03-27 22:50 VirtualBox\ VMs/ +
-drwxr-xr-x ​ 2 homunkoloss homunkoloss ​  4096 2011-08-28 22:17 Vorlagen/ +
--rw-r--r-- ​ 1 homunkoloss homunkoloss ​ 10775 2012-01-02 12:50 Weihnachtsferien.mm+
 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/​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>​
 +
 +===== Variante Easy =====
 +{{:​workshop:​rf-433-proto.jpg|}}
 +<​html><​pre>​
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​autotaste.sh 0 > taste.txt
 +/​tmp/​tmp.Kbk5QqjpWm
 +/​tmp/​tmp.Id0D1V7c7e
 +/​tmp/​tmp.UVg5C9GFzd
 +0:
 +1 47
 +
 +
 +
 +10 189
 +11 
 +12 2
 +27 
 +28 220
 +29 
 +30 10
 +31 
 +284 
 +285 17
 +286 
 +1:
 +
 +2 26
 +
 +
 +5 33
 +
 +
 +8 219
 +
 +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>​
 +
 +===== Beschreibung der einzelnen Schritte =====
 +Autotaste: Versucht eine Periode herauszufiltern,​ schneidet den Rest weg.
 +./​rawhid_test:​ Rohes Signal aufnehmen, auf 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.
 +
 +<​html><​pre>​
 +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
 +
 +FN=`mktemp`
 +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 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ll
-insgesamt ​376+insgesamt ​388
 -rwxr-xr-x 1 homunkoloss homunkoloss ​  261 2012-04-18 23:37 autotaste.sh* -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 -rw-r--r-- 1 homunkoloss homunkoloss ​  762 2012-04-18 23:37 codes
Line 274: Line 248:
 -rwxr-xr-x 1 homunkoloss homunkoloss ​   48 2012-04-18 23:37 send.sh* -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* -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/ 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* -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 -rw-r--r-- 1 homunkoloss homunkoloss ​  518 2012-04-18 23:37 uncompress.c
-homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cd ../teensy +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste.txt | ./plot.py 
-homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​teensy ​(svn)-[rf433rcv:​516] % ll +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % cat taste.txt | ./​sample2data.pl 
-insgesamt 88 +Base 9 
--rw-r--r-- 1 homunkoloss ​homunkoloss ​ 6462 2012-04-18 23:37 example.c +011101010111010000001100% ​                                                                                                    homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] % cat taste.txt | ./plot.py 
--rw-r--r-- ​1 homunkoloss ​homunkoloss 16964 2012-04-18 23:37 Makefile +^Z 
--rw-r--r-- 1 homunkoloss ​homunkoloss 23192 2012-04-18 23:37 usb_rawhid.c +[1]  + 4205 done       cat taste.txt |  
--rw-r--r-- ​1 homunkoloss ​homunkoloss ​ 2627 2012-04-18 23:37 usb_rawhid.h +       4206 suspended ​ ./plot.py 
-homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​teensy ​(svn)-[rf433rcv:​516] % make+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] %  
 +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
  
--------- begin -------- +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​realraum_codes.pl 
-avr-gcc ​(GCC4.3.5 +Usage ./​realraum_codes.pl {pollin,​rsl336t,​weiss,​schwarz} remote parameters at ./​realraum_codes.pl line 28. 
-Copyright ​(C2008 Free Software Foundation, Inc. +255 homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc ​(svn)-[rf433rcv:​516] % ./​realraum_codes.pl pollin 
-Dies ist freie Software; die Kopierbedingungen stehen in den QuellenEs +parameters 00000 {a|b|c|d} {0|1} at ./​realraum_codes.pl line 74. 
-gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE.+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
  
 +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:​516] % ./​realraum_codes.pl pollin 11111 b 0 | ./​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 ff 07 1f 00 f0 01 00 
 +Executing Send command
  
-Compiling Cexample.c +homunkoloss@vidar ~/​teensy_workshop/​rf433rcv/​pc (svn)-[rf433rcv:516] %                                                        
-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  +</pre></html>
-example.c:​52:​ Warnung: Funktionsdeklaration ist kein Prototyp+
  
-Compiling C: usb_rawhid.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=./​usb_rawhid.lst ​ -std=gnu99 -MMD -MP -MF .dep/​usb_rawhid.o.d usb_rawhid.c -o usb_rawhid.o ​ 
  
-Linking: example.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_rawhid.o --output example.elf -Wl,​-Map=example.map,​--cref -Wl,--relax -Wl,​--gc-sections ​    -lm 
  
-Creating load file for Flash: example.hex +===== Pinbelegung ===== 
-avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature example.elf example.hex+USB-Stick am PC ansteckenLeitung auf D0 legen. 
 +Sender: Datenleitung auf F0, GND auf GND, Vcc auf Vcc.
  
-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 -h -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 
-   ​3604  ​     0     710    ​4314  ​  ​10da example.elf 
  
--------- end -------- 
  
-homunkoloss@vidar ​~/​teensy_workshop/​rf433rcv/​teensy ​(svn)-[rf433rcv:516] % make program + 
-../pc/reset || true +===== Fehlersuche ===== 
-~/​teensy_loader_cli/​teensy_loader_cli ​-mmcu=atmega32u4 -example.hex+==== 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/pages/workshop/rf433ctl_workshop.txt
  • Last modified: 2015-09-24 13:29
  • by xro