May 2024 EV charging industry news summary

May 29, 2024 | Monthly News Summary

Preface

May 2024 EV charging industry news summary

Guide you through the monthly updates of the electric vehicle charging industry. Welcome to subscribe to our news blog.

May 2024 EV charging industry news summary

Business News

Tesla

According to Tesla China, the Tesla Shanghai Gigafactory for energy storage is scheduled to commence construction in May this year and achieve mass production by the first quarter of 2025.

Tesla will send a team to India this month to select the site for its planned investment of $2 billion to $3 billion (approximately 14.5 billion yuan) in an electric vehicle factory.

BMW

The BMW Group has signed an agreement with Tata Technologies to establish a joint venture company.

Porsche

Porsche announced that it has signed an agreement with ClearMotion, a professional chassis system development company based in Boston, USA, to collaborate in the field of advanced chassis systems.

Ford

Ford’s plans to launch a three-row electric vehicle in Canada and produce the next generation of electric pickups at its factory in Tennessee, USA, have both been delayed.

Nissan

Nissan will adopt Tesla’s groundbreaking gigacasting technology to manufacture certain electric vehicles in order to reduce costs.

Kia

Korean automaker Kia plans to make its electric vehicles eligible for up to $7,500 in U.S. federal tax credits by early 2025.

GeleximcoGroup

Vietnam’s Geleximco Group has announced that it has reached a joint venture agreement with a subsidiary of Chery Automobile to construct an $800 million factory in the northern provinces of Vietnam.

LG Energy

LG Energy Solutions, a South Korean company, has announced that construction of its $5.5 billion battery factory in Arizona, USA has commenced and is expected to be operational by 2026.

Regional News

United States

The Federal Highway Administration of the United States has confirmed that, since the implementation of the Bipartisan Infrastructure Law over two years ago, only seven public charging stations with a total of 38 charging ports have been made available for public use in Hawaii, New York, Ohio, and Pennsylvania states.

Sherrod Brown, Chairman of the U.S. Senate Banking Committee, is urging Biden to prevent Chinese-manufactured cars from entering the American automobile market, marking the most forceful appeal by American legislators towards taking action against Chinese automotive companies.

European Union

The European Commission has approved a state aid plan of 267 million euros to support Volvo Car Corporation in building a new electric passenger car factory near Kosice, eastern Slovakia.

Canada

The Canadian federal budget has announced a new tax relief policy, providing a 10% tax exemption on the capital costs of building electric vehicle factories.

Japan

Japan and Europe will establish a data sharing system to collaborate on the recycling of electric vehicle batteries. This system will share information about extraction sites and mineral suppliers, with plans to launch in 2025, aiming to reduce dependence on major supplier countries for rare metals like lithium.

Thailand

Thailand has approved Chery Automobile to establish an electric vehicle production base in Rayong Province, with the factory expected to start production in 2025 and produce nearly 50,000 pure electric and hybrid vehicles annually in the first phase.

Comments

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

