1
0
mirror of git://projects.qi-hardware.com/ben-wpan.git synced 2024-11-25 23:31:54 +02:00
Commit Graph

606 Commits

Author SHA1 Message Date
Werner Almesberger
da6677b3d9 atusb/fw3/: adaptation of the f32xbase USB stack 2011-02-13 23:46:36 -03:00
Werner Almesberger
f4d299d22b atusb/fw3/an/: USB debugging scripts 2011-02-13 23:00:35 -03:00
Werner Almesberger
c1dc00ee44 fw2/Makefile: dependencies, verbosity control, cleanup
- Makefile (SHELL): require bash for PIPESTATUS used for dependencies
- Makefile: added copyright header
- Makefile: added section titles
- Makefile: added verbosity control
- Makefile: added automatic dependency generation
- Makefile (clean): also remove .d files
2011-02-11 09:42:21 -03:00
Werner Almesberger
075c379d21 fw2/Makefile: cleaned up FreakUSB object file location
The Makefile didn't see the FreakUSB object files at the expected place,
so it always rebuild them.

- Makefile (USB_OBJS): removed paths from object file names
- Makefile: added vpaths for the FreakUSB source file locations
- Makefile (atusb.elf, clean): we no longer need $(notdir ...) for the
  object files
2011-02-11 09:10:53 -03:00
Werner Almesberger
85612e5150 fw2/Makefile: use the ATmega32U2 configuration (experimental) of avrdude
- Makefile (prog): use $(CHIP) instead of $(CHIP_AVRDUDE)
- Makefile (CHIP_AVRDUDE): removed
2011-02-11 08:53:11 -03:00
Werner Almesberger
1d6fbcbd21 atrf-id.c (show_usb_info): pretty-print the MCU type for ATUSB boards 2011-02-10 23:43:36 -03:00
Werner Almesberger
19926ae32f tools/lib/Makefile (clean): didn't remove Ben-specific object files
- tools/lib/Makefile (clean): $(OBJS_ben) is now $(OBJS_ben_jlime) and
  $(OBJS_ben_openwrt)
2011-02-10 23:21:31 -03:00
Werner Almesberger
b0c15b7e7c tools: give the driver control over CLKM (for ATmega32U2 boards)
- include/atrf.h (atrf_set_clkm), lib/atrf.c (atrf_set_clkm): set or
  disable CLKM
- lib/driver.h (atrf_set_clkm_generic), lib/atrf.c (atrf_set_clkm_generic):
  generic function to set CLKM without restrictions
- lib/driver.h (struct atrf_driver): added driver operation "set_clkm"
  to set CLKM
- lib/atusb.c (atusb_set_clkm, atusb_driver): restrict CLKM on ATmega32U2
  boards
- atrf-txrx/atrf-txrx.c (init_txrx): use atrf_set_clkm to set CLKM
- atrf-txrx/atrf-txrx.c (init_txrx, main): pass CLKM frequency in MHz
  instead of code point
2011-02-10 23:11:34 -03:00
Werner Almesberger
e73ca5fcd5 tools/lib: cache chip ID in the descriptor
- atrf.c (struct atrf_dsc): added field "chip_id" to cache chip ID
- atrf.c (identify, atrf_identify): moved identification logic to new
  function
- atrf.c (atrf_open, atrf_identify): cache chip ID when opening the
  device and return ID from cache
2011-02-10 21:15:05 -03:00
Werner Almesberger
f8fbb02bb0 atusb/fw2: further abstract board functions
- atusb.c (main), board.h (board_init), board.c (board_init): moved
  clock and I/O initialization to board file
- board.h (led), board.c (led), atusb.c (main): abstracted LED setting
  in function "led" instead of open-coding it
- spi.c (spi_init): set nSS to 1 before enabling the output, so that we
  don't generate what looks like an empty SPI transaction
