# HomeyScript for Wallbox Pulsar plus charger lock/unlock pause/resume

**URL:** <https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616>\
**Category:** Ideas & Suggestions\
**Tags:** homeyscript\
**Created:** [November 10, 2021, 6:58pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616 "2021-11-10T18:58:31Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [November 10, 2021, 6:58pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/1 "2021-11-10T18:58:31Z")

</div>

I was considering writing a complete app and I still might when I have the time.

In the mean time I’ve written a homeyscript that allows you to lock/unlock your wallbox electric car charger ( [wallbox.com](http://wallbox.com) ).  
I just post it here as there is virtually no documentation available and wallbox’s are being sold more and more now here in the Netherlands.  
Most frustrating part was to connect my car to the wallbox, open the app, wait for a connect, then open the charger part and unlock it. Took way to much time.  
Now I have setup a virtual device called “laadpaal” ( charger ). Tell Google to turn it on or off ( making it unlock or lock ) and takes 3 seconds.

If anyone is interested, let me know.

btw.. I should be able to add pause/resume to charging and have variables filled with current power usage if anyone needs it.

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [November 11, 2021, 8:50pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/2 "2021-11-11T20:50:39Z")

</div>

So, through facebook I had a couple of requests to share what I’ve done.  
To run this script you need your login information to your Wallbox account ( [https://my.wallbox.com](https://my.wallbox.com) ) and the charger ID you want to lock or unlock.  
Getting the ID is simple. Just login to [my.wallbox.com](http://my.wallbox.com) and click on your charger. When you are on the page with all the details of your charger you can read the ID from the URL in your browser. It’s the number after the last slash.  
 ![wallbox_charger_nr](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/e/cedfecb956238863d637c7d0b0b14236cb9494d0.jpeg)

Go to homeyscript and create a new script. Call it e.g. wallbox ( I did ).  
Copy and paste the code below in your new script and enter the details in the top three lines of the code.  
Save it.

In my case I then created a virtual device called “laadpaal”.  
 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/c/0cd27c02992e3e49c25bfe9790a913c718c9490a.png)

And two flows for when turned on or off ( unlock or lock ).  
 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/b/e/beaf0b5de7e10e4b0e4d905eb239287cecf49848.png)

To unlock your charger, run the wallbox script with argument **unlock**.  
 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/9/0/90274d31e21f9f106e244c7ed9a5f4916526f204.png)

To lock your charger, run the wallbox script with argument **lock**.  
 ![afbeelding](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/9/d/9d0500f56d5d88c8b58e19fe3f4c7ec5032e9790.png)

If you have Google connected to your Homey, you can simply say **zet laadpaal aan** or **set laadpaal uit** to unlock or lock the charger.

Code :

```auto
const username = '<your username (usually email address)';
const password = '<your password>';
const MYCHARGERID = 000000; // ID of your charger

const BASEURL = "https://api.wall-box.com/";
const URL_AUTHENTICATION = 'auth/token/user';
const URL_UNLOCKCHARGER = 'v2/charger/';

var token = '';
var unlocked = { 'locked': 0 };
var locked = { 'locked': 1 };

/**
 * Get JWT Token from wallbox using login and password
 */
async function connectToWallbox() {
  let connect = await fetch( BASEURL + URL_AUTHENTICATION, {
    headers: {
      'Authorization': 'Basic ' + Buffer.from( username + ":" + password ).toString( 'base64' ),
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',
    }
  } ).then( response => response.json() );
  return connect.jwt;
}

/**
 * Unlock wallbox function with token from Connect function
 */
async function unlockWallbox( token ) {
  let unlock = await fetch( BASEURL + URL_UNLOCKCHARGER + MYCHARGERID, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify( unlocked )
  } ).then( response => response.json() );
  if ( unlock.code === 200 ) {
    return false;
  }
  return true;
}

/**
 * Lock wallbox function with token from Connect function
 */
async function lockWallbox(token) {
  let lock = await fetch( BASEURL + URL_UNLOCKCHARGER + MYCHARGERID, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(locked)
  } ).then( response => response.json() );
  if ( lock.code === 200 ) {
    return false;
  }
  return true;
}

// Make sure this script works with 1 single argument
if ( typeof args[0] !== 'string' ) {
  throw new Error( 'Script must be run from a flow with a string variable' );
}

switch ( args[0] ) {
  case "unlock":
    token = await connectToWallbox();
    result = await unlockWallbox( token );
    // Optional. You can leave the next 3 lines out and place them in a flow
    if ( result === true ) {
      say( 'Wallbox is ontgrendeld' );
    }
    break;
  case "lock":
    token = await connectToWallbox();
    result = await lockWallbox( token );
    // Optional. You can leave the next 3 lines out and place them in a flow
    if ( result === true ) {
      say( 'Wallbox is vergrendeld' );
    }
    break;
}

```

---

<div class="post-metadata">

**Author:** ![phusebox](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/phusebox/32/45667_2.png) [@phusebox](https://community.homey.app/u/phusebox)\
**Post date:** [November 25, 2021, 1:37pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/3 "2021-11-25T13:37:51Z")

</div>

Nice work, I will be getting a Wallbox Pulsar Plus and an EV within 6 months or so and love this already 😃

---

<div class="post-metadata">

**Author:** ![pandaman](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pandaman/32/48204_2.png) [@pandaman](https://community.homey.app/u/pandaman)\
**Post date:** [December 2, 2021, 2:43pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/4 "2021-12-02T14:43:15Z")

</div>

Hi! I share your frustration on the no documentation part on Wallbox Pulsar  
Do you have a working script with pause and resume? That would really solve a lot of issues for me.  
I started on programming the resume and pause function on your script. But it does not work. Maybe you can help me?

I gathered the URL-info from this program:

> **[wallbox](https://pypi.org/project/wallbox/#description)**
>
> Module for interacting with Wallbox EV charger api

Here is what i did yesterday. Mark that I do not have any experience in programming  
REMINDER: This code does not work:

Code:

```auto
const BASEURL = "https://api.wall-box.com/";
const URL_AUTHENTICATION = 'auth/token/user';
const URL_UNLOCKCHARGER = 'v2/charger/';

// Added for pause and resume
const URL_PAUSECHARGE = 'v3/chargers/';
const URL_REMOTE_ACTION = '/remote-action/';
const URL_CHARGERSTATUS = 'chargers/status/';

var token = '';
var unlocked = { 'locked': 0 };
var locked = { 'locked': 1 };

// Added by me
var pause = { 'action': 2 };
var resume = { 'action': 1 };
var status = '';

/**
 * Get JWT Token from wallbox using login and password
 */
async function connectToWallbox() {
  let connect = await fetch( BASEURL + URL_AUTHENTICATION, {
    headers: {
      'Authorization': 'Basic ' + Buffer.from( username + ":" + password ).toString( 'base64' ),
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',
    }
  } ).then( response => response.json() );
  return connect.jwt;
}

/**
 * Get Charge status. I think we need it to make resume work. This part does not work
 */
async function chargerStatusWallbox(token) {
  let chargerstatus = await fetch( BASEURL + URL_CHARGERSTATUS + MYCHARGERID, {

    method: 'GET',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',
  
  } 
  body: JSON.stringify( status )
  } ).then( response2 => response2.json() );
  if ( unlock.code === 200 ) {
    return false;
  }
  return true;
}

/**
 * Unlock wallbox function with token from Connect function
 */
async function unlockWallbox(token: string) {
  let unlock = await fetch( BASEURL + URL_UNLOCKCHARGER + MYCHARGERID, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify( unlocked )
  } ).then( response => response.json() );
  if ( unlock.code === 200 ) {
    return false;
  }
  return true;
}

/**
 * Lock wallbox function with token from Connect function
 */
async function lockWallbox(token) {
  let lock = await fetch( BASEURL + URL_UNLOCKCHARGER + MYCHARGERID, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(locked)
  } ).then( response => response.json() );
  if ( lock.code === 200 ) {
    return false;
  }
  return true;
}

/** 
 * Pause charging on wallbox with token from Connect function, 
 */
async function pauseWallbox(token) {
  let pause = await fetch( BASEURL + URL_PAUSECHARGE + MYCHARGERID + URL_REMOTE_ACTION, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(pause)
  } ).then( response => response.json() );
  if ( pause.code === 200 ) {
    return false;
  }
  return true;
}

/** Resume charging on wallbox with token from Connect function
 */
async function resumeWallbox(token) {
  let resume = await fetch( BASEURL + URL_PAUSECHARGE + MYCHARGERID + URL_REMOTE_ACTION, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(resume)
  } ).then( response => response.json() );
  if ( resume.code === 200 ) {
    return false;
  }
  return true;
}

// Make sure this script works with 1 single argument
if ( typeof args[0] !== 'string' ) {
  throw new Error( 'Script must be run from a flow with a string variable' );
}

switch ( args[0] ) {
  case "unlock":
    token = await connectToWallbox();
    result = await unlockWallbox( token );
    // Optional. You can leave the next 3 lines out and place them in a flow
    if ( result === true ) {
      say( 'Wallbox is unlocked' );
    }
    break;
  case "lock":
    token = await connectToWallbox();
    result = await lockWallbox( token );
    // Optional. You can leave the next 3 lines out and place them in a flow
    if ( result === true ) {
      say( 'Wallbox is locked' );
    }
    break;
// LAGT til av meg
  case "pause":
    token = await connectToWallbox();
    status = await chargerStatusWallbox( token );
    result = await pauseWallbox( token );
    // Optional. You can leave the next 3 lines out and place them in a flow
    if ( result === true ) {
      say( 'Wallbox is paused' );
    }
    break;
  case "resume":
    token = await connectToWallbox();
    status = await chargerStatusWallbox( token );
    result = await resumeWallbox( token );
    // Optional. You can leave the next 3 lines out and place them in a flow
    if ( result === true ) {
      say( 'Wallbox is resumed' );
    }
    break;
}

```

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [December 8, 2021, 7:35am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/5 "2021-12-08T07:35:14Z")

</div>

Hi!  
Sorry for the late response! For some reason I didn’t receive a notification while I do have them all on…  
Will have a look for you later today!

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [December 8, 2021, 7:36pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/6 "2021-12-08T19:36:05Z")

</div>

This is an addition to the first script to handle pause and resume.

```auto
const username = '<your username (usually email address)';
const password = '<your password>';
const MYCHARGERID = 000000; // ID of your charger
const BASEURL = "https://api.wall-box.com/";
const URL_AUTHENTICATION = 'auth/token/user';
const URL_UNLOCKCHARGER = 'v2/charger/';
const URL_PAUSECHARGER = 'v3/chargers/';
const URL_PAUSECHARGER_ACTION = '/remote-action';

var token = '';
var unlocked = { 'locked': 0 };
var locked = { 'locked': 1 };
var resume = { 'action': 1 };
var pause = { 'action': 2 };

/**
 * Get JWT Token from wallbox using login and password
 */
async function connectToWallbox() {
  let connect = await fetch(BASEURL + URL_AUTHENTICATION, {
    headers: {
      'Authorization': 'Basic ' + Buffer.from(username + ":" + password).toString('base64'),
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',
    }
  }).then(response => response.json());
  return connect.jwt;
}

/**
 * Unlock wallbox function with token from Connect function
 */
async function unlockWallbox(token) {
  let unlock = await fetch(BASEURL + URL_UNLOCKCHARGER + MYCHARGERID, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(unlocked)
  }).then(response => response.json());
  if (unlock.error === true) {
    return unlock.message;
  }
  return true;
}

/**
 * Lock wallbox function with token from Connect function
 */
async function lockWallbox(token) {
  let lock = await fetch(BASEURL + URL_UNLOCKCHARGER + MYCHARGERID, {

    method: 'PUT',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(locked)
  }).then(response => response.json());
  if (lock.error === true) {
    return lock.message;
  }
  return true;
}

/**
 * Resume wallbox function with token from Connect function
 */
async function resumeWallbox(token) {
  let wbResume = await fetch(BASEURL + URL_PAUSECHARGER + MYCHARGERID + URL_PAUSECHARGER_ACTION, {

    method: 'POST',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(resume)
  }).then(response => response.json());
  if ( wbResume.error === true ) {
    return wbResume.message;
  }
  return true;
}

/**
 * Pause wallbox function with token from Connect function
 */
async function pauseWallbox(token) {
  let wbPause = await fetch(BASEURL + URL_PAUSECHARGER + MYCHARGERID + URL_PAUSECHARGER_ACTION, {

    method: 'POST',
    headers: {
      'Authorization': 'Bearer ' + token,
      'Accept': 'application/json, text/plain, */*',
      'Content-Type': 'application/json;charset=utf-8',

    },
    body: JSON.stringify(pause)
  }).then(response => response.json());
  if ( wbPause.error === true ) {
    return wbPause.message;
  }
  return true;
}

// Make sure this script works with 1 single argument
if (typeof args[0] !== 'string') {
  throw new Error('Script must be run from a flow with a string variable');
}

switch (args[0]) {
  case "unlock":
    token = await connectToWallbox();
    result = await unlockWallbox(token);
    // Optional. You can leave the next 3 lines out and place them in a flow
    if (result === true) {
      say('Wallbox is ontgrendeld');
    } else say( result );
    break;
  case "lock":
    token = await connectToWallbox();
    result = await lockWallbox(token);
    // Optional. You can leave the next 3 lines out and place them in a flow
    if (result === true) {
      say('Wallbox is vergrendeld');
    } else say( result );
    break;
  case "pause":
    token = await connectToWallbox();
    result = await pauseWallbox(token);
    // Optional. You can leave the next 3 lines out and place them in a flow
    if (result === true) {
      say('Wallbox is gepauzeerd');
    } else say( result );
    break;
  case "resume":
    token = await connectToWallbox();
    result = await resumeWallbox(token);
    // Optional. You can leave the next 3 lines out and place them in a flow
    if (result === true) {
      say('Wallbox is weer an het laden');
    } else say( result );
    break;
}

```

---

<div class="post-metadata">

**Author:** ![pandaman](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pandaman/32/48204_2.png) [@pandaman](https://community.homey.app/u/pandaman)\
**Post date:** [December 10, 2021, 11:11am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/7 "2021-12-10T11:11:52Z")

</div>

Hi Sen-Sai  
Thank you so much for this script. It works flawlessly! Late response is better than none 😄  
I see that I was “closer” to a solution that I thought I was 😄

Now I can do this in a flow

- Default at locked mode. Wallbox does not start charging
- Use unlock when price is low
- Use pause when the price is high after unlock
- Use resume when price is low again

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [December 13, 2021, 11:26am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/8 "2021-12-13T11:26:42Z")

</div>

Thanks! Good to hear!

---

<div class="post-metadata">

**Author:** ![Jiri\_Pech](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jiri_pech/32/48190_2.png) [@Jiri\_Pech](https://community.homey.app/u/Jiri_Pech)\
**Post date:** [January 1, 2022, 6:36pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/9 "2022-01-01T18:36:44Z")

</div>

Hi, i would like to have wallbox pulsar plus app. I would donate some money to have it 😊

---

<div class="post-metadata">

**Author:** ![Ze\_Kitez](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/ze_kitez/32/51764_2.png) [@Ze\_Kitez](https://community.homey.app/u/Ze_Kitez)\
**Post date:** [February 15, 2022, 2:19pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/10 "2022-02-15T14:19:57Z")

</div>

With the help of Sen-Sai’s script I made an app, see youtube [https://www.youtube.com/watch?v=NtlvPnDq5qw](https://www.youtube.com/watch?v=NtlvPnDq5qw)  
The code is available on GitHub: [https://github.com/zekitez/WandDeuze](https://github.com/zekitez/WandDeuze) and the app in Google play.

 ![one](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/3/c368cc51d92ecbfd586b27d69abe61ecc9a02ee5.png)

---

<div class="post-metadata">

**Author:** ![Jerome\_Poyet](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jerome_poyet/32/18032_2.png) [@Jerome\_Poyet](https://community.homey.app/u/Jerome_Poyet)\
**Post date:** [May 9, 2022, 7:26am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/11 "2022-05-09T07:26:36Z")

</div>

Hello,  
J‘ai pas encore réussi à créer un périphérique virtuel (je suis très débutant) mais j’ai une installation solaire et ce serait génial si des variables pouvaient géré la puissance de la Wallbox.  
Est-ce que tu as réussi à créer quelques choses?

---

<div class="post-metadata">

**Author:** ![Jerome\_Poyet](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/jerome_poyet/32/18032_2.png) [@Jerome\_Poyet](https://community.homey.app/u/Jerome_Poyet)\
**Post date:** [May 9, 2022, 8:08am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/14 "2022-05-09T08:08:12Z")

</div>

Hello,  
I haven’t managed to create a virtual device yet (I’m a very beginner) but I have a solar installation and it would be great if variables could manage the power of the Wallbox.  
Did you manage to create a few things?

---

<div class="post-metadata">

**Author:** ![RaoulvM](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/raoulvm/32/41820_2.png) [@RaoulvM](https://community.homey.app/u/RaoulvM)\
**Post date:** [June 8, 2022, 8:42am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/15 "2022-06-08T08:42:59Z")

</div>

Hi Sen-Sai,

Thanks for all your work!  
I’ve been struggling to get the ‘argument’s’.  
How are they added to my tags?

I’m a pro at copy-and-pasting everything you’ve done, but that’s as far as my knowledge goes 🙂  
Nogmaals dank!

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [June 8, 2022, 7:21pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/16 "2022-06-08T19:21:28Z")

</div>

Hi!

When you look at the second post, with the screenshots, there’s one of a flow where I’ve added a homeyscript card that is called something like run script with arguments. That’s the one to use.  
Or did you mean something else?

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [June 8, 2022, 7:24pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/17 "2022-06-08T19:24:02Z")

</div>

Hi!

Sorry no I have not. The arguments currently only have to do with lock and unlock, pause and resume.  
But since you have asked, I’ll have a look when I have some time to add the power outage.

---

<div class="post-metadata">

**Author:** ![Adri1](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/adri1/32/17548_2.png) [@Adri1](https://community.homey.app/u/Adri1)\
**Post date:** [June 26, 2022, 8:49pm UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/18 "2022-06-26T20:49:35Z")

</div>

I tried to manage this, But is too much for me. I wait for an app. Can I donate?  
Best regards Adri

---

<div class="post-metadata">

**Author:** ![kenmyh](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/kenmyh/32/34298_2.png) [@kenmyh](https://community.homey.app/u/kenmyh)\
**Post date:** [August 3, 2022, 5:19am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/19 "2022-08-03T05:19:05Z")

</div>

Does anyone know if there will be an app for this?

---

<div class="post-metadata">

**Author:** ![pandaman](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pandaman/32/48204_2.png) [@pandaman](https://community.homey.app/u/pandaman)\
**Post date:** [November 11, 2022, 8:01am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/20 "2022-11-11T08:01:56Z")

</div>

Hi again! It would have been really nice to been able to adjust the power outage. @Ze_Kitez have documented this quite well in the github-link [GitHub - zekitez/WandDeuze: Android app WandDeuze communicates with your "Wallbox (Pulsar (Plus))" via Wifi only.](https://github.com/zekitez/WandDeuze)

I tried to program some one this, but not sure how i get the return variable back (power outage) to use it in a flow

---

<div class="post-metadata">

**Author:** ![Sen-Sai](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/sen-sai/32/13164_2.png) [@Sen-Sai](https://community.homey.app/u/Sen-Sai)\
**Post date:** [November 11, 2022, 8:20am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/21 "2022-11-11T08:20:38Z")

</div>

I would have thought I’d be able to have had a look by now, but alas. Can’t promise anything, but I’ll put it in my agenda for this weekend…

---

<div class="post-metadata">

**Author:** ![pandaman](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/pandaman/32/48204_2.png) [@pandaman](https://community.homey.app/u/pandaman)\
**Post date:** [November 11, 2022, 10:49am UTC](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616/22 "2022-11-11T10:49:58Z")

</div>

No need to rush 😄 Maybe you could extraxt the monthly usage data i kwh. That is probably easy task for you, but still.

[Next page](https://community.homey.app/t/homeyscript-for-wallbox-pulsar-plus-charger-lock-unlock-pause-resume/54616.md?page=2)
