The Super PPA Arduino is similar to the Standard PPA Arduino instructions, just a couple of changes are required:

  • Change the EMcount constant from 3 to 6 (line 1)
  • Lookup the IRPS Physical Config Parameters (approximately line 330) and ensure that you map your IRPS to your EM units

The wiring options Standard size PPA tends to be pretty flexible, because the shorter distances and limited combinations mean that the hardware is easy to fit to the firmware. However, for the Super PPA, the wiring complexity makes it easier to adjust the firmware to the wiring. So, you’ll need to look carefully not your particular wiring and adjust the firmware accordingly. It all comes down to the mapping between IRPS and EMS. Around code row 316 or so of the firmware is a reference to:


//IRPS(int irps_number,int em_number,bool enabled,int interbeam_dist_mm, int beam2em_dist_mm, float tuning_factor, bool send_to_print_stack)

IRPS irps[8] = {

IRPS(0,0,false, interbeam_dist_mm,beam2em_dist_mm,0.0,false),

IRPS(1,1,true, interbeam_dist_mm,beam2em_dist_mm,0.78,false),

IRPS(2,0,true, interbeam_dist_mm,beam2em_dist_mm,0.78,false),

IRPS(3,2,true, interbeam_dist_mm,beam2em_dist_mm,0.78,false),

IRPS(4,4,true, interbeam_dist_mm,beam2em_dist_mm,0.78,false),

IRPS(5,5,true, interbeam_dist_mm,beam2em_dist_mm,0.78,false),

IRPS(6,3,true, interbeam_dist_mm,beam2em_dist_mm,0.78,false),

IRPS(7,6,false, interbeam_dist_mm,beam2em_dist_mm,0.78,false)


Here’s the explanation of the key parameters for each line:

  • The first parameter is the number of the IRPS (0-7),
  • the second parameter is the number of the corresponding EMS (0-5, 6 is a dummy). The dummy value 6 can be used to indicate the IRPS connection is terminated (as opposed to a real IRPS) – see
  • the third parameter indicates if the EMS is enabled to be triggered from the row’s IRPS. An example of a disabled trigger between an IRPS and the listed EMS would be if the IRPS was a calibration IRPS. A calibration IRPS would just read speed, it shouldn’t actually trigger the EMS.

So go ahead and wire up your Super PPA, you can setup any IRPS on any EMS, but you will need to make your own notes as to which you’ve paired together. Then adjust the above table to match your wiring and flash the firmware to your Arduino.

Processing PC software

The Processing software is the same as for Standard PC

Leave a Reply