2011-02-10 20:49:23 -03:00
Werner Almesberger
509542af73 atusb.brd: draw in bottom edge by 5 mil to prevent touching the connector 2011-02-10 14:40:56 -03:00
Werner Almesberger
69684413ad atusb.brd: small layout improvements, mainly for solderability
- atusb.brd: moved C14 and adjacent via 10 mil away from the transceive,
  for improved solderability
- atusb.brd: moved nRST_RF via and trace by 5 mil, for better access to
  the trace
- atusb.brd: reduced crystal front ground zone such that it does not
  creep under XTAL2 corner (where it might meet exposed metal)
2011-02-10 14:10:15 -03:00
Werner Almesberger
e8b68041a5 atusb/fw2: autonomously restore the clock output settings after an RF reset
- atusb.c (main), board.c (set_clkm): moved CLKM initialization to
  board.c
- board.c (reset_rf): initialize the CLKM after each transceiver reset
2011-02-10 10:05:38 -03:00
Werner Almesberger
3e9f9613cb atusb/fw2: added proper support for interrupt polling
- board.h (read_irq), board.c: return status of the RF IRQ
- board.h (PIN, PIN_1, PIN_2): macros to read port pins
- ep0.c (my_setup): make ATUSB_POLL_INT return the real interrupt
2011-02-10 07:42:34 -03:00
Werner Almesberger
dcfa689936 atusb/fw2/: assigned hardware revision code point; some cleanup
- fw/include/atusb/ep0.h (HW_TYPE_110131): defined hardware type 2 for
  ATmega32U2-based boards
- fw/ep0.c: define HW_TYPE as HW_TYPE_110131, not directly as 2
- fw2/atusb.c: include atusb/ep0.h instead of declaring ep0_init locally
2011-02-10 07:24:37 -03:00
Werner Almesberger
4f0af39d4d atusb/fw2/: move board-specific items to board-specific file
- io.h: renamed to board.h
- Makefile (OBJS): added board.o
- atusb.c (reset_rf): moved to board.c
- board.h (reset_rf): give reset_rf a proper declaration
- atusb.c, ep.c, spi.c: include board.h instead of io.h
2011-02-10 07:19:55 -03:00
Werner Almesberger
6969e7d689 atusb/fw2/ep0.c: make commands needed for sending work
- ep0.c (do_usb_recv, usb_recv): implemented creepy buffer reception
- ep0.c (my_setup): added dummy for ATUSB_POLL_INT (always return 0)
- ep0.c (my_setup): send a zero-length packet at the end of
  ATUSB_RF_RESET and ATUSB_REG_WRITE to indicate status stage
2011-02-10 07:01:28 -03:00
Werner Almesberger
dadc683d71 atusb/cam/mkmk: updated board parameters for latest run
This sort of data really ought to live somewhere locally ...
2011-02-10 06:50:22 -03:00
Werner Almesberger
ec21e4ba47 atusb/fw2: support device -> host side of the ATUSB EP0 protocol
- ep0.c: the ATUSB EP0 protocol engine
- Makefile (OBJS): added ep0.o
- atusb.c (main): initialize the EP0 protocol
- spi.h: whitespace cleanup

usb/patches/support-vendor-requests.patch:

- usb/ctrl.c (ctrl_handler): also pass vendor-specific requests to the
  class handler
- class/CDC/cdc.c (cdc_req_handler): reject vendor requests
2011-02-08 23:53:25 -03:00
Werner Almesberger
06f6174966 fw2/usb/patches/correct-array-size.patch: correct memset in ctrl_get_status
This caused lsusb -v to fail with
cannot read device status, Broken pipe (32)
2011-02-08 23:16:09 -03:00
Werner Almesberger
1c004ee2d2 atusb/fw2: moved board-specific functions (SPI, RF reset) out of main()
- Makefile (OBJS): added spi.o
- spi.h, spi.c, atusb.c: moved SPI functions to new file
- spi.h (spi), spi.c (spi), atusb.c (main): renamed function "spi" to
  "spi_io"
