# \[APP\]\[Pro\] go-e Charger

**URL:** <https://community.homey.app/t/app-pro-go-e-charger/74195>\
**Category:** Apps\
**Tags:** app, homey-pro, sdk3\
**Created:** [December 27, 2022, 3:57pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195 "2022-12-27T15:57:00Z")\
**Posts on this page:** 20\
**Page:** 6

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [April 20, 2025, 9:37am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/104 "2025-04-20T09:37:48Z")

</div>

Technically the pro model should work with the same functionality as the Gemini models, so they could be paired with Homey. However it is untested and pro-specific features are not supported at this time. I need some funding arranged to get my self also a Pro model to be able to add any additional functionality for it.  
See first post about how to support.

---

<div class="post-metadata">

**Author:** ![Matti\_Hirvonen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/matti_hirvonen/32/79184_2.png) [@Matti\_Hirvonen](https://community.homey.app/u/Matti_Hirvonen)\
**Post date:** [June 22, 2025, 7:34pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/105 "2025-06-22T19:34:35Z")

</div>

Hi! i have two EV’s. Leaf and Polestar. I need to change phases and amperes for the night depending witch car is connected. I tried Homey Polestar app but it´s no good for this. Could this be solved with RFID- tags? I tried but I couldn’t figure out how.

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [June 23, 2025, 2:58am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/106 "2025-06-23T02:58:13Z")

</div>

There is a User Card capability tag available for go-e Chargers using v2 API. However there are no events yet for it (no triggers). You could use Device Capabilities app to monitor the change of that capability.

 ![Screenshot 2025-06-23 at 8.10.14](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/e/1/e10e98b345110045db4a898b90ad964df359c246.png)

---

<div class="post-metadata">

**Author:** ![Matti\_Hirvonen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/matti_hirvonen/32/79184_2.png) [@Matti\_Hirvonen](https://community.homey.app/u/Matti_Hirvonen)\
**Post date:** [June 26, 2025, 6:44am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/107 "2025-06-26T06:44:50Z")

</div>

This worked perfectly for me! Thanks!

---

<div class="post-metadata">

**Author:** ![Matti\_Hirvonen](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/matti_hirvonen/32/79184_2.png) [@Matti\_Hirvonen](https://community.homey.app/u/Matti_Hirvonen)\
**Post date:** [July 29, 2025, 7:04pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/108 "2025-07-29T19:04:18Z")

</div>

Anyone tested? Works with homey app?

 ![1000072141](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/0/d/0d3d99fec7f598309cd68d9ec0b113191ec70681.jpeg)

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [July 30, 2025, 6:59am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/109 "2025-07-30T06:59:28Z")

</div>

Doesn’t look like there is any API-changes that would impact.

---

<div class="post-metadata">

**Author:** ![CEC](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/cec/32/121376_2.png) [@CEC](https://community.homey.app/u/CEC)\
**Post date:** [August 22, 2025, 10:11am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/110 "2025-08-22T10:11:02Z")

</div>

Hello,

I’m looking for an example of an advanced flow for Go e Gemini EV-charger with loadbalancing. On the P1 port of my digital counter, I have a Homewizard-dongle. I would limit the peak current of my total house consumption, while loading my electric car. I would also have the option to limit the load capacity - for example: loading has to stop at 90% of the battery capacity. And I have also another very important question: what to do with the Go e app on my mobile?

Thank you so much for your help!

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [August 22, 2025, 10:49am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/111 "2025-08-22T10:49:43Z")

</div>

There are several topics in this forum for generic load balancing flows. Such flows examples can be used in your case.

@Picsou621 has had great success in optimizing. For example have a look at [Charging EV with Advanced Flows](https://community.homey.app/t/66223) .

One note, that the EV charger does not know what is the percentage of charge in the car. You would need a car make/model specific app to read the state of charge.

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 8, 2025, 1:22pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/112 "2025-09-08T13:22:03Z")

</div>

Hello, will you plan add also **go-e Charger PRO CORE? I bought one a week ago and I want to add it to my homey**

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [September 8, 2025, 1:59pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/113 "2025-09-08T13:59:33Z")

</div>

> [@\[APP\]\[Pro\] go-e Charger](https://community.homey.app/t/app-pro-go-e-charger/74195/104):
>
> Technically the pro model should work with the same functionality as the Gemini models, so they could be paired with Homey. However it is untested and pro-specific features are not supported at this time. I need some funding arranged to get my self also a Pro model to be able to add any additional functionality for it. See first post about how to support.

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 16, 2025, 9:36am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/114 "2025-09-16T09:36:56Z")

</div>

helllo, it seems that it’s not working with new go-e charger pro core or I did something wrong. I allowed API v2, I was able to add device to homey but all values are empty - not updating

 ![IMG_2944](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/8/6/86fa7aa2def2de16f5a7d07de989749ded7db828.png)

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [September 16, 2025, 11:57am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/115 "2025-09-16T11:57:48Z")

</div>

From Homey Mobile app, please go to … More → Apps and find the go-e Charger app. Then go to settings of the app from the gear icon and Create Diagnostic Report.

Hopefully the log will give me some idea why is not working.

Additionally, if you could check how it advertises itself in the network:

> **[go-eCharger bonjour discovery with mDNS-DS · oh2th-homey com.go-e.charger ·...](https://github.com/oh2th-homey/com.go-e.charger/discussions/7)**
>
> To verify if your go-eCharger is automatically discoverable on your network, you can use Bonjour Browser on Windows and Discovery on macOS. On the CLI in MacOS or Linux there is dns-sd tool. Find t...

It could be that it is not recognized as it is a new model.

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 16, 2025, 1:14pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/116 "2025-09-16T13:14:27Z")

</div>

here is diagnostic report id = bd7f7dd1-4f60-43bc-b123-593fc15fbbad

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 17, 2025, 9:52am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/117 "2025-09-17T09:52:17Z")

</div>

and here is screenshot from bonjour discovery

 ![Screenshot 2025-09-17 at 11.51.18](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/3/f/3fa1b5bff8d4d3318019c10c5818580b45ec474d.jpeg)

 ![Screenshot 2025-09-17 at 11.51.29](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/8/7/875faf1fc38ef7c56b3ed8a3e6ffbc48dc78ab6d.png)

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [September 17, 2025, 10:36am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/118 "2025-09-17T10:36:06Z")

</div>

Thank you, that will help me to introduce the model specific driver. But it won’t fix your problem.

based on the diagnostics report, the app is connecting to the go-e charger, but gets a “bad request” response from it.

Please try this and replace the IP-ADDR of your go-e Charger  
[http://IP-ADDR/api/status?filter=sse,fna,car,alw,acs,frc,trx,err,wh,pha,nrg,eto,tma,amp,ama,cbl,fsp](http://IP-ADDR/api/status?filter=sse,fna,car,alw,acs,frc,trx,err,wh,pha,nrg,eto,tma,amp,ama,cbl,fsp)

That should return a JSON formatted response. If not, then the API is not activated properly with the go-e mobile app.

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 18, 2025, 7:45am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/119 "2025-09-18T07:45:08Z")

</div>

> [@OH2TH](#):
>
> [http://IP-ADDR/api/status?filter=sse,fna,car,alw,acs,frc,trx,err,wh,pha,nrg,eto,tma,amp,ama,cbl,fsp](http://IP-ADDR/api/status?filter=sse,fna,car,alw,acs,frc,trx,err,wh,pha,nrg,eto,tma,amp,ama,cbl,fsp)

Hello, here is result. It seems that it’s working

 ![Screenshot 2025-09-18 at 09.44.31](https://us1.discourse-cdn.com/flex025/uploads/athom/original/3X/c/9/c9a0d06369cd30d7f325c3cf1c8b54a4469b3a9f.jpeg)

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [September 18, 2025, 7:54am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/120 "2025-09-18T07:54:46Z")

</div>

Hmm, this is becoming interesting. I will need to contact go-e to get some information on why the new Core/Pro models rejects the request when called from the app, but not from a browser.

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 19, 2025, 10:21am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/121 "2025-09-19T10:21:53Z")

</div>

FYI - It can help you.I tested api via homeyscript to set values for virtual device and it works correctly .

---

<div class="post-metadata">

**Author:** ![OH2TH](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/oh2th/32/111414_2.png) [@OH2TH](https://community.homey.app/u/OH2TH)\
**Post date:** [September 19, 2025, 1:09pm UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/122 "2025-09-19T13:09:32Z")

</div>

Could you share your HomeyScript. It just might help. There is something with the http request generated in the app making the charger to reject it.

---

<div class="post-metadata">

**Author:** ![Peter\_Stupak](https://sea1.discourse-cdn.com/flex025/user_avatar/community.homey.app/peter_stupak/32/72096_2.png) [@Peter\_Stupak](https://community.homey.app/u/Peter_Stupak)\
**Post date:** [September 21, 2025, 10:13am UTC](https://community.homey.app/t/app-pro-go-e-charger/74195/123 "2025-09-21T10:13:27Z")

</div>

of course - it was written in collaboration with Chat gpt

````auto
/**
 * go-e → AVD sync (capability auto-detect + DC app fallback)
 * - Zobrazí capability zoznam AVD (ID + title)
 * - Nájde capability podľa ID alebo podľa title
 * - Zápis: setCapabilityValue → fallback cez Device Capabilities app (setvalue)
 */
const CFG = {
	IP: '192.168.88.24',
	AVD_NAME: 'Wallbox',
	STORE_KEY: 'DeviceCapabilityVirtualDevice_20',
	DEBUG: false,
	// Tu MÔŽEŠ uvádzať buď skutočné capability IDs (napr. ‘measure_power’),
	// alebo presné TITULKY polí v AVD (napr. ‘Vykon’, ‘Prud’...).
	CAP: {
		current: 'Prud',
		power: 'Vykon',
		allowText: 'Povolenie',
		state: 'Stav',
		error: 'Chyba',
		session: 'Session',
		total: 'Total',
	},
};

function dbg(...a) {
	if (CFG.DEBUG) log('[goe - avd]', ...a);
}
// — tvoje fetchovanie z predošlého skriptu (skrátené na podstatné) —
async function fetchJson(url) {
	const t0 = Date.now();
	const res = await fetch(url);
	const t = Date.now() - t0;
	dbg(`Fetch ${url} → ${res.status} in ${t}ms`);
	if (!res.ok) throw new Error(`HTTP ${res.status}`);
	return res.json();
}

function carToText(car) {
	const c = Number(car);
	return c === 2 ? 'nabíja' : c === 3 ? 'čaká na vozidlo' : c === 4 ? 'hotovo(auto pripojené)' : 'pripravené(bez vozidla)';
}

function errToText(err) {
	const e = Number(err);
	if (!e) return 'OK';
	const map = {
		1: 'RCCB',
		3: 'Chyba fázy',
		8: 'Chýba zem',
		10: 'Interná chyba'
	};
	return map[e] ? 'Chyba ${e}' : sdf;
}
// ---------------------------------------------------------------
// v2 bez filtra (u teba funguje)
const STATUS_URL = `http://${CFG.IP}/api/status`;
	async function resolveDeviceIdByName(name) {
		// 1) skúsiť uložené id
		const cached = global.get(CFG.STORE_KEY);
		if (cached) {
			dbg('Using cached deviceId: ', cached);
			return String(cached);
		}
		// 2) hľadať podľa názvu
		const devices = await Homey.devices.getDevices(); // map id->device
		const list = Object.values(devices);
		const match = list.filter(d => d.name === name);
		if (match.length === 1) {
			const id = match[0].id;
			global.set(CFG.STORE_KEY, id);
			dbg('Matched AVD by name:', name, '→', id);
			return id;
		}
		const all = list.map(d => `• ${d.name} (${d.id})`).join('\n');
		throw new Error(match.length === 0 ?
			`Nenašiel som zariadenie s názvom “${name}”. Dostupné:\n${all}` :
			`Našiel som viac zariadení s názvom “${name}”. Uprav CFG.AVD_NAME tak, aby bol jedinečný.`);
	}
// Pomocník: vypíše capabilities a vráti mapu {id → {title,type}}
function listCapabilities(device) {
	const map = {};
	const ids = device.capabilities || `[]`;
	ids.forEach(id => {
		const obj = device.capabilitiesObj[id] || {};
		map[id] = {
			title: obj.title || id,
			type: obj.type
		};
	});
	// Log pekne zoradený pre kontrolu
	const lines = Object.entries(map).map(([id, meta]) => `• ${id} — “${meta.title}” (type=${meta.type||'?'})`);
	dbg('AVD capabilities: \n' + lines.join('\n'));
	return map;
}
// Nájde capability podľa presného ID alebo podľa titulku (bez diakritiky/porovnanie case-insensitive)
function normalize(s) {
	return String(s || '').toLowerCase().normalize('NFD').replace(/\p{Diacritic}/gu, '').trim();
}

function resolveCapIdByIdOrTitle(device, desired) {
	const caps = listCapabilities(device);
	const wanted = normalize(desired);
	// 1) priama zhoda ID
	for (const id of Object.keys(caps)) {
		if (normalize(id) === wanted) return id;
	}
	// 2) zhoda podľa title
	for (const [id, meta] of Object.entries(caps)) {
		if (normalize(meta.title) === wanted) return id;
	}
	dbg(`WARN: Nenašiel som capability pre “${desired}”`);
	return null;
}
// Fallback zápis cez appku Device Capabilities (oficiálny spôsob AVD)
async function setViaDeviceCapabilitiesApp(deviceId, fieldId, value) {
	try {
		const dcApp = await Homey.apps.getApp({
			id: 'nl.qluster - it.DeviceCapabilities'
		});
		await dcApp.post({
			path: 'setvalue',
			body: {
				device: deviceId,
				field: fieldId,
				value
			}
		});
		dbg(`DC-app setvalue OK: ${fieldId} =`, value);
		return true;
	} catch (e) {
		dbg(`DC-app setvalue FAIL ${fieldId}:`, e.message);
		return false;
	}
}
// Najbezpečnejší zápis: skúsiť setCapabilityValue, ak spadne → DC app
async function safeSetCapability(device, fieldId, value) {
		if (!fieldId) return;
		try {
			await device.setCapabilityValue(fieldId, value);
			dbg(`setCapabilityValue OK: ${fieldId} =`, value);
		} catch (e) {
			dbg(`setCapabilityValue FAIL ${fieldId}:`, e.message);
			await setViaDeviceCapabilitiesApp(device.id, fieldId, value);
		}
	}
	(async () => {
		dbg('-- -- - RUN START-- -- - ');
		// 1) načítaj status
		const j = await fetchJson(STATUS_URL);
		// odvodené hodnoty
		const currentA = Number.isFinite(Number(j.amp)) ? Number(j.amp) : null;
		let powerkW = null;
		if (Array.isArray(j.nrg) && j.nrg.length > 11 && Number.isFinite(Number(j.nrg[11]))) {
			powerkW = Number((Number(j.nrg[11]) / 1000).toFixed(2));
		} else if (j.tpa != null && Number.isFinite(Number(j.tpa))) {
			powerkW = Number((Number(j.tpa) / 1000).toFixed(2));
		} else if (j.pwr != null && Number.isFinite(Number(j.pwr))) {
			powerkW = Number((Number(j.pwr) / 1000).toFixed(2));
		}
		const allow = Number.isFinite(Number(j.alw)) ? Number(j.alw) : (j.alw === true ? 1 : 0);
		const stateText = carToText(j.car);
		const errorText = errToText(j.err);
		let sessionkWh = null;
		if (j.dws != null && Number.isFinite(Number(j.dws))) {
			sessionkWh = Number((Number(j.dws) / 360000).toFixed(3));
		} else if (j.wh != null && Number.isFinite(Number(j.wh))) {
			sessionkWh = Number((Number(j.wh) / 1000).toFixed(3));
		}
		const totalkWh = (j.eto != null && Number.isFinite(Number(j.eto))) ?
			Number((Number(j.eto) / 1000).toFixed(1)) :
			null;
		dbg('Derived: ', {
			currentA,
			powerkW,
			allow,
			stateText,
			errorText,
			sessionkWh,
			totalkWh
		});
		// 2) AVD
		const deviceId = await resolveDeviceIdByName(CFG.AVD_NAME);
		const device = (await Homey.devices.getDevices())[deviceId];
		if (!device) throw new Error(`DeviceID ${deviceId} neexistuje`);
		// 3) premapuj ním zadané mená/IDs na skutočné capability IDs
		const map = {
			current: resolveCapIdByIdOrTitle(device, CFG.CAP.current),
			power: resolveCapIdByIdOrTitle(device, CFG.CAP.power),
			allow: resolveCapIdByIdOrTitle(device, CFG.CAP.allowText),
			state: resolveCapIdByIdOrTitle(device, CFG.CAP.state),
			error: resolveCapIdByIdOrTitle(device, CFG.CAP.error),
			session: resolveCapIdByIdOrTitle(device, CFG.CAP.session),
			total: resolveCapIdByIdOrTitle(device, CFG.CAP.total),
		};
		dbg('Resolved capability IDs: ', map);
		// 4) zápis (safeSet → ak treba DC app)
		await safeSetCapability(device, map.current, currentA);
		await safeSetCapability(device, map.power, powerkW);
		await safeSetCapability(device, map.allow, allow ? 'Áno' : 'Nie');
		await safeSetCapability(device, map.state, stateText);
		await safeSetCapability(device, map.error, errorText);
		await safeSetCapability(device, map.session, sessionkWh);
		await safeSetCapability(device, map.total, totalkWh);
		// 5) info do logu
		dbg('DONE for device', device.name, deviceId);
		return JSON.stringify({
			deviceId,
			map,
			currentA,
			powerkW,
			allow,
			stateText,
			errorText,
			sessionkWh,
			totalkWh
		});
	})().catch(e => {
		log('[goe - avd] ERROR: ', e.message);
		throw new Error(e.message);
	});```
````

[Previous page](https://community.homey.app/t/app-pro-go-e-charger/74195.md?page=5)

[Next page](https://community.homey.app/t/app-pro-go-e-charger/74195.md?page=7)