tag. * Or use the Divi Theme Options → Integration panel. * * Configuration: * - WEBHOOK_URL: n8n webhook endpoint * - brand colors are hardcoded for KIWI EV */(function() { 'use strict';// ============ CONFIGURATION ============ const CONFIG = { webhookUrl: 'https://n8n.srv1272413.hstgr.cloud/webhook/14df1758-7932-4d2d-8926-2a2298c0fc4a/chat', companyName: 'KIWI EV Support', subtitle: 'Your AI-powered KIWI EV assistant is here to help.', primaryColor: '#00a651', primaryDark: '#007b3d', secondaryColor: '#f0f0f0', textColor: '#333333', headerTextColor: '#ffffff', botBubbleColor: '#f0f0f0', userBubbleColor: '#00a651', welcomeMessage: '👋 Welcome to KIWI EV! Ask me anything about our electric vehicles, partnerships, or how we can help you bring affordable EV solutions to your market.', placeholderText: 'Ask about KIWI EV products, partnerships, or support...', sessionStorageKey: 'kiwi_ev_chat_session', historyStorageKey: 'kiwi_ev_chat_history', storagePrefix: 'kiwi_ev_', };// ============ STATE ============ let isOpen = false; let sessionId = loadSessionId(); let messages = loadHistory(); let isSending = false;// ============ SESSION MANAGEMENT ============ function generateSessionId() { return 'kiwi_' + Date.now() + '_' + Math.random().toString(36).substr(2, 9); }function loadSessionId() { try { let sid = localStorage.getItem(CONFIG.sessionStorageKey); if (!sid) { sid = generateSessionId(); localStorage.setItem(CONFIG.sessionStorageKey, sid); } return sid; } catch(e) { return generateSessionId(); } }function loadHistory() { try { let data = localStorage.getItem(CONFIG.historyStorageKey); return data ? JSON.parse(data) : []; } catch(e) { return []; } }function saveHistory() { try { localStorage.setItem(CONFIG.historyStorageKey, JSON.stringify(messages.slice(-50))); } catch(e) { // localStorage full or unavailable — silently ignore } }// ============ UI CONSTRUCTION ============ function createWidget() { // Check if already exists if (document.getElementById('kiwi-ev-chat-widget')) return;// Create root container const root = document.createElement('div'); root.id = 'kiwi-ev-chat-widget'; root.innerHTML = `
${CONFIG.companyName}
${CONFIG.subtitle}
${CONFIG.welcomeMessage}
`;document.body.appendChild(root); bindEvents(); restoreHistory();// Auto-resize textarea const input = document.getElementById('kiwiInput'); input.addEventListener('input', function() { this.style.height = 'auto'; this.style.height = Math.min(this.scrollHeight, 100) + 'px'; }); }// ============ EVENT BINDING ============ function bindEvents() { document.getElementById('kiwiChatButton').addEventListener('click', toggleChat); document.getElementById('kiwiSendBtn').addEventListener('click', sendMessage); document.getElementById('kiwiInput').addEventListener('keydown', function(e) { if (e.key === 'Enter' && !e.shiftKey) { e.preventDefault(); sendMessage(); } }); }// ============ CHAT TOGGLE ============ function toggleChat() { isOpen = !isOpen; const panel = document.getElementById('kiwiChatPanel'); const button = document.getElementById('kiwiChatButton'); panel.classList.toggle('open', isOpen); button.classList.toggle('open', isOpen); if (isOpen) { setTimeout(() => { document.getElementById('kiwiInput').focus(); scrollToBottom(); }, 100); } }// ============ MESSAGE DISPLAY ============ function addMessage(text, role) { const container = document.getElementById('kiwiMessages'); const typingEl = document.getElementById('kiwiTyping'); const msgDiv = document.createElement('div'); msgDiv.className = 'kiwi-message ' + role; const bubble = document.createElement('div'); bubble.className = 'kiwi-bubble'; bubble.textContent = text; msgDiv.appendChild(bubble); const time = document.createElement('div'); time.className = 'kiwi-message-time'; time.textContent = new Date().toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' }); msgDiv.appendChild(time); container.insertBefore(msgDiv, typingEl); scrollToBottom();messages.push({ role: role, text: text, time: new Date().toISOString() }); saveHistory(); }function showTyping() { document.getElementById('kiwiTyping').classList.add('active'); scrollToBottom(); }function hideTyping() { document.getElementById('kiwiTyping').classList.remove('active'); }function scrollToBottom() { const container = document.getElementById('kiwiMessages'); setTimeout(() => { container.scrollTop = container.scrollHeight; }, 50); }function restoreHistory() { // Show previous messages from this session (excluding welcome) const welcomeEl = document.querySelector('.kiwi-message.bot:first-child .kiwi-bubble'); if (welcomeEl && welcomeEl.textContent === CONFIG.welcomeMessage) { // Keep welcome, load rest for (const msg of messages) { if (msg.text !== CONFIG.welcomeMessage) { addMessage(msg.text, msg.role); } } } }// ============ SEND MESSAGE ============ function sendMessage() { if (isSending) return; const input = document.getElementById('kiwiInput'); const text = input.value.trim(); if (!text) return;input.value = ''; input.style.height = 'auto';addMessage(text, 'user'); isSending = true; document.getElementById('kiwiSendBtn').disabled = true; showTyping();// Call n8n webhook fetch(CONFIG.webhookUrl, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ action: 'sendMessage', sessionId: sessionId, chatInput: text, }) }) .then(response => { if (!response.ok) throw new Error('HTTP ' + response.status); return response.json(); }) .then(data => { hideTyping(); const reply = data.output || data.response || data.text || JSON.stringify(data); addMessage(reply, 'bot'); }) .catch(err => { hideTyping(); addMessage('Sorry, I\'m having trouble connecting right now. Please try again later.', 'bot'); console.error('Chat widget error:', err); }) .finally(() => { isSending = false; document.getElementById('kiwiSendBtn').disabled = false; }); }// ============ INIT ============ if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', createWidget); } else { createWidget(); }})();