Articles in this section

How to Set Up an Adaptive Packing Station

An adaptive packing station is a packing station wired with Xbox Adaptive Controller buttons, so packers can enter a package type, print a label or invoice, or complete an order with a button press. To set one up, wire the hardware, install the free AntiMicro program on each Windows packing station, map the buttons to ShipHero input codes, and copy the profile to your other stations.

Before You Begin

  • Account: You can adapt your packing stations to use game controller buttons if you are a current ShipHero WMS client.
  • Operating system: Each packing station must run a Windows operating system.

For how an adaptive packing station works and what it costs, see Overview: Adaptive Packing Station. If a button or the AntiMicro program does not work, see Troubleshooting: Adaptive Packing Station.

Table of Contents

Gather Adaptive Packing Station Hardware

Each adaptive packing station requires the following hardware:

This hardware can be purchased directly from Microsoft or from retailers such as Best Buy. Prices are typically the same.

The Xbox Adaptive Controller is the core component. It has two oversized buttons that can withstand constant heavy use and ports for up to 15 additional input sources. The Logitech kit provides 10 more buttons that you can place wherever you need them around the packing station.

ShipHero recommends buttons from the Logitech Adaptive Gaming Kit for their price and guaranteed compatibility, any robust microswitch wired to a 3.5mm mono jack will work. 3.5mm jack plugs are required to connect to the Xbox Adaptive Controller.

You may also need:

Extension cables provide the range needed to place buttons in convenient locations around the station.

ShipHero recommends "slim" cable plugs because the input sockets on the Adaptive Controller are spaced close together. If the cable ends are too wide, there may not be enough room to plug them in side by side.

Configure Adaptive Packing Station Hardware

An adaptive packing station has 17 buttons that you can program with different input codes. Assign two of them to the core functions: print a label or invoice, and complete an order. You can assign the remaining 15 as needed.

The following example shows an adaptive packing station wired with additional buttons:

Adaptive packing station with extra buttons wired to an Xbox Adaptive Controller

The top row of five buttons allows a packer to input box size:

Top row of five buttons on an adaptive packing station used to input box size

The bottom row of five buttons inputs the bag size:

Bottom row of five buttons on an adaptive packing station used to input bag size

All buttons are wired to the Adaptive Controller using 3.5mm extension cords:

Buttons connected to the Xbox Adaptive Controller with 3.5mm extension cables, with each cable end labeled

Label the cord ends with the button they connect to to reduce confusion.

The number of peripheral buttons will vary depending on your needs. If you have multiple adaptive packing stations, each should use an identical layout and number of buttons. This keeps the configuration consistent and simplifies troubleshooting.

Set Up Windows and AntiMicro for an Adaptive Packing Station

Each packing station must run a Windows operating system. On each Windows machine, download the following software:

AntiMicro is a free, open-source program that lets you assign custom input to gamepad buttons. To install, download the installer from SourceForge, navigate to the download directory, and double-click the installer file. You may need administrator permission to approve the installation.

AntiMicro installer for Windows used to set up an adaptive packing station

After you run the installer, a new AntiMicro icon appears on your desktop.

If you cannot use AntiMicro, reWASD for Windows is an alternative that can be downloaded and configured in much the same way.

Next, configure Windows to allow use of all gamepad buttons. Navigate to Windows settings and select Gaming.

Windows Settings window with the Gaming option for an adaptive packing station computer

Make sure the Xbox Game Bar is switched Off and that the option Open Xbox Game Bar is unchecked:

Windows Gaming settings with the Xbox Game Bar switched Off and Open Xbox Game Bar unchecked

This allows you to map new input to one additional button on the gamepad.

ShipHero has only tested this setup on Windows. The Adaptive Controller hardware should work equally well on macOS, but using a different operating system requires you to find and configure your own gamepad interpolation software.

Configure AntiMicro Software for an Adaptive Packing Station

Setting up the software profile is the most complex part of the setup, but you only need to complete a full configuration once. After creating a correctly configured profile on one packing station, you can copy the file to every other station using the same hardware setup.

Define Adaptive Packing Station Input Codes

Before programming AntiMicro, you need to know the input values that allow the gamepad to communicate with ShipHero.

ShipHero expects two types of input at a packing station:

  • Command codes: These instruct the software to perform a specific function. Command codes are the same in every warehouse.
  • Packaging types: These are labels for the types of packing materials used at a station. Packaging types are unique to each warehouse.

