In order to easier my life for transferring data from my micromouse to my computer, I make a serial port bluetooth module adapter to help me finish this job. I use RN-42 bluetooth module and it costs only $15.95 for the module and some other cost for the adapter PCB board. The board is powered by 3.3v directly from my micromouse and it drains about 100-150mah current when running at a medium baudrate. The max baudrate that the module can go is 921000bps, and the my mouse spent about 30us(acceptable for this price) to printf 4 character plus \r\n(new line) at max baudrate when transfer data wirelessly through this bluetooth module. Now I mainly use it to get sensor values to avoid using a long usb cable all the way from my computer to my mouse when I need some threshold values for my mouse in the maze. When I need some large amount of data when mouse is running, I still prefer to save the data in RAM then send out at same time once it stops even though the module is capable to send data simultaneously since I don’t want the module use too much current when mouse is running.
Note that when you want to make such a module powered by your micromouse, make sure you voltage regulator can provided enough current. I use a 1A 5V regulator for 5V output and a 500mah 3.3V regulator for 3.3V power, but area under 5V regulator is always hot when the bluetooth module is running even though I put a pretty larger ground polygon underneath my 5V regulator(and both sides of the PCB under that 5V LDO regulator). I think the better solution is to power the module with external battery to reduce the load of LDO regulator on the micromouse. I am pretty sure it’s not exceeding the limit of that 5V regulator but as what I’ve observed for all kinds of LDO regulator, unless they have extremely low dropout voltage, otherwise it will generate some noticeable heat when exceeding 50% of load.
here is the tutorial for how to make this bluetooth module do communication with PC http://www.jayconsystems.com/tutorial/btmatemod/. in that article they use arduino as example but essentially they are same and I use putty to receive data and it worked well for me.