var ewww_webp_supported=!1;function check_webp_feature(A,e){var w;e=void 0!==e?e:function(){},ewww_webp_supported?e(ewww_webp_supported):((w=new Image).onload=function(){ewww_webp_supported=0<w.width&&0<w.height,e&&e(ewww_webp_supported)},w.onerror=function(){e&&e(!1)},w.src="data:image/webp;base64,"+{alpha:"UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA=="}[A])}check_webp_feature("alpha");
var Arrive=function(c,w){"use strict";if(c.MutationObserver&&"undefined"!=typeof HTMLElement){var r,a=0,u=(r=HTMLElement.prototype.matches||HTMLElement.prototype.webkitMatchesSelector||HTMLElement.prototype.mozMatchesSelector||HTMLElement.prototype.msMatchesSelector,{matchesSelector:function(e,t){return e instanceof HTMLElement&&r.call(e,t)},addMethod:function(e,t,r){var a=e[t];e[t]=function(){return r.length==arguments.length?r.apply(this,arguments):"function"==typeof a?a.apply(this,arguments):void 0}},callCallbacks:function(e,t){t&&t.options.onceOnly&&1==t.firedElems.length&&(e=[e[0]]);for(var r,a=0;r=e[a];a++)r&&r.callback&&r.callback.call(r.elem,r.elem);t&&t.options.onceOnly&&1==t.firedElems.length&&t.me.unbindEventWithSelectorAndCallback.call(t.target,t.selector,t.callback)},checkChildNodesRecursively:function(e,t,r,a){for(var i,n=0;i=e[n];n++)r(i,t,a)&&a.push({callback:t.callback,elem:i}),0<i.childNodes.length&&u.checkChildNodesRecursively(i.childNodes,t,r,a)},mergeArrays:function(e,t){var r,a={};for(r in e)e.hasOwnProperty(r)&&(a[r]=e[r]);for(r in t)t.hasOwnProperty(r)&&(a[r]=t[r]);return a},toElementsArray:function(e){return e=void 0!==e&&("number"!=typeof e.length||e===c)?[e]:e}}),e=(l.prototype.addEvent=function(e,t,r,a){a={target:e,selector:t,options:r,callback:a,firedElems:[]};return this._beforeAdding&&this._beforeAdding(a),this._eventsBucket.push(a),a},l.prototype.removeEvent=function(e){for(var t,r=this._eventsBucket.length-1;t=this._eventsBucket[r];r--)e(t)&&(this._beforeRemoving&&this._beforeRemoving(t),(t=this._eventsBucket.splice(r,1))&&t.length&&(t[0].callback=null))},l.prototype.beforeAdding=function(e){this._beforeAdding=e},l.prototype.beforeRemoving=function(e){this._beforeRemoving=e},l),t=function(i,n){var o=new e,l=this,s={fireOnAttributesModification:!1};return o.beforeAdding(function(t){var e=t.target;e!==c.document&&e!==c||(e=document.getElementsByTagName("html")[0]);var r=new MutationObserver(function(e){n.call(this,e,t)}),a=i(t.options);r.observe(e,a),t.observer=r,t.me=l}),o.beforeRemoving(function(e){e.observer.disconnect()}),this.bindEvent=function(e,t,r){t=u.mergeArrays(s,t);for(var a=u.toElementsArray(this),i=0;i<a.length;i++)o.addEvent(a[i],e,t,r)},this.unbindEvent=function(){var r=u.toElementsArray(this);o.removeEvent(function(e){for(var t=0;t<r.length;t++)if(this===w||e.target===r[t])return!0;return!1})},this.unbindEventWithSelectorOrCallback=function(r){var a=u.toElementsArray(this),i=r,e="function"==typeof r?function(e){for(var t=0;t<a.length;t++)if((this===w||e.target===a[t])&&e.callback===i)return!0;return!1}:function(e){for(var t=0;t<a.length;t++)if((this===w||e.target===a[t])&&e.selector===r)return!0;return!1};o.removeEvent(e)},this.unbindEventWithSelectorAndCallback=function(r,a){var i=u.toElementsArray(this);o.removeEvent(function(e){for(var t=0;t<i.length;t++)if((this===w||e.target===i[t])&&e.selector===r&&e.callback===a)return!0;return!1})},this},i=new function(){var s={fireOnAttributesModification:!1,onceOnly:!1,existing:!1};function n(e,t,r){return!(!u.matchesSelector(e,t.selector)||(e._id===w&&(e._id=a++),-1!=t.firedElems.indexOf(e._id)))&&(t.firedElems.push(e._id),!0)}var c=(i=new t(function(e){var t={attributes:!1,childList:!0,subtree:!0};return e.fireOnAttributesModification&&(t.attributes=!0),t},function(e,i){e.forEach(function(e){var t=e.addedNodes,r=e.target,a=[];null!==t&&0<t.length?u.checkChildNodesRecursively(t,i,n,a):"attributes"===e.type&&n(r,i)&&a.push({callback:i.callback,elem:r}),u.callCallbacks(a,i)})})).bindEvent;return i.bindEvent=function(e,t,r){t=void 0===r?(r=t,s):u.mergeArrays(s,t);var a=u.toElementsArray(this);if(t.existing){for(var i=[],n=0;n<a.length;n++)for(var o=a[n].querySelectorAll(e),l=0;l<o.length;l++)i.push({callback:r,elem:o[l]});if(t.onceOnly&&i.length)return r.call(i[0].elem,i[0].elem);setTimeout(u.callCallbacks,1,i)}c.call(this,e,t,r)},i},o=new function(){var a={};function i(e,t){return u.matchesSelector(e,t.selector)}var n=(o=new t(function(){return{childList:!0,subtree:!0}},function(e,r){e.forEach(function(e){var t=e.removedNodes,e=[];null!==t&&0<t.length&&u.checkChildNodesRecursively(t,r,i,e),u.callCallbacks(e,r)})})).bindEvent;return o.bindEvent=function(e,t,r){t=void 0===r?(r=t,a):u.mergeArrays(a,t),n.call(this,e,t,r)},o};d(HTMLElement.prototype),d(NodeList.prototype),d(HTMLCollection.prototype),d(HTMLDocument.prototype),d(Window.prototype);var n={};return s(i,n,"unbindAllArrive"),s(o,n,"unbindAllLeave"),n}function l(){this._eventsBucket=[],this._beforeAdding=null,this._beforeRemoving=null}function s(e,t,r){u.addMethod(t,r,e.unbindEvent),u.addMethod(t,r,e.unbindEventWithSelectorOrCallback),u.addMethod(t,r,e.unbindEventWithSelectorAndCallback)}function d(e){e.arrive=i.bindEvent,s(i,e,"unbindArrive"),e.leave=o.bindEvent,s(o,e,"unbindLeave")}}(window,void 0),ewww_webp_supported=!1;function check_webp_feature(e,t){var r;ewww_webp_supported?t(ewww_webp_supported):((r=new Image).onload=function(){ewww_webp_supported=0<r.width&&0<r.height,t(ewww_webp_supported)},r.onerror=function(){t(!1)},r.src="data:image/webp;base64,"+{alpha:"UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA==",animation:"UklGRlIAAABXRUJQVlA4WAoAAAASAAAAAAAAAAAAQU5JTQYAAAD/////AABBTk1GJgAAAAAAAAAAAAAAAAAAAGQAAABWUDhMDQAAAC8AAAAQBxAREYiI/gcA"}[e])}function ewwwLoadImages(e){if(e){for(var t=document.querySelectorAll(".batch-image img, .image-wrapper a, .ngg-pro-masonry-item a, .ngg-galleria-offscreen-seo-wrapper a"),r=0,a=t.length;r<a;r++)ewwwAttr(t[r],"data-src",t[r].getAttribute("data-webp")),ewwwAttr(t[r],"data-thumbnail",t[r].getAttribute("data-webp-thumbnail"));for(var i=document.querySelectorAll("div.woocommerce-product-gallery__image"),r=0,a=i.length;r<a;r++)ewwwAttr(i[r],"data-thumb",i[r].getAttribute("data-webp-thumb"))}for(var n=document.querySelectorAll("video"),r=0,a=n.length;r<a;r++)ewwwAttr(n[r],"poster",e?n[r].getAttribute("data-poster-webp"):n[r].getAttribute("data-poster-image"));for(var o,l=document.querySelectorAll("img.ewww_webp_lazy_load"),r=0,a=l.length;r<a;r++)e&&(ewwwAttr(l[r],"data-lazy-srcset",l[r].getAttribute("data-lazy-srcset-webp")),ewwwAttr(l[r],"data-srcset",l[r].getAttribute("data-srcset-webp")),ewwwAttr(l[r],"data-lazy-src",l[r].getAttribute("data-lazy-src-webp")),ewwwAttr(l[r],"data-src",l[r].getAttribute("data-src-webp")),ewwwAttr(l[r],"data-orig-file",l[r].getAttribute("data-webp-orig-file")),ewwwAttr(l[r],"data-medium-file",l[r].getAttribute("data-webp-medium-file")),ewwwAttr(l[r],"data-large-file",l[r].getAttribute("data-webp-large-file")),null!=(o=l[r].getAttribute("srcset"))&&!1!==o&&o.includes("R0lGOD")&&ewwwAttr(l[r],"src",l[r].getAttribute("data-lazy-src-webp"))),l[r].className=l[r].className.replace(/\bewww_webp_lazy_load\b/,"");for(var s=document.querySelectorAll(".ewww_webp"),r=0,a=s.length;r<a;r++)e?(ewwwAttr(s[r],"srcset",s[r].getAttribute("data-srcset-webp")),ewwwAttr(s[r],"src",s[r].getAttribute("data-src-webp")),ewwwAttr(s[r],"data-orig-file",s[r].getAttribute("data-webp-orig-file")),ewwwAttr(s[r],"data-medium-file",s[r].getAttribute("data-webp-medium-file")),ewwwAttr(s[r],"data-large-file",s[r].getAttribute("data-webp-large-file")),ewwwAttr(s[r],"data-large_image",s[r].getAttribute("data-webp-large_image")),ewwwAttr(s[r],"data-src",s[r].getAttribute("data-webp-src"))):(ewwwAttr(s[r],"srcset",s[r].getAttribute("data-srcset-img")),ewwwAttr(s[r],"src",s[r].getAttribute("data-src-img"))),s[r].className=s[r].className.replace(/\bewww_webp\b/,"ewww_webp_loaded");window.jQuery&&jQuery.fn.isotope&&jQuery.fn.imagesLoaded&&(jQuery(".fusion-posts-container-infinite").imagesLoaded(function(){jQuery(".fusion-posts-container-infinite").hasClass("isotope")&&jQuery(".fusion-posts-container-infinite").isotope()}),jQuery(".fusion-portfolio:not(.fusion-recent-works) .fusion-portfolio-wrapper").imagesLoaded(function(){jQuery(".fusion-portfolio:not(.fusion-recent-works) .fusion-portfolio-wrapper").isotope()}))}function ewwwWebPInit(e){ewwwLoadImages(e),ewwwNggLoadGalleries(e),document.arrive(".ewww_webp",function(){ewwwLoadImages(e)}),document.arrive(".ewww_webp_lazy_load",function(){ewwwLoadImages(e)}),document.arrive("videos",function(){ewwwLoadImages(e)}),"loading"==document.readyState?document.addEventListener("DOMContentLoaded",ewwwJSONParserInit):("undefined"!=typeof galleries&&ewwwNggParseGalleries(e),ewwwWooParseVariations(e))}function ewwwAttr(e,t,r){null!=r&&!1!==r&&e.setAttribute(t,r)}function ewwwJSONParserInit(){"undefined"!=typeof galleries&&check_webp_feature("alpha",ewwwNggParseGalleries),check_webp_feature("alpha",ewwwWooParseVariations)}function ewwwWooParseVariations(e){if(e)for(var t=document.querySelectorAll("form.variations_form"),r=0,a=t.length;r<a;r++){var i=t[r].getAttribute("data-product_variations"),n=!1;try{for(var o in i=JSON.parse(i))void 0!==i[o]&&void 0!==i[o].image&&(void 0!==i[o].image.src_webp&&(i[o].image.src=i[o].image.src_webp,n=!0),void 0!==i[o].image.srcset_webp&&(i[o].image.srcset=i[o].image.srcset_webp,n=!0),void 0!==i[o].image.full_src_webp&&(i[o].image.full_src=i[o].image.full_src_webp,n=!0),void 0!==i[o].image.gallery_thumbnail_src_webp&&(i[o].image.gallery_thumbnail_src=i[o].image.gallery_thumbnail_src_webp,n=!0),void 0!==i[o].image.thumb_src_webp&&(i[o].image.thumb_src=i[o].image.thumb_src_webp,n=!0));n&&ewwwAttr(t[r],"data-product_variations",JSON.stringify(i))}catch(e){}}}function ewwwNggParseGalleries(e){if(e)for(var t in galleries){var r=galleries[t];galleries[t].images_list=ewwwNggParseImageList(r.images_list)}}function ewwwNggLoadGalleries(e){e&&document.addEventListener("ngg.galleria.themeadded",function(e,t){window.ngg_galleria._create_backup=window.ngg_galleria.create,window.ngg_galleria.create=function(e,t){var r=$(e).data("id");return galleries["gallery_"+r].images_list=ewwwNggParseImageList(galleries["gallery_"+r].images_list),window.ngg_galleria._create_backup(e,t)}})}function ewwwNggParseImageList(e){for(var t in e){var r=e[t];if(void 0!==r["image-webp"]&&(e[t].image=r["image-webp"],delete e[t]["image-webp"]),void 0!==r["thumb-webp"]&&(e[t].thumb=r["thumb-webp"],delete e[t]["thumb-webp"]),void 0!==r.full_image_webp&&(e[t].full_image=r.full_image_webp,delete e[t].full_image_webp),void 0!==r.srcsets)for(var a in r.srcsets)nggSrcset=r.srcsets[a],void 0!==r.srcsets[a+"-webp"]&&(e[t].srcsets[a]=r.srcsets[a+"-webp"],delete e[t].srcsets[a+"-webp"]);if(void 0!==r.full_srcsets)for(var i in r.full_srcsets)nggFSrcset=r.full_srcsets[i],void 0!==r.full_srcsets[i+"-webp"]&&(e[t].full_srcsets[i]=r.full_srcsets[i+"-webp"],delete e[t].full_srcsets[i+"-webp"])}return e}check_webp_feature("alpha",ewwwWebPInit);
window._nslDOMReady = (function () {
const executedCallbacks = new Set();
return function (callback) {
/**
* Third parties might dispatch DOMContentLoaded events, so we need to ensure that we only run our callback once!
*/
if (executedCallbacks.has(callback)) return;
const wrappedCallback = function () {
if (executedCallbacks.has(callback)) return;
executedCallbacks.add(callback);
callback();
};
if (document.readyState === "complete" || document.readyState === "interactive") {
wrappedCallback();
} else {
document.addEventListener("DOMContentLoaded", wrappedCallback);
}
};
})();
var wc_single_product_params = {"i18n_required_rating_text":"Please select a rating","i18n_rating_options":["1 of 5 stars","2 of 5 stars","3 of 5 stars","4 of 5 stars","5 of 5 stars"],"i18n_product_gallery_trigger_text":"View full-screen image gallery","review_rating_required":"yes","flexslider":{"rtl":false,"animation":"slide","smoothHeight":true,"directionNav":false,"controlNav":false,"slideshow":false,"animationSpeed":500,"animationLoop":false,"allowOneSlide":false},"zoom_enabled":"","zoom_options":[],"photoswipe_enabled":"1","photoswipe_options":{"shareEl":false,"closeOnScroll":false,"history":false,"hideAnimationDuration":0,"showAnimationDuration":0},"flexslider_enabled":"1"};
//# sourceURL=wc-single-product-js-extra
fbq('init', '1153287051360427', {}, {
"agent": "woocommerce_6-10.6.0-3.5.18"
});
document.addEventListener( 'DOMContentLoaded', function() {
// Insert placeholder for events injected when a product is added to the cart through AJAX.
document.body.insertAdjacentHTML( 'beforeend', '<div class=\"wc-facebook-pixel-event-placeholder\"></div>' );
}, false );
ESP32-based WEMOS Lolin32 Lite ESP32 MicroPython compatible WiFi enabled Development Board. All you need to program it is a USB or serial (RX/TX) connection to the host (computer) and a terminal program. Programming is a lot simpler than Arduino (based on C) and can be done without the need for a special development environment (like Arduino IDE or AVR Studio).
Specifications:
Power Supply: 2.2V to 3.6V
Logic Level: 3.3V
Processors:
- Xtensa 32-bit LX6 core, operating at 160 or 240 MHz and performing at up to 600 DMIPS
- Ultra-low power (ULP) co-processor
Memory:
- 520kB SRAM
- 4MB Flash
Wireless connectivity:
- WiFi: 802.11 b/g/n
- Bluetooth: v4.2 BR/EDR and BLE Peripheral interfaces*:
- 12-bit SAR ADC up to 18 channels
- 2 8-bit DACs
- 10 touch sensors (capacitive sensing GPIOs)
- Temperature sensor
- 4 SPI
- 2 IS interfaces
- 2 IC interfaces
- 3 UART
- SD/SDIO/CE-ATA/MMC/eMMC host controller
- SDIO/SPI slave controller
- Ethernet MAC interface with dedicated DMA and IEEE 1588 Precision Time Protocol support
- CAN bus 2.0
- Infrared remote controller (TX/RX, up to 8 channels)
- Motor PWM
- LED PWM (up to 16 channels)
- Hall effect sensor
- Ultra-low power analog pre-amplifier
Security:
- IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WAPI
- Secure boot
- Flash encryption
- 1024-bit OTP, up to 768-bit for customers
- Cryptographic hardware acceleration: AES, SHA-2, RSA, elliptic curve cryptography (ECC), random number generator (RNG)
Power management:
- Internal low-dropout regulator
- Individual power domain for RTC
- 5uA deep sleep current
- Wake up from GPIO interrupt, timer, ADC measurements, capacitive touch sensor interrupt
* - not all of the interface pins of the ESP32 MicroPython module are accessible through the development board
* - this is a 3.3V device, make sure you use level shifter to connect I/O ports to higher logic level like 5V
1 review for LOLIN32 Lite ESP32 MicroPython, Battery Charger
Rated 5 out of 5
James B –
This is a good ESP32 dev board that adds the ability to charge a LiPo battery as well as run off the battery; makes a great built-in UPS system for field-mounted sensors.
Only logged in customers who have purchased this product may leave a review.
1.77-inch TFT LCD module with 128×160 resolution, ST7735S controller, SPI interface, and 3.3V operation—ideal for compact embedded displays.
Shopping Cart
Never Miss The Deals.
If you already receive our newsletter, please just close this popup. We try not to show it again.
Scroll to Top
document.addEventListener('DOMContentLoaded', function() {
setTimeout(function() {
let shipOption = document.querySelector('.wc-block-checkout__shipping-method-option:not(.wc-block-checkout__shipping-method-option--selected)');
let pickupOption = document.querySelector('.wc-block-checkout__shipping-method-option--selected');
if (shipOption && pickupOption) {
pickupOption.classList.remove('wc-block-checkout__shipping-method-option--selected');
shipOption.classList.add('wc-block-checkout__shipping-method-option--selected');
// Simulate click to trigger WooCommerce's logic
shipOption.click();
}
}, 500); // Delay ensures WooCommerce has rendered the elements
});
jQuery(document).ready(function($) {
setTimeout(function() {
var checkbox = $('.wc-block-components-checkbox__input'); // Target the checkbox
if (checkbox.length && !checkbox.prop('checked')) {
checkbox.prop('checked', true).trigger('change'); // Check the box and trigger change event
}
}, 500); // Delay to ensure WooCommerce blocks are loaded
});
(function() {
// Global page view and session tracking for UAEL Modal Popup feature
try {
// Session tracking: increment if this is a new session
// Check if any popup on this page uses current page tracking
var hasCurrentPageTracking = false;
var currentPagePopups = [];
// Check all modal popups on this page for current page tracking
if (typeof jQuery !== 'undefined') {
jQuery('.uael-modal-parent-wrapper').each(function() {
var scope = jQuery(this).data('page-views-scope');
var enabled = jQuery(this).data('page-views-enabled');
var popupId = jQuery(this).attr('id').replace('-overlay', '');
if (enabled === 'yes' && scope === 'current') {
hasCurrentPageTracking = true;
currentPagePopups.push(popupId);
}
});
}
// Global tracking: ALWAYS increment if ANY popup on the site uses global tracking
// Current page tracking: increment per-page counters
if (hasCurrentPageTracking && currentPagePopups.length > 0) {
var currentUrl = window.location.href;
var urlKey = 'uael_page_views_' + btoa(currentUrl).replace(/[^a-zA-Z0-9]/g, '').substring(0, 50);
var currentPageViews = parseInt(localStorage.getItem(urlKey) || '0');
currentPageViews++;
localStorage.setItem(urlKey, currentPageViews.toString());
// Store URL mapping for each popup
for (var i = 0; i < currentPagePopups.length; i++) {
var popupUrlKey = 'uael_popup_' + currentPagePopups[i] + '_url_key';
localStorage.setItem(popupUrlKey, urlKey);
}
}
} catch (e) {
// Silently fail if localStorage is not available
}
})();
window.storeagentChat = {
nonce: "d59679fbb9",
pageContext: {
title: "LOLIN32 Lite ESP32 MicroPython, Battery Charger",
type: "product"
},
feedbackTexts: {
promptText: "Would you mind rating your experience with me?",
skipButtonText: "Skip"
}
};
var astra = {"break_point":"921","isRtl":"","is_scroll_to_id":"","is_scroll_to_top":"1","is_header_footer_builder_active":"1","responsive_cart_click":"flyout","is_dark_palette":"","edit_post_url":"https://www.universal-solder.ca/wp-admin/post.php?post={{id}}&action=edit","ajax_url":"https://www.universal-solder.ca/wp-admin/admin-ajax.php","shop_infinite_count":"2","shop_infinite_total":"0","shop_total_products":"1","shop_pagination":"number","shop_infinite_scroll_event":"click","shop_no_more_post_message":"No more products to show.","shop_result_count_format":"Showing 1\u2013{count} of {total} results","checkout_prev_text":"Back to my details","checkout_next_text":"Proceed to payment","show_comments":"Show Comments","shop_quick_view_enable":"on-image","shop_quick_view_stick_cart":"","shop_quick_view_auto_height":"1","woo_cart_empty_featured_product":"","single_product_qty_ajax_nonce":"6ba7b19c8e","single_product_ajax_add_to_cart":"1","is_cart":"","is_single_product":"1","view_cart":"View cart","cart_url":"https://www.universal-solder.ca/cart/","checkout_url":"https://www.universal-solder.ca/checkout/","add_to_cart_options_single":"rt_add_to_cart","is_astra_pro":"1","shopRevealEffectEnable":""};
//# sourceURL=astra-theme-js-js-extra
var PayPalCommerceGateway = {"url":"https://www.paypal.com/sdk/js?client-id=BAAVwOOBwAshKbZYngRagbITamdh5azmNPzdkCKAO002JWyKNFlmpK4QYkiyKOoW1RR0ibwp-EwtFzjBPY¤cy=CAD&integration-date=2026-03-04&components=buttons,funding-eligibility,messages&vault=true&commit=false&intent=capture&debug=1&disable-funding=card&enable-funding=venmo,paylater","url_params":{"client-id":"BAAVwOOBwAshKbZYngRagbITamdh5azmNPzdkCKAO002JWyKNFlmpK4QYkiyKOoW1RR0ibwp-EwtFzjBPY","currency":"CAD","integration-date":"2026-03-04","components":"buttons,funding-eligibility,messages","vault":"true","commit":"false","intent":"capture","debug":true,"disable-funding":"bancontact,blik,eps,ideal,mybank,p24,trustly,multibanco,card","enable-funding":"venmo,paylater"},"script_attributes":{"data-partner-attribution-id":"Woo_PPCP","data-page-type":"product-details"},"client_id":"BAAVwOOBwAshKbZYngRagbITamdh5azmNPzdkCKAO002JWyKNFlmpK4QYkiyKOoW1RR0ibwp-EwtFzjBPY","currency":"CAD","data_client_id":{"set_attribute":true,"endpoint":"/?wc-ajax=ppc-data-client-id","nonce":"163b1e55c8","user":0,"has_subscriptions":false,"paypal_subscriptions_enabled":false},"redirect":"https://www.universal-solder.ca/checkout/","context":"product","ajax":{"simulate_cart":{"endpoint":"/?wc-ajax=ppc-simulate-cart","nonce":"90d82671e6"},"change_cart":{"endpoint":"/?wc-ajax=ppc-change-cart","nonce":"2dcd0f24c0"},"create_order":{"endpoint":"/?wc-ajax=ppc-create-order","nonce":"bbe66991c4"},"approve_order":{"endpoint":"/?wc-ajax=ppc-approve-order","nonce":"c6b8679f11"},"get_order":{"endpoint":"/?wc-ajax=ppc-get-order","nonce":"31134039ed"},"approve_subscription":{"endpoint":"/?wc-ajax=ppc-approve-subscription","nonce":"17de6ecfe3"},"vault_paypal":{"endpoint":"/?wc-ajax=ppc-vault-paypal","nonce":"9433b06f33"},"save_checkout_form":{"endpoint":"/?wc-ajax=ppc-save-checkout-form","nonce":"f6dc2cfab0"},"validate_checkout":{"endpoint":"/?wc-ajax=ppc-validate-checkout","nonce":"4736c49508"},"cart_script_params":{"endpoint":"/?wc-ajax=ppc-cart-script-params"},"create_setup_token":{"endpoint":"/?wc-ajax=ppc-create-setup-token","nonce":"5fa7d50bb0"},"create_payment_token":{"endpoint":"/?wc-ajax=ppc-create-payment-token","nonce":"ab26f52a2b"},"create_payment_token_for_guest":{"endpoint":"/?wc-ajax=ppc-update-customer-id","nonce":"74a9e577dc"},"update_shipping":{"endpoint":"/?wc-ajax=ppc-update-shipping","nonce":"302d5f31b2"},"update_customer_shipping":{"shipping_options":{"endpoint":"https://www.universal-solder.ca/wp-json/wc/store/v1/cart/select-shipping-rate"},"shipping_address":{"cart_endpoint":"https://www.universal-solder.ca/wp-json/wc/store/v1/cart/","update_customer_endpoint":"https://www.universal-solder.ca/wp-json/wc/store/v1/cart/update-customer"},"wp_rest_nonce":"3c08b80f5a","update_shipping_method":"/?wc-ajax=update_shipping_method"}},"cart_contains_subscription":"","subscription_plan_id":"","vault_v3_enabled":"1","variable_paypal_subscription_variations":[],"variable_paypal_subscription_variation_from_cart":"","subscription_product_allowed":"","locations_with_subscription_product":{"product":false,"payorder":false,"cart":false},"enforce_vault":"","can_save_vault_token":"1","is_free_trial_cart":"","bn_codes":{"checkout":"Woo_PPCP","cart":"Woo_PPCP","mini-cart":"Woo_PPCP","product":"Woo_PPCP"},"payer":null,"button":{"wrapper":"#ppc-button-ppcp-gateway","is_disabled":false,"mini_cart_wrapper":"#ppc-button-minicart","is_mini_cart_disabled":false,"cancel_wrapper":"#ppcp-cancel","mini_cart_style":{"layout":"vertical","color":"gold","shape":"rect","label":"pay","tagline":false,"height":35},"style":{"layout":"vertical","color":"gold","shape":"rect","label":"pay","tagline":false}},"separate_buttons":{"card":{"id":"ppcp-card-button-gateway","wrapper":"#ppc-button-ppcp-card-button-gateway","style":{"shape":"rect","color":"black","layout":"horizontal"}}},"hosted_fields":{"wrapper":"#ppcp-hosted-fields","labels":{"credit_card_number":"","cvv":"","mm_yy":"MM/YY","fields_empty":"Card payment details are missing. Please fill in all required fields.","fields_not_valid":"Unfortunately, your credit card details are not valid.","card_not_supported":"Unfortunately, we do not support your credit card.","cardholder_name_required":"Cardholder's first and last name are required, please fill the checkout form required fields."},"valid_cards":["mastercard","visa","amex","jcb","american-express","master-card"],"contingency":"NO_3D_SECURE"},"messages":{"wrapper":".ppcp-messages","is_hidden":false,"block":{"enabled":false},"amount":10.06,"placement":"product","style":{"layout":"text","logo":{"type":"inline","position":"left"},"text":{"color":"black","size":"12"},"color":"blue","ratio":"1x1"}},"labels":{"error":{"generic":"Something went wrong. Please try again or choose another payment source.","required":{"generic":"Required form fields are not filled.","field":"%s is a required field.","elements":{"terms":"Please read and accept the terms and conditions to proceed with your order."}}},"billing_field":"Billing %s","shipping_field":"Shipping %s"},"simulate_cart":{"enabled":true,"throttling":5000},"order_id":"0","order_key":"","single_product_buttons_enabled":"1","mini_cart_buttons_enabled":"","basic_checkout_validation_enabled":"","early_checkout_validation_enabled":"1","funding_sources_without_redirect":["paypal","paylater","venmo","card"],"user":{"is_logged":false,"has_wc_card_payment_tokens":false},"should_handle_shipping_in_paypal":"","server_side_shipping_callback":{"enabled":true},"appswitch":{"enabled":true},"needShipping":"","vaultingEnabled":"1","productType":"simple","manualRenewalEnabled":"","final_review_enabled":"1"};
//# sourceURL=ppcp-smart-button-js-extra
var woosb_vars = {"wc_price_decimals":"2","wc_price_format":"%1$s%2$s","wc_price_thousand_separator":",","wc_price_decimal_separator":".","wc_currency_symbol":"C$","price_decimals":"2","price_format":"%1$s%2$s","price_thousand_separator":",","price_decimal_separator":".","currency_symbol":"C$","trim_zeros":"","round_price":"1","recalc_price":"","change_image":"no","bundled_price":"no","bundled_price_from":"regular_price","change_price":"no","price_selector":".summary \u003E .price","saved_text":"(saved [d])","price_text":"Bundle price:","selected_text":"Selected:","alert_selection":"Please select a purchasable variation for [name] before adding this bundle to the cart.","alert_unpurchasable":"Product [name] is unpurchasable. Please remove it before adding the bundle to the cart.","alert_empty":"Please choose at least one product before adding this bundle to the cart.","alert_min":"Please choose at least a total quantity of [min] products before adding this bundle to the cart.","alert_max":"Sorry, you can only choose at max a total quantity of [max] products before adding this bundle to the cart.","alert_total_min":"The total must meet the minimum amount of [min].","alert_total_max":"The total must meet the maximum amount of [max]."};
//# sourceURL=woosb-frontend-js-extra
var wc_stripe_express_checkout_params = {"ajax_url":"/?wc-ajax=%%endpoint%%","stripe":{"publishable_key":"pk_live_51AEsYaBTl86KSn0dsYsBLiLLHfIJsseIwYJcASWjNBykJtepfeJcb19VnL373p9cfdGx7YIemObwDNHcX2uSZyYF00Z2wUv5Oc","allow_prepaid_card":"yes","locale":"en","is_link_enabled":false,"is_express_checkout_enabled":true,"is_amazon_pay_enabled":false,"is_payment_request_enabled":true},"nonce":{"payment":"271114028a","shipping":"eee1185092","normalize_address":"ad2ecf96ec","get_cart_details":"86ccd9f8d3","update_shipping":"959c3edcc0","checkout":"8a924e376d","add_to_cart":"634dc6ea17","get_selected_product_data":"6869bca255","log_errors":"2780132b36","clear_cart":"83e28f7ffa","pay_for_order":"6735dcb826","wc_store_api":"3c08b80f5a","wc_store_api_express_checkout":"30cd60e8cd"},"i18n":{"no_prepaid_card":"Sorry, we're not accepting prepaid cards at this time.","unknown_shipping":"Unknown shipping option \"[option]\"."},"checkout":{"url":"https://www.universal-solder.ca/checkout/","currency_code":"cad","currency_decimals":2,"country_code":"CA","needs_shipping":"no","needs_payer_phone":true,"default_shipping_option":{"id":"pending","displayName":"Pending","amount":0}},"button":{"type":"default","theme":"dark","height":"48","radius":"4","locale":"en"},"is_pay_for_order":"","has_block":"","login_confirmation":"","is_product_page":"1","is_checkout_page":"","product":{"shippingOptions":[{"id":"pending","displayName":"Pending","amount":0}],"displayItems":[{"label":"LOLIN32 Lite ESP32 MicroPython, Battery Charger","amount":890},{"label":"Tax","amount":0,"pending":false},{"label":"Tax","amount":116,"pending":false},{"label":"Shipping","amount":0,"pending":true}],"total":{"label":" (via WooCommerce)","amount":1006,"pending":true},"requestShipping":true,"currency":"cad","country_code":"CA","validVariationSelected":true},"is_cart_page":"","taxes_based_on_billing":"","allowed_shipping_countries":["AU","AT","BE","BG","CA","CR","CZ","DK","FI","FR","DE","GR","GL","GG","HU","IS","IE","IT","LI","LT","LU","NL","NZ","NO","PT","PR","SK","ES","SE","CH","GB","US","UM"],"custom_checkout_fields":[],"has_free_trial":""};
//# sourceURL=wc_stripe_express_checkout-js-extra
var wc_address_i18n_params = {"locale":"{\"AT\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"AU\":{\"city\":[],\"postcode\":[],\"state\":[]},\"BE\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"BG\":{\"state\":{\"required\":false}},\"CA\":{\"postcode\":[],\"state\":[]},\"CH\":{\"postcode\":[],\"state\":{\"required\":false}},\"CR\":{\"state\":[]},\"CZ\":{\"state\":{\"required\":false,\"hidden\":true}},\"DE\":{\"postcode\":[],\"state\":{\"required\":false}},\"DK\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"FI\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"FR\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"GG\":{\"state\":{\"required\":false}},\"GR\":{\"state\":{\"required\":false}},\"HU\":{\"last_name\":[],\"first_name\":[],\"postcode\":[],\"city\":[],\"address_1\":[],\"address_2\":[],\"state\":{\"required\":false}},\"IE\":{\"postcode\":{\"required\":true},\"state\":[]},\"IS\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"IT\":{\"postcode\":[],\"state\":{\"required\":true}},\"NL\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"NZ\":{\"postcode\":[],\"state\":{\"required\":false}},\"NO\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"PR\":{\"city\":[],\"state\":{\"required\":false,\"hidden\":true}},\"PT\":{\"state\":{\"required\":false,\"hidden\":true}},\"SK\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"ES\":{\"postcode\":[],\"state\":[]},\"LI\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"LU\":{\"state\":{\"required\":false,\"hidden\":true}},\"SE\":{\"postcode\":[],\"state\":{\"required\":false,\"hidden\":true}},\"US\":{\"postcode\":[],\"state\":[]},\"GB\":{\"postcode\":[],\"state\":{\"required\":false}},\"default\":{\"first_name\":{\"required\":true,\"autocomplete\":\"given-name\"},\"last_name\":{\"required\":true,\"autocomplete\":\"family-name\"},\"company\":{\"autocomplete\":\"organization\",\"required\":false},\"country\":{\"type\":\"country\",\"required\":true,\"autocomplete\":\"country\"},\"address_1\":{\"required\":true,\"autocomplete\":\"address-line1\",\"description\":\"House number and street name\"},\"address_2\":{\"label_class\":[],\"autocomplete\":\"address-line2\",\"required\":false,\"description\":\"Apartment, unit, building, floor, etc.\"},\"city\":{\"required\":true,\"autocomplete\":\"address-level2\"},\"state\":{\"type\":\"state\",\"required\":true,\"validate\":[\"state\"],\"autocomplete\":\"address-level1\"},\"postcode\":{\"required\":true,\"validate\":[\"postcode\"],\"autocomplete\":\"postal-code\"}}}","locale_fields":"{\"address_1\":\"#billing_address_1_field, #shipping_address_1_field\",\"address_2\":\"#billing_address_2_field, #shipping_address_2_field\",\"state\":\"#billing_state_field, #shipping_state_field, #calc_shipping_state_field\",\"postcode\":\"#billing_postcode_field, #shipping_postcode_field, #calc_shipping_postcode_field\",\"city\":\"#billing_city_field, #shipping_city_field, #calc_shipping_city_field\"}","i18n_required_text":"required","i18n_optional_text":"optional"};
//# sourceURL=wc-address-i18n-js-extra
var wc_checkout_params = {"ajax_url":"/wp-admin/admin-ajax.php","wc_ajax_url":"/?wc-ajax=%%endpoint%%","update_order_review_nonce":"abc01ad4d6","apply_coupon_nonce":"57b8b7f874","remove_coupon_nonce":"ad2aca9b06","option_guest_checkout":"yes","checkout_url":"/?wc-ajax=checkout","is_checkout":"0","debug_mode":"1","i18n_checkout_error":"There was an error processing your order. Please check for any charges in your payment method and review your \u003Ca href=\"https://www.universal-solder.ca/my-account/orders/\"\u003Eorder history\u003C/a\u003E before placing the order again.","gateways_with_custom_place_order_button":[]};
//# sourceURL=wc-checkout-js-extra
var wc_stripe_upe_params = {"gatewayId":"stripe","title":"Credit / Debit Card","isUPEEnabled":"1","key":"pk_live_51AEsYaBTl86KSn0dsYsBLiLLHfIJsseIwYJcASWjNBykJtepfeJcb19VnL373p9cfdGx7YIemObwDNHcX2uSZyYF00Z2wUv5Oc","locale":"en","apiVersion":"2024-06-20","isLoggedIn":"","isSignupOnCheckoutAllowed":"1","isCheckout":"","return_url":"https://www.universal-solder.ca/checkout/order-received/?utm_nooverride=1","ajax_url":"/?wc-ajax=%%endpoint%%","wp_ajax_url":"https://www.universal-solder.ca/wp-admin/admin-ajax.php","theme_name":"astra","testMode":"","createPaymentIntentNonce":"1e797a295c","updatePaymentIntentNonce":"3b266207a8","createSetupIntentNonce":"5222c1f33f","createAndConfirmSetupIntentNonce":"07e97f6d1c","updateFailedOrderNonce":"ec4c3c30dc","createCheckoutSessionNonce":"d78980c476","paymentMethodsConfig":{"card":{"isReusable":true,"title":"Credit / Debit Card","description":"","testingInstructions":"\u003Cstrong\u003ETest mode:\u003C/strong\u003E use the test VISA card 4242424242424242 with any expiry date and CVC. Other payment methods may redirect to a Stripe test page to authorize payment. More test card numbers are listed \u003Ca href=\"https://docs.stripe.com/testing\" target=\"_blank\"\u003Ehere\u003C/a\u003E.","showSaveOption":true,"supportsDeferredIntent":true,"countries":[],"enabledPaymentMethods":["card"]}},"genericErrorMessage":"There was a problem processing the payment. Please check your email inbox and refresh the page to try again.","accountDescriptor":"","addPaymentReturnURL":"https://www.universal-solder.ca/my-account/payment-methods/","orderReceivedURL":"https://www.universal-solder.ca/checkout/order-received/","enabledBillingFields":["billing_email","billing_first_name","billing_last_name","billing_phone","billing_company","billing_country","billing_address_1","billing_address_2","billing_city","billing_state","billing_postcode"],"cartContainsSubscription":"","subscriptionRequiresManualRenewal":"","subscriptionManualRenewalEnabled":"","forceSavePaymentMethod":"","accountCountry":"CA","isExpressCheckoutEnabled":"1","isAmazonPayEnabled":"","isLinkEnabled":"","appearance":{"theme":"stripe"},"blocksAppearance":{"theme":"stripe"},"saveAppearanceNonce":"a56949d96f","isAmazonPayAvailable":"1","isOCEnabled":"","hasAffirmGatewayPlugin":"","hasKlarnaGatewayPlugin":"","cartTotal":"0","currency":"CAD","isPaymentNeeded":"","invalid_number":"The card number is not a valid credit card number.","invalid_expiry_month":"The card's expiration month is invalid.","invalid_expiry_year":"The card's expiration year is invalid.","invalid_cvc":"The card's security code is invalid.","incorrect_number":"The card number is incorrect.","incomplete_number":"The card number is incomplete.","incomplete_cvc":"The card's security code is incomplete.","incomplete_expiry":"The card's expiration date is incomplete.","expired_card":"The card has expired.","incorrect_cvc":"The card's security code is incorrect.","incorrect_zip":"The card's zip code failed validation.","postal_code_invalid":"Invalid zip code, please correct and try again","invalid_expiry_year_past":"The card's expiration year is in the past","card_declined":"The card was declined.","missing":"There is no card on a customer that is being charged.","processing_error":"An error occurred while processing the card.","invalid_sofort_country":"The billing country is not accepted by Sofort. Please try another country.","email_invalid":"Invalid email address, please correct and try again.","invalid_request_error":"Unable to process this payment, please try again or use alternative method.","amount_too_large":"The order total is too high for this payment method","amount_too_small":"The order total is too low for this payment method","country_code_invalid":"Invalid country code, please try again with a valid country code","tax_id_invalid":"Invalid Tax Id, please try again with a valid tax id","invalid_wallet_type":"Invalid wallet payment type, please try again or use an alternative method.","payment_intent_authentication_failure":"We are unable to authenticate your payment method. Please choose a different payment method and try again.","insufficient_funds":"Your card has insufficient funds."};
//# sourceURL=wc-stripe-upe-classic-js-extra
var wc_add_to_cart_variation_params = {"wc_ajax_url":"/?wc-ajax=%%endpoint%%","i18n_no_matching_variations_text":"Sorry, no products matched your selection. Please choose a different combination.","i18n_make_a_selection_text":"Please select some product options before adding this product to your cart.","i18n_unavailable_text":"Sorry, this product is unavailable. Please choose a different combination.","i18n_reset_alert_text":"Your selection has been reset. Please select some product options before adding this product to your cart."};
//# sourceURL=wc-add-to-cart-variation-js-extra
James B –
This is a good ESP32 dev board that adds the ability to charge a LiPo battery as well as run off the battery; makes a great built-in UPS system for field-mounted sensors.