Common command codes are listed below:

  • Print Labels: sh0002
  • Print Invoice: sh0001
  • Print Invoice & Label: sh0003
  • Get Weight from Scale: sh0005
  • Add Package: sh0010
  • Take Parcelview: sh0009
  • Complete Order: sh0004

Your warehouse may already use ShipHero's standard barcode commands cheat sheet. You can view the ShipHero standard barcode commands cheat sheet.

When scanned by a barcode reader, these barcodes are translated into command codes that ShipHero can understand. To find a code, open a text document in Notepad or another text editor and scan a barcode with your scanner. A series of letters and numbers will appear in the document corresponding to that barcode. For example, scanning the "Print Labels" barcode from the cheat sheet will produce "sh0002".

Packaging types can also be determined using a predefined barcode, a handheld scanner, and an open text document. However, your warehouse may not assign barcodes to every package type. To view a complete list of packaging types for your warehouse, go to Shipping > Boxes in ShipHero. You will need the codes for every category of packaging used at your station. To set up shipping boxes and assign barcodes, see How to Set Up Shipping Boxes in ShipHero.

Run AntiMicro for an Adaptive Packing Station

Once you have a complete list of command codes and packaging types, you are ready to use AntiMicro.

Double-click the AntiMicro icon on your desktop to launch the program. The window should look like this:

AntiMicro main window with the Xbox Adaptive Controller detected

If AntiMicro cannot detect a gamepad, see Troubleshooting: Adaptive Packing Station.

Map Adaptive Controller Buttons in AntiMicro

Once AntiMicro is running and has detected the Adaptive Controller, you can begin assigning input.

ShipHero recommends using the A (left side) and B (right side) buttons on the Adaptive Controller to input command codes. Use the A button as a multipurpose process-advancing trigger and the B button to complete an order. A dedicated "complete order" button reduces the chance of mistakes. Use the peripheral buttons to input packaging types.

The steps below show how to assign input to both the A and B buttons.

From the AntiMicro main screen, use the mouse to select the A button. This corresponds to the left large button on the Adaptive Controller.

You can verify your button layout by pressing any button connected to the controller. AntiMicro will highlight that button on the main screen.

AntiMicro main window with the A button selected

This opens the key assignment window. Use the Name field at the bottom to enter a descriptive name for the button. The Current field will show "[NO KEY]" until an action is defined.

AntiMicro key assignment window with the Name field and the Current field showing [NO KEY]

After naming the button, select Advanced. In the example below, the name is "Print LabelInv Photo" because the A button will take a photograph using ParcelView, then print the invoice and label.

AntiMicro Advanced window for the A button named Print LabelInv Photo

The advanced keymapping settings let you define a sequence of actions for a single button press. For the A button, a single press will trigger five actions:

  1. Input the Take Parcelview command to photograph the package using ParcelView
  2. Input the ENTER key
  3. Pause for half a second to ensure ShipHero is ready for the next command
  4. Input the Print Invoice & Label command
  5. Input the ENTER key again

Create each action in sequential order. For the first action, enter the command code for Take Parcelview. From the cheat sheet, this code is "sh0009". Select the first tile at the top of the window by clicking outside the small blank rectangle to highlight it in blue:

AntiMicro Advanced window with the first action tile highlighted in blue

Use the central dropdown menu to select Text Entry, then input "sh0009" in the text field. Click Insert when finished.

AntiMicro Advanced window with Text Entry selected and sh0009 typed in the text field
AntiMicro Advanced window showing the first action tile set to the sh0009 text entry

For the second action, assign an ENTER key input. Select the second tile by clicking inside the small blank rectangle until it shows three dots:

AntiMicro Advanced window with the second action tile selected

Now press the ENTER key:

AntiMicro Advanced window with the ENTER key assigned to the second action tile

The second action is now defined.

For the third action, assign a half-second pause. Select the third tile by clicking outside the inner rectangle to highlight it in blue:

AntiMicro Advanced window with the third action tile highlighted in blue

Use the central dropdown menu to select Pause, then use the small dropdown at the bottom of the window to set the duration to 0.5 seconds:

AntiMicro Advanced window with Pause selected from the central dropdown menu
AntiMicro Advanced window with the pause duration set to 0.5 seconds

Click Insert. The third tile should now read "Pause 00.50":

