This is an old revision of the document!


Workshop mit dem geilen Otti

hidrc

Einrichtung

~ % sudo apt-get install subversion gcc-avr avr-libc build-essential avrdude binutils-avr libusb-dev python-matplotlib ~ % mkdir teensy_workshop ~ % cd teensy_workshop ~/teensy_workshop % svn checkout https://krypta.wirdorange.org/svn/hidrc/trunk hidrc 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 ——– 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 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. 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 Compiling C: usb_keyboard_debug.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_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 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 ——– ~/teensy_workshop/hidrc (svn)-[trunk:16] % cd teensy_loader_cli …eensy_workshop/hidrc/teensy_loader_cli (svn)-[trunk:16] % make cc -O2 -Wall -s -DUSE_LIBUSB -o teensy_loader_cli teensy_loader_cli.c -lusb …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 gcc -O2 -Wall -DLINUX -c -o hid_listen.o hid_listen.c gcc -O2 -Wall -DLINUX -c -o rawhid.o rawhid.c rawhid.c:53:45: warning: assertions are a deprecated extension gcc -o hid_listen hid_listen.o rawhid.o strip hid_listen ~/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 /etc/init.d/udev reload Rather than invoking init scripts through /etc/init.d, use the service(8) utility, e.g. service udev reload Since the script you are attempting to invoke has been converted to an Upstart job, you may also use the reload(8) utility, e.g. reload udev ~/teensy_workshop/hidrc (svn)-[trunk:16] % make program ./teensy_loader_cli/teensy_loader_cli -mmcu=atmega32u4 -w example.hex ~/teensy_workshop/hidrc (svn)-[trunk:16] % cd hid_listen ~/teensy_workshop/hidrc/hid_listen (svn)-[trunk:16] % ./hid_listen Waiting for device: Listening: start 722EEDD1 722EEDD1 722EEDD1 722EEDD1 722EEDD1 ^C 130 ~/teensy_workshop/hidrc/hid_listen (svn)-[trunk:16] % vim ../keymap.h Keycode eintragen 722EEDD1 → 0x72,0x2E,0xED,0xD1 0x72,0x2E,0xED,0xD1,Key, Modifier, 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**

realraum Graz, Brockmanngasse 15, 8010 Graz, realraum - Verein für Technik in Kultur und Gesellschaft
  • /var/lib/dokuwiki/data/attic/workshop/rf433ctl_workshop.1334784315.txt.gz
  • Last modified: 2012-04-18 23:25
  • by homunkoloss