- atusb.c (reset_rf, main): moved transceiver reset to separate function
2011-02-08 21:32:24 -03:00
Werner Almesberger
259400fdb8 atusb/fw2: firmware for the AVR-based atusb (in progress)
- ./: basic framework to build a firmware that can enumerate
- usb/patches/: patches to make FreakUSB 0.7 compile cleanly and to make
  it work in our context
2011-02-08 19:32:15 -03:00
Werner Almesberger
bb2894f293 atben: straightened traces inside 8:10 card slot to reduce risk of shorts
- atben.brd: make traces inside 8:10 card slot go straight as long as
  possible, to avoid shorts with exposed contacts
- atben.brd: removed "IEEE 802.15.4" and "CC-BY-SA" from copper layer
- atben.brd: reduced date code to two-digit year
- atben.brd: bumped version to 20110207
2011-02-07 07:41:26 -03:00
Werner Almesberger
ecd9f4a038 atusb-pgm: leave CLK unused (reserved for boards needing an external clock)
- atusb-pgm.sch: moved nRESET from DAT0 to DAT1
- atusb-pgm.sch: moved the LED from CLK to DAT0
- atusb-pgm.brd: updated for above changes
2011-02-04 04:14:29 -03:00
Werner Almesberger
0e11d58468 atusb-pgm: changed pogo pad footprint from 60 mil diameter to 80 mil (PAD_80x80) 2011-02-03 13:52:49 -03:00
Werner Almesberger
4521837dff atusb-pgm: programming adapter that connects to the Universal Breakout Board 2011-02-03 03:47:48 -03:00
Werner Almesberger
b323100c40 atmega8u2.lib (PB2): end list of pin names with a slash if wrapped 2011-02-01 05:01:27 -03:00
Werner Almesberger
5a9ec34420 qfn.fpd: added draft for Atmel VQFN28 (ATmega48) 2011-01-31 18:53:21 -03:00
Werner Almesberger
847b3546d9 usb.sch: cleanup and track layout
- usb.sch: cleaned up programming/auxiliary/LED signals
- usb.sch: swapped LED and nRST_RF (tracking the layout)
- atusb.brd: updated for corrected netlist
2011-01-31 11:52:30 -03:00
Werner Almesberger
8e842bab8e atusb.brd: ground zone adjustments; corrected date code location
- atusb.brd: moved date code which overlapped with traces
- atusb.brd: reduced front RF and power ground zones to avoid ground
  fill between transceiver pads
- atusb.brd: added ground traces around crystal to widen ground zone
2011-01-31 11:41:07 -03:00
Werner Almesberger
ebaffb53e4 usb.sch: corrected symbol name 2011-01-31 05:08:36 -03:00
Werner Almesberger
d8dfb509ac atusb: new layout for the ATmega32U2
- atusb.pro, atusb.cmp: updated for ATmega32U2-based design
- usb.sch: rearranged LED, nRST_RF, and SLP_TR, to make layout easier
- atusb.brd: redid layout for the ATmega32U2-based design
2011-01-31 04:57:02 -03:00
Werner Almesberger
318f29c5d5 atusb: cleaned up USB schematics
- usb.sch: renumbered test points for serial programming
- usb.sch: moved everything down to make room on top
- usb.sch: moved description of pad placement near the pads
- usb.sch: added footprint of U1
2011-01-28 03:54:38 -03:00
Werner Almesberger
ded90eff5f atben/cam/mkmk: updated for latest board parameters 2011-01-28 03:48:03 -03:00
Werner Almesberger
6aa4e30833 atusb: replaced the C8051F326 with an ATmega32U2 (still needs cleanup)
- atusb.pro (LibName5): changed from c8051f326 to atmega8u2
- atrf.sch: export CLKM and added filter for 8 MHz clock
- atusb.sch: connect CLK between RF and USB side
- usb.sch: changed design frim C8051F326 to ATmega32U2 (needs cleanup)
2011-01-28 03:42:35 -03:00
Werner Almesberger
5b9263ba02 Added ATmega8U2/16U2/32U2 schematics symbol.
- BOOKSHELF (atmega232u2): added aliases atmega8u2 and atmega16u2
- AUTHORS, modules/INFO, modules/atmega8u2.lib, modules/atmega8u2.dcm:
  added ATmega8U2 family symbol
