Register Account

Login Help


An Amateur Radio and Robotics Exploration Activity

MAREA is an aconym that stands for Mars Lander/Marine Amateur Radio Robotics Exploration Activity.  Its a hands-on learning activity designed to engage students in learning programming skills for command and control of land or marine robots, and to use Amateur Radio packet communications as the means of communication. Students can access the "network" of Amateur Radio packet stations, including stations on the International Space Station, to relay commands to robots in remote locations, down the hall, in the gymnaisum, in a park across town, on a local stream or at a partner school in another state.

What do you need to participate? 

  • A stand alone computer or laptop that can be used as the MAREA ground station
  • A robot platform (preferably the Parallax Boe-Bot®)
  • The local data link equipment (can be obtained for use in the webinar training through the ARRL ETP Progress Grant Program.)
  • A basic 2 meter ham radio with interfaces to connect the radio to the computer sound card so that live APRS transmissions can be used to control the robot. (Potential use of ETP Equipment Grant)

What can you do with MAREA? 

Teachers can use the MAREA concept in a number of different ways:

1. By connecting an audio cable between the computer sound card microphone and earphone jacks, the commands transmitted on the computer terminal will be looped back and received by the packet program then sent via the UHF transceiver to the robot (Figure 8). This provides the opportunity for students to rehearse the maneuvers in their mission plan without transmitting the packets over the APRS system.

2. Have a second APRS station at the school (I use an APRS capable handheld radio) and use this radio to compose and transmit commands directly between the two APRS stations (Figure 9). This is a good way to test the RF connection to the APRS ground station.

3. Have a local ham transmit the commands from their home station to command the robot.

4. Coordinate with another school participating in the MAREA concept and have students at these connected schools command each other’s robots via the APRS system.

5. Set up an ISS capable satellite ground station and send your commands to the robot via the passing ISS.

6. Finally, have a distant school send commands to the robot via the ISS!

Another option: Intra-classroom and inter-school MAREA competitions

  • Task a team of students to develop a MAREA mission plan to navigate the maze to a target.
  • Set up an obstacle course or maze with a target area.
  • Competing teams could be within the classroom, between classes in the same school, between schools or even across state lines. It is all up the imagination of the teacher and students.

What connections to STEM and core science curriculum are addressed by the MAREA activity?


For more information, read: MAREA: Ham Radio Robotics



  • Select a question below about MAREA set-up and operation. Click on the question to expand for the answer.

  • Multiple MAREAs


    We are actually getting more than one MAREA in the room here in Atlanta and that is led me to consider the avoidance of conflicts when using packet.  With the XBee board I can create MAREA pairs.  For example the Mills Springs MAREA is on channel two and my MAREA is on channel four.  Each unit - a PC/laptop/2 meter packet rig is a complete unit.  The loopback test works fine with each unit and one does not interfere with the other as we are using different channels.  The challenge comes when we go to packet.  Both BoeBots are named MAREA.  When using packet UISS sends the line MAREAF50..etc, and the the local digipeater sends it right back with the message "You have been digipeated."  The loop back program then reads the line and sends to the local MAREA (mine) as well as the MIll Springs MAREA on the other end of the circuit.  Correct so far?  If so, not the desired behavior.  Especially if, as may happen, The Mills Springs students are driving the Lovett BoeBot while Lovett is driving the Mills Springs BoeBot

    Now I am guessing there is nothing unique about the name, MAREA.  The Mill Springs BoeBot could be MAREA and mine could be FRANK as long as the name in the code matches the name in the command string, I hope.  Are there any restrictions on the size of the name?  I am thinking an alternative is MAREA1, MAREA2, etc.  But that brings up the question of the loopback test.  I am guessing the name "MAREA' is hardcoded into the loopback <TEST> program?  If so, that could be handled by making some quick coding changes when going from test to production.  If all of the machines are on different channels, even if they are all named MAREA for testing at least the entire fleet should not take off all at once!  I suppose another answer is to simply turn off the BoeBot not being driven.  The kids this semester did have a great time naming the BoeBot - it made it "theirs."

    An better alternative if you ever get the inclination might be to modify the Loopback <TEST> program so that the BoeBot name is a user defined variable same as the comport.

    I have had a request to program in a delay to better simulate the time it takes a radio wave to get from earth to a distant MAREA.  I am planning to add a PAUSE 3000 at the appropriate place in the code to generate a three second delay between the receipt of the command string and its execution.  A bit of a cheat in that the transmission is instantaneous with the delay on the receiving end where in the real world it is the other way around but the effect is the same - a delay in time between sending a command and the execution of the command.

    Enjoying all of this greatly - by end of the school year I may have four schools here in Atlanta up and playing the MAREA game over the local packet repeater.

    Please advise,

    John Kludt, W4SQC



    Sounds like you guys are making the most of MAREA.


    To answer your specific question, the call sign of the robot is limited to 5 characters maximum.  I believe that they can be any combination of characters, but I am not sure of upper or lower case sensitivity.  You might try it and see what happens.  To change the call of the robot to make it unique, you need to change this line of code in the MAREA main program. Bs2:


    SERIN 15, 813,[WAIT ("MAREA") ]


    In your case change MAREA to FRANK or CUGAR or BEARS or CANDY or STARS or VENUS…there are bunches of 5 character calls that can be school unique.


    On the loop back program, I made a change to the program that has a field for entering the robot call sign.  It defaults to MAREA, but you can enter any 5 character call that you want.  But it has to match the call of the robot you want to control.  Because the program is an exe file, I put it in this DropBox location so you can download it:  Click here to view


    Just put it somewhere on your hard drive where you can find it and run it from there.  Just to make sure it works for you (it worked when I tested it here with FRANK), don’t over write the current loopback until you are sure it is okay.


    So you should be all set for multiple robots on at one time.  As you know, make the XBee modules paired up, and match the call sign of the robot with the call you enter in the loopback (for the loop test function) and in the UISS text fields, and it should all work okay.


    Let us know how it goes.

    Mark Spencer, WA8SME



Instragram     Facebook     Twitter     YouTube     LinkedIn