AntiMicro Advanced window with the third action tile reading Pause 00.50

For the fourth action, input another command code. The code for Print Invoice & Label is "sh0003". Select the fourth tile by clicking outside the inner rectangle to highlight it in blue. Choose Text Entry from the dropdown and input "sh0003". Click Insert when finished.

AntiMicro Advanced window with the fourth action tile highlighted in blue
AntiMicro Advanced window showing the fourth action tile set to the sh0003 text entry

For the fifth action, assign another ENTER key input. Select the fifth tile by clicking inside the small rectangle until it displays three dots:

AntiMicro Advanced window with the fifth action tile selected

Press the ENTER key:

AntiMicro Advanced window with the ENTER key assigned to the fifth action tile

All five actions are now assigned to the A button. Close the Advanced window and the Key Assignment window to return to the main menu.

From the AntiMicro main menu, select the B button. This corresponds to the right large button on the Adaptive Controller.

AntiMicro main window with the B button selected

Name the button "Complete Order" before opening the Advanced window:

AntiMicro key assignment window with the B button named Complete Order

The B button will trigger two actions on a single press:

  1. Input the Complete Order command
  2. Input the ENTER key

The command code for Complete Order is "sh0004". Select the first tile by clicking outside the small blank rectangle:

AntiMicro Advanced window for the B button with the first action tile highlighted

Choose Text Entry from the dropdown and input "sh0004". Click Insert when finished.

AntiMicro Advanced window showing the first action tile set to the sh0004 text entry

Next, select the second tile by clicking inside the small rectangle until it displays three dots:

AntiMicro Advanced window for the B button with the second action tile selected

Press the ENTER key:

AntiMicro Advanced window with the ENTER key assigned to the second action tile for the B button

Two input actions are now mapped to the B button.

Assigning input to peripheral buttons will depend on how many packaging types you use and which port each button is connected to on the Adaptive Controller.

The example below shows a completed key mapping for an adaptive packing station:

Completed AntiMicro key mapping for an adaptive packing station

Packer notes: The OK control on the Adaptive Controller does not dismiss a packer note. See Troubleshooting: Adaptive Packing Station for how to dismiss it.

Change AntiMicro Program Settings for an Adaptive Packing Station

After assigning functions to all buttons, select Save As from the main menu and name your profile. Save the file to your local machine so it can be loaded every time the program starts.

It is also important to configure AntiMicro to autoload this profile and prevent packers from accidentally closing the program.

Select Options > Settings.

AntiMicro Options menu with the Settings option

In the left-hand menu, navigate to General and check the boxes next to Close To Tray, Launch At Windows Startup, Auto Load Last Opened Profile, Launch in Tray, and Associate Profiles.

AntiMicro General settings with Close To Tray, Launch At Windows Startup, Auto Load Last Opened Profile, Launch in Tray, and Associate Profiles checked

With these settings, AntiMicro will start when the system boots, load your customized input automatically, and continue running in the background. Closing to the tray also reduces the chance of the program being accidentally deactivated while the station is in use.

Packing station users do not need to interact with AntiMicro at all. It runs entirely in the background.

Copy the AntiMicro Profile to Other Adaptive Packing Stations

After configuring the AntiMicro profile on one packing station, you can copy that profile to every other station using the same button configuration.

Profiles are saved as AMGP files. Copy the profile to a USB thumb drive, then save the AMGP file on the next workstation.

Once saved, open AntiMicro on the new machine, select Load, and open the local file. Then navigate to Options > Settings and check the same boxes as on the first machine.

Repeat this process for every adaptive packing station using the same layout.

You can use AntiMicro to support different packing station hardware layouts as long as each layout loads a different AMGP profile. However, this requires extra attention to file version management and increases overall configuration time.

More Resources

  • ShipHero Public API

    Connect your tools and AI agents directly to ShipHero with the Public API. Build powerful integrations, automate workflows, and tap into real-time data using the AI tools you prefer, with the option for secure, read-only access for AI-driven insights without added risk.

  • ShipHero Academy

    Explore ShipHero Academy for certifications, deep-dive training, and expert-led courses on WMS and fulfillment. Build your expertise and help your team operate at a higher level.

  • Change Log

    Stay up to date with the latest improvements across ShipHero. The Change Log gives you a clear view of new features, enhancements, and fixes as they roll out—so you always know what’s new and what’s better.