2011-01-28 02:42:26 -03:00
Werner Almesberger
14b00823b0 atben.sch: corrected typo "sLP_TR" 2011-01-28 02:08:36 -03:00
Werner Almesberger
e6b0ee5655 atusb/cam/mkmk: updated for latest board parameters 2011-01-28 02:05:52 -03:00
Werner Almesberger
50bd38c13e atusb/cam/mkmk: move project name to central NAME variable
Also prematurely updated alignment, oops.
2011-01-23 15:51:16 -03:00
Werner Almesberger
dda673e8bf atusb.brd: updated balun footprint
- atusb.brd: updated 0805-6 footprint of the balun and rearranged its
  surroundings accordingly
2011-01-23 15:23:38 -03:00
Werner Almesberger
e9be00703f atben.brd: updated balun footprint, some small touch-ups
- atben.brd: updated 0805-6 footprint of the balun and rearranged its
  surroundings accordingly
- atben.brd: rearranged boundary between RF and power ground zones
- atben.brd: moved vias "south" of the balun by 5 mil
- atben.brd: moved component references C10, C11, and X1 such that
  they're not convered by comment lines
- atben.brd: broke up comment line "east" of X1 to avoid overlap with C10
  and C11 pads
- atben.brd: shifted author's name to make crossing lines coincide with
  vertical strokes in letters
2011-01-23 14:53:29 -03:00
Werner Almesberger
1c573d2a62 0805-6.fpd: changed from package-based definition to follow Johanson's design 2011-01-23 14:51:50 -03:00
Werner Almesberger
daaac58f88 atben, atusb: set solder mask and solder paste clearances to NXP's values
Settings according to
http://www.nxp.com/documents/mounting_and_soldering/AN10365.pdf

- atben.pro, atben.brd, atusb.pro, atusb.brd: set solder mask clearance
  to 50 um (copper-defined pads)
- atben.pro, atben.brd, atusb.pro, atusb.brd: set solder paste clearance
  to 25 um
2011-01-23 11:43:08 -03:00
Werner Almesberger
b0a5a0cad7 atusb.brd: some more cleanup after checking the gerbers
- atusb.brd: enabled back solder mask layer, just in case
- atusb.brd: rearranged references and values for printing/display
2011-01-23 11:25:53 -03:00
Werner Almesberger
84278c8e2b atben.brd: rearranged component references and values for printing/display
- atben.brd: moved component references for proper printing on silk screen
- atben.brd: moved component values for easy display (do not print on
  silk screen !)
- atben.brd: removed unused back silk screen and back solder paste layer
2011-01-23 11:11:50 -03:00
Werner Almesberger
83b903d71b atben.brd, atusb.brd: added design name (ATBEN, ATUSB) to silk screen text 2011-01-23 01:50:49 -03:00
Werner Almesberger
bcc8ea7f2f atusb.sch, atrf.sch, usb.sch, atusb.brd: bumped version to 20110123 2011-01-23 01:48:31 -03:00
Werner Almesberger
1b5abff8ba atusb.brd: added title, origin, and license on silk screen layer 2011-01-23 01:42:03 -03:00
Werner Almesberger
1f959d9873 atusb: updated C8051F326 and AT86RF321 footprints
- usb.sch, atusb.cmp, atusb.brd: updated C8051F326 footprint
- atrf.sch, atusb.cmp, atusb.brd: updated AT86F231 footprint
- atusb.brd: redid some traces that mysteriously got disconnected
2011-01-23 01:32:14 -03:00
Werner Almesberger
714295955f atben.sch, atben.brd: bumped version to 20110123 2011-01-23 01:21:30 -03:00