# External encoder on slot 2 for virtual axis

**URL:** <https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782>\
**Category:** Mechatronics & Motion\
**Tags:** acopos-multi, encoder\
**Created:** [October 24, 2025, 8:01am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782 "2025-10-24T08:01:31Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Michael\_Pilgrim](https://avatars.discourse-cdn.com/v4/letter/m/FF8800/32.png) [@Michael\_Pilgrim](https://community.br-automation.com/u/Michael_Pilgrim)\
**Post date:** [October 24, 2025, 8:01am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/1 "2025-10-24T08:01:31Z")

</div>

Hello everyone,

I have the following problem, which I have not yet been able to solve with existing posts from the forum.

I am using an AcoposMulti (single) on which a real axis runs. Now I would like to create an additional virtual axis that receives an encoder value from an external encoder. The encoder is connected to plug-in module 2 (SS2) of the Acopos. (8BAC0123.000-1) Unfortunately, I am unable to obtain a position value. I have already tried different ParIDs, but without success.

Best regards, Michael 🙂

---

<div class="post-metadata">

**Author:** ![christoph.hilchenbac](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/christoph.hilchenbac/32/423_2.png) [@christoph.hilchenbac](https://community.br-automation.com/u/christoph.hilchenbac)\
**Post date:** [October 24, 2025, 8:22am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/2 "2025-10-24T08:22:42Z")

</div>

Hello,

according to [Position sources for drive control](https://help.br-automation.com/#/en/4/ncsoftware/acp10_drivefunctions/antriebsregelung/geberverschaltung/positionsquellen_fur_die_antriebsregelung.html)

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/2X/b/b107348c9188cbc273f8b474662e67266db7e75d.png)

you can get the position from [ENCOD1\_S\_ACT (91)](https://help.br-automation.com/#/en/4/ncsoftware/acp10_parameter/html/encod1_s_act.htm) from 2nd axis (even if you use a single axis module)

Regards,

---

<div class="post-metadata">

**Author:** ![Martin.Schrott](https://avatars.discourse-cdn.com/v4/letter/m/FF8800/32.png) [@Martin.Schrott](https://community.br-automation.com/u/Martin.Schrott)\
**Post date:** [October 24, 2025, 8:52am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/3 "2025-10-24T08:52:52Z")

</div>

Hi,

with mapp Motion you can configure an “External encoder axis”, see screenshot.  
The axis object can then be used with function blocks, e.g. as master axis for couplings.  
Encoder errors are reported via this axis object (not via the real axis of channel 2).

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/2X/8/831f3ef9d53689bac15085bd27d10874c3fa5c29.png)

---

<div class="post-metadata">

**Author:** ![Austin\_Moodley](https://avatars.discourse-cdn.com/v4/letter/a/FF8800/32.png) [@Austin\_Moodley](https://community.br-automation.com/u/Austin_Moodley)\
**Post date:** [November 24, 2025, 3:46pm UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/4 "2025-11-24T15:46:12Z")

</div>

hi is there more steps to this or is it standard axis renamed to GEncoderaxis

---

<div class="post-metadata">

**Author:** ![kovarj](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/kovarj/32/537_2.png) [@kovarj](https://community.br-automation.com/u/kovarj)\
**Post date:** [December 17, 2025, 12:13pm UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/5 "2025-12-17T12:13:03Z")

</div>

Hello @Michael_Pilgrim what is the status or solution of your topic? Can you update us?

---

<div class="post-metadata">

**Author:** ![Michael\_Pilgrim](https://avatars.discourse-cdn.com/v4/letter/m/FF8800/32.png) [@Michael\_Pilgrim](https://community.br-automation.com/u/Michael_Pilgrim)\
**Post date:** [January 5, 2026, 7:35am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/6 "2026-01-05T07:35:55Z")

</div>

Hello everyone, the problem has been solved. Thank you… 🙂

But now I have a new one. I am currently trying to save my last encoder position.

Do I understand the help (MC\_BR\_InitEndlessPosAcpEnc) correctly that I cannot save the position at slot 2?

Regards, Michael

---

<div class="post-metadata">

**Author:** ![kovarj](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/kovarj/32/537_2.png) [@kovarj](https://community.br-automation.com/u/kovarj)\
**Post date:** [January 5, 2026, 8:40am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/7 "2026-01-05T08:40:03Z")

</div>

If the issue is solved, can you tell us the final solution so we can close the topic? For new questions, it is always good to create a new discussion (use a link to refer to this topic) so we do not mix discussions 🙂

---

<div class="post-metadata">

**Author:** ![Michael\_Pilgrim](https://avatars.discourse-cdn.com/v4/letter/m/FF8800/32.png) [@Michael\_Pilgrim](https://community.br-automation.com/u/Michael_Pilgrim)\
**Post date:** [January 7, 2026, 5:28am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/8 "2026-01-07T05:28:24Z")

</div>

Unfortunately, I don’t have a clean solution. More of a workaround… 😉

Instead of the virtual axis, I create a real one and then get the position. The problem with the virtual axis is that although I have my encoder value in ParID 91 (ENCOD1\_S\_ACT), I can’t get it into the MpAxisBasic structure and can’t reference it.  
Neither with ParID 230 (PCTRL\_S\_ACT\_PARID) and ParID 722 (VCTRL\_S\_ACT\_PARID), nor in any other way. Maybe someone has an idea?

---

<div class="post-metadata">

**Author:** ![michael.bertsch](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/michael.bertsch/32/239_2.png) [@michael.bertsch](https://community.br-automation.com/u/michael.bertsch)\
**Post date:** [January 7, 2026, 8:27am UTC](https://community.br-automation.com/t/external-encoder-on-slot-2-for-virtual-axis/8782/9 "2026-01-07T08:27:29Z")

</div>

Hello,

if your Axis-Slot is free and not used with a Motor i think the solution is ok and would not make a performance difference in comparison to the virtual one.  
The only improvment with the External Encoder Setting is to free up the Axis for a real Motor and still having the External Encoder usable.

There is an advantage of the real axis, it is better in simulation. Because the Positions of the External Encoder are not Simulated in ARsim. So it might be an advantage to use the real Axis if it is free.

If you need to use both Motor and External Encoder in parallel i would recommend that you get in contact of local support. Becuase i currently don’t see why you should not get the Values into mpAxisBasic (considering that ARsim does not simulate Positions, only on Real Hardware you would see something). The External Encoder Object can directly be linked to mpAxisBasic.

One Additional Hint: You once refered to MC\_BR\_InitEndlessPosAcpEnc which is a Functionblock from ACP10. Please be aware that MappMotion and ACP10 can not be mixed up. While using the Automation Studio Help it is easy to accidentaly come over a Function which belongs to the different Feature-Set.

Greetings  
Michael Bertsch
