wl: update to unit tests, still doesn't work
update to test cases in trunk
New version of cicle_spacing. (It works now...). Before merging with circle.
Made Wireless_test compile and run. Report so far:Initialization works.Function registration works.XBee functions fail (David is fixing this).Sending packets in fast mode works.Termination fails with -2. Probably XBee related.
Cleaned up a few comments
Added behavior for ACK groups, which is still undeveloped and should be ignored. The folder Wireless_test is the program used to test the new wireless library and all its functions. It is still under development, but should be partially functional. It can currently test library initialization, function registration, and wireless termination.
This code changed the way that the Edges move toward the Center bot, I stopped using Han Jongs methods and added the methods correctTurn, correctApproach is still not functional, also I changed the color skeem for the orbs, going to center is still buggy.
wl: clean up unit tests
wl: the library fully compiles with all functions written
fixed references to handler array, wireless_receive compiles now
fixed handler array in wireless.c
I think this is John's code
Updated basic receive function and wrote handler dispatch function. The latter doesn't compile, but most of this directory doesn't.
wl updates: compile issues; now finished (for now)
Updated counting robots to work for circle formation. Movement is problematic.
wl updates: compile issues
Added wrappers to wireless_send.c. Need double checking.
Added diagnostic server stuff.
wireless: software retransmit done. serial functions moved to xbee.c
Small changes.. I definitely wouldn't use this for anything yet.
Added some test files for fixed point math.
Something definitely broke in cosine when I changed to smaller tables (which shouldn't have sacrificed any accuracy). Need to investigate...
wireless: more xbee.c updates
wireless: xbee update. still not finished, but the major changes are in here. Also added a function for microsecond delays to time.c
Added rangefinders directory to tools.
Added new software for basic analysis of IR data to be used with the IRcycle.c tool. Native Windows build only for the time being.
implemented wireless init, terminate, register, and unregister
Getting versions of circle.c in sync
Added comments and minor changes to circle.c
Removing the old circle-circle2 versions of the code (2)
Removing the old circle-circle2 versions of the code
removed .a library files from the repository. These will be automatically generated by the Makefile now
Included working functionality for Beacon to get acks from each robot.
wireless: update to the receive buffers
wireless: changed packet handler function notation
Wrote basic receive function in wireless_receive.c. Added an error code forhaving too short of a packet destination for basic receive function (maybe canalso be used by other packet handlers) in wl_defs.h. Added packet buffers forbasic packets and other types of packets in xbee.c.
wireless: added define for basic group
wireless: core send function and ack function done
Implementation of exponential. Not tested, don't even know if it works at all.
Cut the trig table sizes in 4 w/ symmetry, etc.
Lazy implementations of sine and tangent (that justuse cosine indirectly).
Addressed edge cases.
Needs EXTENSIVE testing to get a good grip on error bounds.
wireless branch, doxygen fix
corrected doxygen issue in wireless branch
Clarified description of the usrBOMvals variable for the bom_get_vector() funcions.
editing wireless branch, added error codes and constants
Tried to use bom_get_vector instead of bom_get_max.It works for the master (still need works), not for the slave (still need to figure out why)
Initial pass at a 32-bit fixed point library.
- Generated cosine / sine tables, put them in PROGMEM
- Wrote initial quadratic interpolation cosine function. ... not safe to use yet, but it seems to work for non-edge cases. Need to write a better way to test it.
added doxygen info for wireless branch
update to wireless api, added comments
added prototypes for the public api functions for the new wireless library
creating backup of libwireless in wireless branch
svn is being wonky...
Changes to the scheduler, still doesn't work.avr-gcc has its own convention for saving stateon entry and exit that's the same every time, soI lean on this now to restore the context.
I think that it's very close, my guess is that when new tasks are launched, RETI is ...
Added get_ir_offset to eeprom and changed program_eeprom.c so that it can read and modify them.
working version of wednesday 18 nov
Final clean up of ir_branch folder. Now should Make correctly.
Cleaning up ir_branch to Make correctly.
Fixed beacon robot wireless and working on Edge robot wireless
Fixing tools to Make correctly in Trunk. Reorganizing ir_branch to Make correctly.
deleting branch because i didn't branch the whole trunk before
changes of wednesday 18 nov
updated baud rate code (it works for 9600 and 115200 now, haven't tested the others)
Updated all makefiles. You may need to update the port settings to get your project to program the robots again.
added speed test behavior to wireless branch (this is where I'm testing the baud rate, which still doesn't work)
Fixed Makefile for circle_spacing behavior. Now links to the repository library.
Submitting circle spacing code. Will evenly place the robot on the circle.
Adding folder for circle spacing code. Behavior should attempt to space robots equally on a given radius of a circle around a central robot.
Cleaned up accidental commit of include folder and bin folder.
Circle Formation: added wireless and updated
Removed old rangefinder folder in trunk/projects. This folder has been moved to its own branch.
Converted Circle formation to a state machine
Copied over trunk code into rangefinder branch.
Added branch for finding rangefinder offset values.
Updated IR rangefinder lookup table. Now reports in millimeters with an accuracy of +-10mm.
Updated rangefinder.h with new MIN_ADC and MAX_ADC values
found one bug and changed some debug prints
Defaults to main, Creates launch stacks (just realized this is sort of backwards), Returns to tasks that are already running.
I gave the scheduler a crack based on avrOS and the code from 18348 that I think caused John to add these skeleton files.
Very very basic preemptive task scheduling that runs through the list of tasks, checks if they are ready to run based on a timer period...
Added a bunch of debug prints to the library
Changed Push-Pull to display BOM histogram as well as net IR BOM vector. Changed BOM Tracker to print an x,y pair separated by a comma so the data can be saved and read in by MATLAB for analysis.
Removing bom_refactor branch now that net BOM IR vector functions have been merged into the trunk.
Edited BOM Tracker project Makefile to make correctly. Removed old test file for net IR BOM vector from behaviors folder. Cleaning up Push-Pull behavior to remove code which was moved into BOM library.
Renamed old file used to test net BOM IR vector calculations to new BOM tracker file.
Copying over files originally used to test net BOM IR vector calculations. They will now be used to try tracking the location of one robot in 2D space.
Created project directory to investigate using the BOMs to track robots in 2D space.
Merged new BOM vector functions into the trunk and did a "make dist" to recompile the library. Also brought over C file used to test new BOM function behavior.
Added compiled binaries to bom_refactor branch. Also edited Push-Pull to test functionality of new BOM IR vector functions.
Added two BOM IR vector functions to calculate resultant IR vector and normalized resultant IR vector.
Copied trunk code into branch to develop function to return net BOM IR vector.
Creating branch to develop function to return net BOM intensity vector.
Removed the bom_refractor folder since the BOM histogram function has been completed.
Recompiled library to incorporate new BOM histogram print function. Push-Pull behavior currently prints the BOM intensity histogram and the resultant vector over USB.
Merged new function to print BOM intensity histogram into the trunk.
Finished function which prints the BOM intensity histogram over USB. Will print nicely in both windows and linux (uses "\r\n"). Will accept an array pointer to print values already collected, or it will recollect current values and print.
Copied code folder from the trunk into the bom_refractor branch.
Creating branch for adding BOM functionality to the library.
Cleaning up folders added for demonstration purposes.