- atrf-txrx.c (set_rate, main): allow setting a non-standard high data
rate on the AT86RF231
- atrf-txrx.c (usage, main): added option -r to select the data rate
- atrf-txrx.c (struct ping, enum rx_res, ping_tx, ping_rx, ping): send
back a packet containing a locally generated sequence number and the
last sequence number received whenever a packet arrives
- atrf-txrx.c (usage, main): added option -P to select ping mode
- Makefile: added perdump
- perdump.h, perdump.c: read and analyze a PER dump in pcap format
- per-text.c: report PER test results as text on the console
When some interrupt(s) happened but the one(s) wait_for_interrupt was
waiting for weren't among them, it printed the list of interrupts
even if they were all in "ignore". This made sequences like RX_START
followed by TRX_END unnecessarily noisy.
Now, wait_for_interrupt only prints the pending interrupts if at
least one of them is not in "ignore".
- atrf-txrx.c (usage, main): changed option -B to -P
- atrf-txrx.c (usage): "BER test mode" is now "PER test mode"
- atrf-txrx.c (main): mode_ber is now mode_per
- pcap.h (PCAP_FILE_MAGIC): define the pcap file magic number
- atrf-txrx.c (write_pcap_hdr): use PCAP_FILE_MAGIC instead of open-coding
the magic number
- atrf-txrx.c (main): indicate mode of operation in variable "mode" instead
of dual-using "cont_tx"
- atrf-txrx.c (usage, main): added option -B to enter BER test pattern
transit mode
- atrf-txrx.c (transmit_pattern): transmit raw frames with a cyclic frame
number
- pcap.h: basic pcap file structure definitions
- atrf-txrx.c (usage, main): added option "-o file" to write received
frames to a pcap file instead of displaying them
- atrf-txrx.c (receive): moved code to receive and display a single message
into new function receive_message
- atrf-txrx.c (write_pcap_hdr, write_pcap_rec, receive_pcap): receive
messages into a pcap file
- atrf-txrx.c (usage): split options and arguments for different modi into
separate sections
- atrf-txrx.c (usage): moved details for common options to a separate
section
- atrf-txrx.c (usage): added -C mhz to synopsis
- Makefile.common (MACROS_ben_jlime, MACROS_ben_openwrt), lib/atrf.c
(atrf_open): changed HAVE_USD to HAVE_BEN
- lib/atben.c: changed "uSD version" in title to "Ben 8:10 card version"
- lib/atrf.c, lib/atben.c: changed all occurrences of "atusd" to "atben"
- lib/atusd.c: renamed CLK to SLP_TR
- lib/atusd.c (atusd_cycle, atusd_cycle, atusd_open, atusd_close):
#ifdef'ed all uses of CLK and changed them to SLP_TR (along with the
change in function)
- atrf-txrx/atrf-txrx.c (init_txrx): always use the crystal oscillator
According to the data sheet, it has to be enabled. The Software Model
doesn't mention it. Experiments show that it's indeed useless and just
adds noise.
- atrf-txrx.c (usage, main): added option -C mhz to enable the CLKM output
and to set its frequency
- atrf-txrx.c (init_txrx): if requested, enable CLKM and set to maximum
drive strength
- atrf-txrx.c (init_txrx): unmask all interrupts for 231 compatibilit,
where masked interrupts are now indicated in IRQ_STATUS
- atrf-txrx.c (init_txrx): on the 231, wait for (and clear) the CCA_ED_DONE
interrupt when entering TRX_OFF after reset
- tools/Makefile (upload): make destinastion host name ("ben" or "jlime")
depend on TARGET
- tools/Makefile.common (CC_ben, CFLAGS_ben, LDLIBS_ben, MACROS_ben):
renamed to *_openwrt and added *_jlime equivalents
- tools/atrf-rssi/Makefile: added settings to use SDL_gfx on Jlime
- tools/lib/Makefile (OBJS_ben): renamed to OBJS_ben_openwrt and added
OBJS_ben_jlime
- atrf-txrx.c (test_mode): moved test mode setup to enter_test_mode_230
- atrf-txrx.c (enter_test_mode_231): enter test mode on AT86RF231 (untested)
- atrf-txrx.c (test_mode): reset AT86RF231 register 0x1c when leaving
- atrf-txrx.c (tx_pwr, tx_pwr_230, tx_pwr_231, set_power): table of power
values depends on chip
- atrf-txrx.c (set_power): location of TX_AUTO_CRC_ON and use of
REG_PHY_TX_PWR depends on chip
- tools/lib/atrf.h, tools/lib/atrf.c (atrf_identify): added chip
identification function to library
- tools/atrf-id/atrf-id.c (show_info): print information returned by
atrf_identify
- tools/atrf-id/atrf-id.c (show_info): decode JEDEC manufacturer ID
- tools/atrf-*/atspi-*.c: renamed to atrf-*.c
- tools/atrf-*/Makefile (MAIN): updated name of program
- tools/atrf-*/*.c: updated path in title comment
- tools/atspi-id/: renamed to atrf-id
- tools/atspi-reset/: renamed to atrf-reset
- tools/atspi-rssi/: renamed to atrf-rssi
- tools/atspi-trim/: renamed to atrf-trim
- tools/atspi-txrx/: renamed to atrf-txrx
- tools/Makefile: renamed directories from atspi-* to atrf-*
e lib/misctxrx.o
- atspi-txrx/atspi-txrx.c (usage): rearranged description of -T
- atspi-txrx/atspi-txrx.c (usage, main): option -f freq to specify the
channel by frequency
- atspi-txrx/atspi-txrx.c (set_power): make enabling the CRC optional
(this is necessary for test mode, which doesn't seem to work if the CRC
is selected)
- atspi-txrx/atspi-txrx.c (test_mode): emit a constant wave in test mode
- atspi-txrx/atspi-txrx.c (usage, main): new option -T <delta> to emit a
constant wave -2 MHz, -0.5 MHz, or +0.5 MHz from the nominal carrier
frequency
- include/atspi.h, lib/atspi.c: new function atspi_test_mode to enter test
mode
- lib/driver.h (struct atspi_driver): add backend function test_mode
- lib/atusb.c (atusb_test_mode), lib/atusb.c (atusb_driver): enter test
mode
- lib/atusd.c (atusd_driver): test mode is not supported
- atspi-rssid/gui.c (sweep, label_channels): moved geometry values to
#defines
- atspi-rssid/gui.c (CBIG, CSMALL, label_channels): moved color values to
#defines
- tools/Makefile.common: CFLAGS and OBJS can now be target-specific
- tools/atspi-rssi/Makefile: add SDL, SDL_gfx, and the GUI object files
when building on the host
- tools/atspi-rssi/Makefile: set -DHAVE_GFX when building on the host
- tools/atspi-rssi/atspi-rssi.c (usage, main): new option -g to use GUI
mode
- tools/atspi-rssi/atspi-rssi.c (main): rename variable for the number of
sweeps in non-GUI mode from "sweeps" to "arg", since it may have other
uses in the future
- tools/atspi-rssi/digit.h, tools/atspi-rssi/digit.c: draw 7 segment style
digits
- tools/atspi-rssi/zgrid.h, tools/atspi-rssi/zgrid.c: display a surface in
faux 3D with SDL/SDL_gfx
- tools/tools/atspi-rssi/gui.h, tools/atspi-rssi/gui.c: display RSSI scans
as a scrolling 3D profile
- atrf/: rename to atusb/
- atrf/wpan-atrf.pro, atrf/wpan-atrf.sch, atrf/wpan-atrf.brd,
atrf/wpan-atrf.cmp: rename to atusb.*
- atrf/Makefile: change ben-wpan to atusb
- atrf/atusb.pro (LastNetListRead): update for name change
- tools/Makefile.common (CFLAGS): change fw/ include location from atrf/
to atusb/
if it differs by more than 0.01 dBm from the level specified
- tools/atspi-txrx/Makefile (LDLIBS): added -lm, for fabs()
- tools/atspi-txrx/atspi-txrx.c (transmit, usage, main): add optional
command-line argument with the number of times to send the message
- tools/atspi-txrx/atspi-txrx.c (receive, transmit, die, main): return and
clean up on ^C
- tools/tools/lib/misctxrx.c (wait_for_interrupt) return and raise SIGINT
for the caller's signal handler on ^C
- atrf/fw/include/atspi/ep0.h enum atspi_requests), atrf/fw/atspi/ep0.c
(my_setup): new command ATSPI_POLL_INT to poll IRQ_RF
- atrf/fw/atspi/ep0.c (my_setup): ATSPI_BUILD sent one byte too many
- tools/lib/atusb.c (atusd_interrupt, atusb_driver): implemented interrupt
polling
- tools/lib/atusd.c: added section title for the RF interrupt function
- tools/atspi-rssi/atspi-rssi.c: removed unnecessary inclusion of
atspi/ep0.h
- tools/atspi-rssi/atspi-rssi.c (sweep): instead of fixed delay, wait for
the PLL lock interrupt
- tools/atspi-rssi/atspi-rssi.c (die, main): catch SIGINT to exit cleanly
- tools/atspi-rssi/atspi-rssi.c (main): shut down properly when done
- tools/atspi-rssi/atspi-rssi.c (usage): print "usage:" before the program's
name