# Pioneer AS1 - help in getting bidirectional communication using a sysex dump

**URL:** <https://forum.electra.one/t/pioneer-as1-help-in-getting-bidirectional-communication-using-a-sysex-dump/946>\
**Category:** Instruments\
**Created:** [September 22, 2021, 5:54pm UTC](https://forum.electra.one/t/pioneer-as1-help-in-getting-bidirectional-communication-using-a-sysex-dump/946 "2021-09-22T17:54:42Z")\
**Posts on this page:** 1\
**Showing post:** 6

<div class="post-metadata">

**Author:** ![Flyweight](https://dub1.discourse-cdn.com/flex017/user_avatar/forum.electra.one/flyweight/32/342_2.png) [@Flyweight](https://forum.electra.one/u/Flyweight)\
**Post date:** [September 23, 2021, 8:53am UTC](https://forum.electra.one/t/pioneer-as1-help-in-getting-bidirectional-communication-using-a-sysex-dump/946/6 "2021-09-23T08:53:14Z")

</div>

Ok its getting spicy 🙂 😀

In my case the NRPN parameter order do not seem to match the sysex data.  
But i will investigate this further.  
I think the parameters might follow after globals, patchname etc.  
But also it needs to be unpacked I guess.  
How would the ONE handle the unpacking? I checked but cannot find how to do this.

Here a javascript that Converts 8 bytes of “packed MS bit” sysex into the original 7 bytes.  
Honestly I do not understand it fully but might come in handy.

[[https://cycling74-web-uploads.s3.amazonaws.com/531ee78c4db05f8762373b5f/2019-12-19T09:45:56Z/packedMS.js](https://cycling74-web-uploads.s3.amazonaws.com/531ee78c4db05f8762373b5f/2019-12-19T09:45:56Z/packedMS.js)]

Was hoping to find a DSI synth template that have “PATCH REQUEST” but there are none. There are several DSI synth templates but none parse the sysex patch response. I found yours here: [[Electra One App](https://app.electra.one/preset/IDFYCfrfysPFVDUSezQ2)]

I found some additional info, this is from the DSI evolver.

> [converting packed data formatted sysex data - MaxMSP Forum | Cycling '74](https://cycling74.com/forums/converting-packed-data-formatted-sysex-data)

```auto
you have to process each slice of 8 bytes with bitshift operators to get the original 7 source parameters

the parameters are ordered according to their NRPN parameter number

```

Parameter: V\_OSC\_1\_FREQ  
NRPN: 0  
Value: 0-60

Parameter: V\_LOWPASS\_FREQ  
NRPN: 49  
Value: 0-164

Parameter: V\_LOWPASS\_FREQ  
NRPN: 50  
Value: 0-255

Patch request “00 40 05 00 00 01 08 10 06”  
Header “00 40 05 00 00 01 08 10 03”

Since the AS1 does not send SYSEX per parameter is the example below correct?  
Do I extract all parameter in the rules section like this?  
Only referring to “request”, “header” and and example of 2 bogus parameters extracted from the response.

```json
  "patch": [
    {
      "request": ["00", "40", "05", "00", "00", "01", "08", "10", "06"],
      "responses": [
        {
          "header": ["00", "40", "05", "00", "00", "01", "08", "10", "03"],
          "rules": [
            {
              "type": "sysex",
              "paramterNumber": 1,
              "parameterBitPosition": 0,
              "byte": 1,
              "byteBitPosition": 0,
              "bitWidth": 7
            },
            {
              "type": "sysex",
              "paramterNumber": 49,
              "parameterBitPosition": 0,
              "byte": 1,
              "byteBitPosition": 0,
              "bitWidth": 7
            },
          ]
        }
      ]
    },

```

---

_[View the full topic](https://forum.electra.one/t/pioneer-as1-help-in-getting-bidirectional-communication-using-a-sysex-dump/946)._
