A method, comprising: receiving, at a printhead assembly including ink ejection devices having nozzles and arranged into primitive groups , data packets for controlling the ink ejection devices, each data packet including primitive firing data and fire signal selection data ; selecting, for each data packet of the data packets and based on the fire signal selection data in each respective data packet, a fire signal for application to the primitive groups from among a plurality of selectable fire signals switchable among the primitive groups, the plurality of selectable fire signals having different properties, and the fire signal selection data indicates a fire signal to be applied to the primitive groups ; generating the selected fire signals; and applying the selected fire signal to addressed ink ejection devices of the primitive groups based on the primitive firing data for each data packet and nozzle address data , wherein the nozzle address data is included in the data packets or generated separately by the processing electronics ; wherein the ink ejection devices in at least one of the primitive groups have differing characteristics requiring different ones of the selectable firing signals, the differing characteristics including a different energy requirement; and wherein the ink ejection devices in the at least one of the primitive groups have differing energy requirements, and wherein selecting the fire signal includes selecting a relatively higher energy firing signal based on the fire signal selection data in a first data packet, and selecting a relatively lower energy firing signal based on the fire signal selection data in a second data packet. receiving, at a printhead assembly including ink ejection devices having nozzles and arranged into primitive groups , data packets for controlling the ink ejection devices, each data packet including primitive firing data and fire signal selection data ; selecting, for each data packet of the data packets and based on the fire signal selection data in each respective data packet, a fire signal for application to the primitive groups from among a plurality of selectable fire signals switchable among the primitive groups, the plurality of selectable fire signals having different properties, and the fire signal selection data indicates a fire signal to be applied to the primitive groups ; generating the selected fire signals; and applying the selected fire signal to addressed ink ejection devices of the primitive groups based on the primitive firing data for each data packet and nozzle address data , wherein the nozzle address data is included in the data packets or generated separately by the processing electronics ; wherein the ink ejection devices in at least one of the primitive groups have differing characteristics requiring different ones of the selectable firing signals, the differing characteristics including a different energy requirement; and wherein the ink ejection devices in the at least one of the primitive groups have differing energy requirements, and wherein selecting the fire signal includes selecting a relatively higher energy firing signal based on the fire signal selection data in a first data packet, and selecting a relatively lower energy firing signal based on the fire signal selection data in a second data packet. <EOS>