truefree HD-100
Bluetooth 6.0, IP67 waterproofing, and 11mm drivers with spatial audio, plus a 10-minute fast charge for nearly 5 hours of playback, make these neckband earbuds a durable workout companion. Magnetic earbuds snap together for tangle-free carrying, and the Truefree app provides customizable EQ control for personalized sound. Best for budget-conscious runners and cyclists who need reliable 20-hour battery life and AI-enhanced call clarity during outdoor exercise.
Over deze Earbuds
.aplus-v2 .aplus-content-wrapper { position: relative; overflow: hidden; } .aplus-v2 .container-with-background-image { width: 100%; height: 100%; background-repeat: no-repeat; background-size: cover; } function logShoppableMetrics(moduleName, showsAddToCart) { if (window.ue && window.ue.count) { window.ue.count("aplus:shoppable:" + moduleName + ":addToCart", showsAddToCart ? 1 : 0); } } Product description .aplus-v2 .premium-aplus-module-13 .aplus-carousel-container { position: relative; } .aplus-v2 .premium-aplus-module-13 .aplus-carousel-element { position: relative; width: 100%; } .aplus-v2 .premium-aplus-module-13 .aplus-card-link-button { text-align: center; padding-top: 20px; } .aplus-v2 .premium-aplus-module-13 .aplus-text-background, .aplus-v2 .premium-aplus-module-13 .aplus-text-background h1, .aplus-v2 .premium-aplus-module-13 .aplus-text-background h5, .aplus-v2 .premium-aplus-module-13 .aplus-text-background ol, .aplus-v2 .premium-aplus-module-13 .aplus-text-background ul, .aplus-v2 .premium-aplus-module-13 .aplus-text-background ol .a-list-item, .aplus-v2 .premium-aplus-module-13 .aplus-text-background ul .a-list-item { color: #fff; } .aplus-v2 .premium-aplus-module-2 .premium-background-wrapper { position: relative; } .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper { position: absolute; width: 50%; height: 100%; top: 0; } .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right { left: 50%; } html[dir="rtl"] .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right { left: auto; right: 50%; } .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.secondary-color { color: #fff; } .aplus-v2 .premium-aplus-module-2 .premium-intro-background { padding: 20px; } .aplus-v2 .premium-aplus-module-2 .aplus-module-2-topic { padding-bottom: 10px; } .aplus-v2 .premium-aplus-module-2 .aplus-module-2-heading { padding-bottom: 20px; } .aplus-v2 .premium-aplus-module-2 .aplus-module-2-description { line-height: 1.5em; } .aplus-v2 .premium-aplus-module-2 .premium-intro-background.white-background { background: rgba(255,255,255,0.5); } .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background { background: rgba(0,0,0,0.5); } .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background, .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background h1, .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background h5, .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ol, .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ul, .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ol .a-list-item, .aplus-v2 .premium-aplus-module-2 .premium-intro-background.black-background ul .a-list-item { color: #fff; } .aplus-v2 .premium-aplus-module-2 .premium-intro-content-container { display: table; height: 100%; } .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.left .premium-intro-content-container { padding-left: 40px; } html[dir="rtl"] .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.left .premium-intro-content-container { padding-left: 0px; padding-right: 40px; } .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right .premium-intro-content-container { padding-right: 40px; } html[dir="rtl"] .aplus-v2 .premium-aplus-module-2 .premium-intro-wrapper.right .premium-intro-content-container { padding-right: 0px; padding-left: 40px; } .aplus-v2 .premium-aplus-module-2 .premium-intro-content-column { display: table-cell; vertical-align: middle; } /** * Premium modules global styles */ .aplus-v2.desktop { max-width: 1464px; min-width: 800px; margin-left: auto; margin-right: auto; word-wrap: break-word; overflow-wrap: break-word; word-break: break-word; } /* Undo this for tech-specs because it breaks table layout */ .aplus-v2.desktop .premium-aplus .aplus-tech-spec-table { word-break: initial; } .aplus-v2 .premium-aplus, .aplus-v2 .premium-aplus .aplus-h1, .aplus-v2 .premium-aplus .aplus-h2, .aplus-v2 .premium-aplus .aplus-p1, .aplus-v2 .premium-aplus .aplus-p2, .aplus-v2 .premium-aplus .aplus-p3, .aplus-v2 .premium-aplus .aplus-accent1, .aplus-v2 .premium-aplus .aplus-accent2 { font-family: Arial, sans-serif; } .aplus-v2 .premium-aplus, .aplus-v2 .premium-aplus .aplus-h1, .aplus-v2 .premium-aplus .aplus-h2, .aplus-v2 .premium-aplus .aplus-p1, .aplus-v2 .premium-aplus .aplus-p2, .aplus-v2 .premium-aplus .aplus-p3, .aplus-v2 .premium-aplus .aplus-accent1, .aplus-v2 .premium-aplus .aplus-accent2 { font-family: inherit; } /* type */ .aplus-v2 .premium-aplus .aplus-h1 { font-size: 32px; line-height: 1.2em; font-weight: 500; } .aplus-v2 .premium-aplus .aplus-h2 { font-size: 26px; line-height: 1.25em; font-weight: 500; } .aplus-v2 .premium-aplus .aplus-h3 { font-size: 18px; line-height: 1.25em; font-weight: 500; } .aplus-v2 .premium-aplus .aplus-p1 { font-size: 20px; line-height: 1.3em; font-weight: 300; } .aplus-v2 .premium-aplus .aplus-p2 { font-size: 16px; line-height: 1.4em; font-weight: 300; } .aplus-v2 .premium-aplus .aplus-p3 { font-size: 14px; line-height: 1.4em; font-weight: 300; } .aplus-v2 .premium-aplus .aplus-accent1 { font-size: 16px; line-height: 1.4em; font-weight: 600; } .aplus-v2 .premium-aplus .aplus-accent2 { font-size: 14px; line-height: 1.4em; font-weight: 600; } /* spacing */ .aplus-v2 .aplus-container-1 { padding: 40px; } .aplus-v2 .aplus-container-1-2 { padding: 40px 80px; } .aplus-v2 .aplus-container-2 { padding: 80px; } .aplus-v2 .aplus-container-3 { padding: 40px 0; } /* Display */ .aplus-v2 .premium-aplus .aplus-display-table { display: table; } .aplus-v2 .premium-aplus .aplus-display-table-cell { display: table-cell; } .aplus-v2 .premium-aplus .aplus-display-inline-block { display: inline-block; } /* Aplus display table with min-width 1000px and fill remaining space inside parent */ .aplus-v2.desktop .premium-aplus .aplus-display-table-width { min-width: 1000px; width: 100% } /** * Padding and margin for element should be 10, 20, 40, or 80 px. Considering mini 10, small 20, medium 40, large 80. */ /** * Premium-module 13: Carousel */ .aplus-v2 .premium-aplus-module-13 .aplus-card-description-wrapper { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } .aplus-v2 .premium-aplus-module-13 .aplus-card-description { display: table; width: 50%; height: 100%; color: #fff; } .aplus-v2 .premium-aplus-module-13 .aplus-card-table-cell { display: table-cell; vertical-align: middle; text-align: left; } html[dir="rtl"] .aplus-v2 .premium-aplus-module-13 .aplus-card-table-cell { text-align: right; } .aplus-v2 .premium-aplus-module-13 .aplus-text-background { background: rgba(0, 0, 0, 0.6); } .aplus-v2 .premium-aplus-module-13 .aplus-card-body { padding: 20px 40px 0 0; } html[dir="rtl"] .aplus-v2 .premium-aplus-module-13 .aplus-card-body { padding: 20px 0 0 40px; } .aplus-v2 .premium-aplus-module-13 .aplus-pagination-wrapper { position: absolute; top: 92%; width: 100%; } <img alt="Truefree HD-100" src="https://m.media-amazon.com/images/S/aplus-media-library-service-media/aeb98810-98ad-4a91-91d6-4b5d99048782.__CR0,0,1464,600_PT0_SX1464_V1___.jpg"/> <img alt="HD-100" src="https://m.media-amazon.com/images/S/aplus-media-library-service-media/f3b12e60-8a5d-4769-b3ef-438899cbe8ea.__CR0,0,1464,600_PT0_SX1464_V1___.jpg"/> Previous page Next page .aplus-mantle.aplus-module .aplus-pagination-dots { margin: 0; } .aplus-mantle.aplus-module .aplus-pagination-dot { display: inline-block; list-style: none; } .aplus-mantle.aplus-module .aplus-carousel-nav { text-align:center; } .aplus-mantle.aplus-module .carousel-slider-circle { display: inline-block; cursor: pointer; height: 15px; width: 15px; border: 1px solid #000; border-radius: 20px; background-color: #fff; margin-left: 5px; } .aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active { background-color: #DE7921; } .aplus-mantle.aplus-module .aplus-pagination-dot--display-none { display: none; } P.now("premium-aplus-13-carousel-2").execute("init-pagination-carousel", function(init) { if (init) { return; } P.register("premium-aplus-13-carousel-2", function() { return function() { P.when("A", "jQuery", "a-carousel-framework", "ready").execute("paginate-carousel", function (A, $, framework) { const ENTER_KEY_CODE = 13; const ESCAPE_KEY_CODE = 27; const LEFT_ARROW_KEY = 37; const RIGHT_ARROW_KEY = 39; const HOME_KEY = 36; const END_KEY = 35; var moduleId = "2"; var carouselName = "premium-aplus-13-carousel-2"; var paginationAction = "aplus-pagination-dot-action-" + moduleId + "-" + carouselName; var paginationGroup = "#aplus-pagination-group-" + moduleId + "-" + carouselName; /* If the carousel goes to a new page */ A.on("a:carousel:"+carouselName+":change:pageNumber", function (data) { A.$(paginationGroup+" .carousel-slider-circle").removeClass("aplus-carousel-active").attr('aria-selected', 'false').attr('tabindex', -1) .eq(data.newValue - 1).addClass("aplus-carousel-active").attr('aria-selected', 'true').attr('tabindex', 0); }); function syncPaginationDotsWithCarouselPages(numPages) { const parentElement = document.querySelector(paginationGroup); if (parentElement && parentElement.children) { const children = parentElement.children; for (let i = 0; i < children.length; i++) { if (i >= numPages) { // If number of dots > num of pages, we should hide other dots children[i].classList.add('aplus-pagination-dot--display-none'); } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) { // Reset display of dots if it was hidden before children[i].classList.remove('aplus-pagination-dot--display-none'); } } } } framework.onInit(carouselName, function (carousel) { try { var totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); /* Resize event handler to re-calculate the pagination dots count based on orientation */ window.addEventListener('resize', function() { carousel.resize(); totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); }); A.declarative(paginationAction, 'click keydown', function(event){ var isClick = event.type === 'click'; var isKeydown = event.type === 'keydown'; var isEnter = isKeydown && event.$event.keyCode === ENTER_KEY_CODE; var isEsc = isKeydown && event.$event.keyCode === ESCAPE_KEY_CODE; var isLeftArrow = isKeydown && event.$event.keyCode === LEFT_ARROW_KEY; var isRightArrow = isKeydown && event.$event.keyCode === RIGHT_ARROW_KEY; var isHome = isKeydown && event.$event.keyCode === HOME_KEY; var isEnd = isKeydown && event.$event.keyCode === END_KEY; if (isClick || isEnter) { var data = event.data; carousel.gotoPage(data.page); } else if (isEsc) { event.$target.blur(); } else if (isLeftArrow || isRightArrow || isHome || isEnd) { event.$event.preventDefault(); const dots = A.$(paginationGroup + " .carousel-slider-circle"); const currentIndex = dots.index(event.$target); let nextIndex; if (isLeftArrow) { nextIndex = currentIndex > 0 ? currentIndex - 1 : dots.length - 1; } else if (isRightArrow) { nextIndex = currentIndex < dots.length - 1 ? currentIndex + 1 : 0; } else if (isHome) { nextIndex = 0; } else if (isEnd) { nextIndex = dots.length - 1; } dots.eq(nextIndex).focus(); carousel.gotoPage(nextIndex + 1); } }); } catch (e) { P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources'); } }); }); } }); }); (function(f) {var _np=(window.P._namespace("PremiumAplusModule"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) { P.when("premium-aplus-13-carousel-2").execute('invoke-premium-13-carousel-desktop', function(init){init();}); })); Previous page Next page .aplus-mantle.aplus-module .aplus-pagination-dots { margin: 0; } .aplus-mantle.aplus-module .aplus-pagination-dot { display: inline-block; list-style: none; } .aplus-mantle.aplus-module .aplus-carousel-nav { text-align:center; } .aplus-mantle.aplus-module .carousel-slider-circle { display: inline-block; cursor: pointer; height: 15px; width: 15px; border: 1px solid #000; border-radius: 20px; background-color: #fff; margin-left: 5px; } .aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active { background-color: #DE7921; } .aplus-mantle.aplus-module .aplus-pagination-dot--display-none { display: none; } P.now("premium-aplus-13-carousel-3").execute("init-pagination-carousel", function(init) { if (init) { return; } P.register("premium-aplus-13-carousel-3", function() { return function() { P.when("A", "jQuery", "a-carousel-framework", "ready").execute("paginate-carousel", function (A, $, framework) { const ENTER_KEY_CODE = 13; const ESCAPE_KEY_CODE = 27; const LEFT_ARROW_KEY = 37; const RIGHT_ARROW_KEY = 39; const HOME_KEY = 36; const END_KEY = 35; var moduleId = "3"; var carouselName = "premium-aplus-13-carousel-3"; var paginationAction = "aplus-pagination-dot-action-" + moduleId + "-" + carouselName; var paginationGroup = "#aplus-pagination-group-" + moduleId + "-" + carouselName; /* If the carousel goes to a new page */ A.on("a:carousel:"+carouselName+":change:pageNumber", function (data) { A.$(paginationGroup+" .carousel-slider-circle").removeClass("aplus-carousel-active").attr('aria-selected', 'false').attr('tabindex', -1) .eq(data.newValue - 1).addClass("aplus-carousel-active").attr('aria-selected', 'true').attr('tabindex', 0); }); function syncPaginationDotsWithCarouselPages(numPages) { const parentElement = document.querySelector(paginationGroup); if (parentElement && parentElement.children) { const children = parentElement.children; for (let i = 0; i < children.length; i++) { if (i >= numPages) { // If number of dots > num of pages, we should hide other dots children[i].classList.add('aplus-pagination-dot--display-none'); } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) { // Reset display of dots if it was hidden before children[i].classList.remove('aplus-pagination-dot--display-none'); } } } } framework.onInit(carouselName, function (carousel) { try { var totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); /* Resize event handler to re-calculate the pagination dots count based on orientation */ window.addEventListener('resize', function() { carousel.resize(); totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); }); A.declarative(paginationAction, 'click keydown', function(event){ var isClick = event.type === 'click'; var isKeydown = event.type === 'keydown'; var isEnter = isKeydown && event.$event.keyCode === ENTER_KEY_CODE; var isEsc = isKeydown && event.$event.keyCode === ESCAPE_KEY_CODE; var isLeftArrow = isKeydown && event.$event.keyCode === LEFT_ARROW_KEY; var isRightArrow = isKeydown && event.$event.keyCode === RIGHT_ARROW_KEY; var isHome = isKeydown && event.$event.keyCode === HOME_KEY; var isEnd = isKeydown && event.$event.keyCode === END_KEY; if (isClick || isEnter) { var data = event.data; carousel.gotoPage(data.page); } else if (isEsc) { event.$target.blur(); } else if (isLeftArrow || isRightArrow || isHome || isEnd) { event.$event.preventDefault(); const dots = A.$(paginationGroup + " .carousel-slider-circle"); const currentIndex = dots.index(event.$target); let nextIndex; if (isLeftArrow) { nextIndex = currentIndex > 0 ? currentIndex - 1 : dots.length - 1; } else if (isRightArrow) { nextIndex = currentIndex < dots.length - 1 ? currentIndex + 1 : 0; } else if (isHome) { nextIndex = 0; } else if (isEnd) { nextIndex = dots.length - 1; } dots.eq(nextIndex).focus(); carousel.gotoPage(nextIndex + 1); } }); } catch (e) { P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources'); } }); }); } }); }); (function(f) {var _np=(window.P._namespace("PremiumAplusModule"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) { P.when("premium-aplus-13-carousel-3").execute('invoke-premium-13-carousel-desktop', function(init){init();}); })); Previous page Next page .aplus-mantle.aplus-module .aplus-pagination-dots { margin: 0; } .aplus-mantle.aplus-module .aplus-pagination-dot { display: inline-block; list-style: none; } .aplus-mantle.aplus-module .aplus-carousel-nav { text-align:center; } .aplus-mantle.aplus-module .carousel-slider-circle { display: inline-block; cursor: pointer; height: 15px; width: 15px; border: 1px solid #000; border-radius: 20px; background-color: #fff; margin-left: 5px; } .aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active { background-color: #DE7921; } .aplus-mantle.aplus-module .aplus-pagination-dot--display-none { display: none; } P.now("premium-aplus-13-carousel-4").execute("init-pagination-carousel", function(init) { if (init) { return; } P.register("premium-aplus-13-carousel-4", function() { return function() { P.when("A", "jQuery", "a-carousel-framework", "ready").execute("paginate-carousel", function (A, $, framework) { const ENTER_KEY_CODE = 13; const ESCAPE_KEY_CODE = 27; const LEFT_ARROW_KEY = 37; const RIGHT_ARROW_KEY = 39; const HOME_KEY = 36; const END_KEY = 35; var moduleId = "4"; var carouselName = "premium-aplus-13-carousel-4"; var paginationAction = "aplus-pagination-dot-action-" + moduleId + "-" + carouselName; var paginationGroup = "#aplus-pagination-group-" + moduleId + "-" + carouselName; /* If the carousel goes to a new page */ A.on("a:carousel:"+carouselName+":change:pageNumber", function (data) { A.$(paginationGroup+" .carousel-slider-circle").removeClass("aplus-carousel-active").attr('aria-selected', 'false').attr('tabindex', -1) .eq(data.newValue - 1).addClass("aplus-carousel-active").attr('aria-selected', 'true').attr('tabindex', 0); }); function syncPaginationDotsWithCarouselPages(numPages) { const parentElement = document.querySelector(paginationGroup); if (parentElement && parentElement.children) { const children = parentElement.children; for (let i = 0; i < children.length; i++) { if (i >= numPages) { // If number of dots > num of pages, we should hide other dots children[i].classList.add('aplus-pagination-dot--display-none'); } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) { // Reset display of dots if it was hidden before children[i].classList.remove('aplus-pagination-dot--display-none'); } } } } framework.onInit(carouselName, function (carousel) { try { var totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); /* Resize event handler to re-calculate the pagination dots count based on orientation */ window.addEventListener('resize', function() { carousel.resize(); totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); }); A.declarative(paginationAction, 'click keydown', function(event){ var isClick = event.type === 'click'; var isKeydown = event.type === 'keydown'; var isEnter = isKeydown && event.$event.keyCode === ENTER_KEY_CODE; var isEsc = isKeydown && event.$event.keyCode === ESCAPE_KEY_CODE; var isLeftArrow = isKeydown && event.$event.keyCode === LEFT_ARROW_KEY; var isRightArrow = isKeydown && event.$event.keyCode === RIGHT_ARROW_KEY; var isHome = isKeydown && event.$event.keyCode === HOME_KEY; var isEnd = isKeydown && event.$event.keyCode === END_KEY; if (isClick || isEnter) { var data = event.data; carousel.gotoPage(data.page); } else if (isEsc) { event.$target.blur(); } else if (isLeftArrow || isRightArrow || isHome || isEnd) { event.$event.preventDefault(); const dots = A.$(paginationGroup + " .carousel-slider-circle"); const currentIndex = dots.index(event.$target); let nextIndex; if (isLeftArrow) { nextIndex = currentIndex > 0 ? currentIndex - 1 : dots.length - 1; } else if (isRightArrow) { nextIndex = currentIndex < dots.length - 1 ? currentIndex + 1 : 0; } else if (isHome) { nextIndex = 0; } else if (isEnd) { nextIndex = dots.length - 1; } dots.eq(nextIndex).focus(); carousel.gotoPage(nextIndex + 1); } }); } catch (e) { P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources'); } }); }); } }); }); (function(f) {var _np=(window.P._namespace("PremiumAplusModule"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) { P.when("premium-aplus-13-carousel-4").execute('invoke-premium-13-carousel-desktop', function(init){init();}); })); Previous page Next page .aplus-mantle.aplus-module .aplus-pagination-dots { margin: 0; } .aplus-mantle.aplus-module .aplus-pagination-dot { display: inline-block; list-style: none; } .aplus-mantle.aplus-module .aplus-carousel-nav { text-align:center; } .aplus-mantle.aplus-module .carousel-slider-circle { display: inline-block; cursor: pointer; height: 15px; width: 15px; border: 1px solid #000; border-radius: 20px; background-color: #fff; margin-left: 5px; } .aplus-mantle.aplus-module .carousel-slider-circle.aplus-carousel-active { background-color: #DE7921; } .aplus-mantle.aplus-module .aplus-pagination-dot--display-none { display: none; } P.now("premium-aplus-13-carousel-5").execute("init-pagination-carousel", function(init) { if (init) { return; } P.register("premium-aplus-13-carousel-5", function() { return function() { P.when("A", "jQuery", "a-carousel-framework", "ready").execute("paginate-carousel", function (A, $, framework) { const ENTER_KEY_CODE = 13; const ESCAPE_KEY_CODE = 27; const LEFT_ARROW_KEY = 37; const RIGHT_ARROW_KEY = 39; const HOME_KEY = 36; const END_KEY = 35; var moduleId = "5"; var carouselName = "premium-aplus-13-carousel-5"; var paginationAction = "aplus-pagination-dot-action-" + moduleId + "-" + carouselName; var paginationGroup = "#aplus-pagination-group-" + moduleId + "-" + carouselName; /* If the carousel goes to a new page */ A.on("a:carousel:"+carouselName+":change:pageNumber", function (data) { A.$(paginationGroup+" .carousel-slider-circle").removeClass("aplus-carousel-active").attr('aria-selected', 'false').attr('tabindex', -1) .eq(data.newValue - 1).addClass("aplus-carousel-active").attr('aria-selected', 'true').attr('tabindex', 0); }); function syncPaginationDotsWithCarouselPages(numPages) { const parentElement = document.querySelector(paginationGroup); if (parentElement && parentElement.children) { const children = parentElement.children; for (let i = 0; i < children.length; i++) { if (i >= numPages) { // If number of dots > num of pages, we should hide other dots children[i].classList.add('aplus-pagination-dot--display-none'); } else if (children[i].classList.contains('aplus-pagination-dot--display-none')) { // Reset display of dots if it was hidden before children[i].classList.remove('aplus-pagination-dot--display-none'); } } } } framework.onInit(carouselName, function (carousel) { try { var totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); /* Resize event handler to re-calculate the pagination dots count based on orientation */ window.addEventListener('resize', function() { carousel.resize(); totalPages = carousel.getAttr('totalPages'); syncPaginationDotsWithCarouselPages(totalPages); }); A.declarative(paginationAction, 'click keydown', function(event){ var isClick = event.type === 'click'; var isKeydown = event.type === 'keydown'; var isEnter = isKeydown && event.$event.keyCode === ENTER_KEY_CODE; var isEsc = isKeydown && event.$event.keyCode === ESCAPE_KEY_CODE; var isLeftArrow = isKeydown && event.$event.keyCode === LEFT_ARROW_KEY; var isRightArrow = isKeydown && event.$event.keyCode === RIGHT_ARROW_KEY; var isHome = isKeydown && event.$event.keyCode === HOME_KEY; var isEnd = isKeydown && event.$event.keyCode === END_KEY; if (isClick || isEnter) { var data = event.data; carousel.gotoPage(data.page); } else if (isEsc) { event.$target.blur(); } else if (isLeftArrow || isRightArrow || isHome || isEnd) { event.$event.preventDefault(); const dots = A.$(paginationGroup + " .carousel-slider-circle"); const currentIndex = dots.index(event.$target); let nextIndex; if (isLeftArrow) { nextIndex = currentIndex > 0 ? currentIndex - 1 : dots.length - 1; } else if (isRightArrow) { nextIndex = currentIndex < dots.length - 1 ? currentIndex + 1 : 0; } else if (isHome) { nextIndex = 0; } else if (isEnd) { nextIndex = dots.length - 1; } dots.eq(nextIndex).focus(); carousel.gotoPage(nextIndex + 1); } }); } catch (e) { P.log('Failed to init ' + carouselName + '. Error: ' + e.message, 'FATAL', 'AplusModuleResources'); } }); }); } }); }); (function(f) {var _np=(window.P._namespace("PremiumAplusModule"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) { P.when("premium-aplus-13-carousel-5").execute('invoke-premium-13-carousel-desktop', function(init){init();}); })); <img alt="Truefree HD-100" src="https://m.media-amazon.com/images/S/aplus-media-library-service-media/fcdb7896-f302-469d-9c7b-006f9049b0c3.__CR0,0,1464,600_PT0_SX1464_V1___.jpg"/>
- [Engineered for Sports] - Designed for active lifestyles, the HD-100 wireless neckband earbuds stay secure and comfortable during running, HIIT, cycling, and high-movement workouts. The lightweight design reduces fatigue, while the IP67 rating protects against sweat, rain, and dust for long-lasting performance indoors and outdoors.
- [Immersive Spatial Audio with Dynamic EQ] - Powered by 11mm dual-magnetic drivers, these Bluetooth earphones deliver powerful, balanced sound with crisp highs, rich vocals, and deep bass. 360° spatial audio enhances immersion, while the Truefree App’s dynamic EQ restores high-frequency details for a more natural and surround-sound experience.
- [20 Hours Playtime & Fast Charge] - Enjoy up to 20 hours of listening time on a single charge. The HD-100 wireless sports earphones are perfect for workouts, commutes, outdoor adventures, and daily use. Recharge quickly via USB-C. A quick 10-minute USB-C fast charge gives nearly 5 hours of playback, keeping you powered through multiple sessions with minimal downtime.
- [AI-Enhanced Calls & Bluetooth 6.0] - Adopting a high-sensitivity microphone and an AI noise-cancellation algorithm, the HD-100 captures your voice clearly, ensuring uninterrupted calls even in noisy environments. The latest Bluetooth 6.0 technology provides a stable, low-latency connection for smooth streaming and reliable communication.
- [Multipoint Connection & App Controls] - Dual-device connection allows you to connect to two devices simultaneously and switch seamlessly between your phone, laptop, or tablet. Use the Truefree App to personalize EQ, adjust sound presets, and fine-tune your audio settings to match your preferences.
- [Customized Fit for All-Day Comfort] - Built-in magnets keep the earbuds together for easy carrying. Multiple soft silicone ear tips and fins ensure a personalized, comfortable fit for long listening sessions. The in-line button controls let you manage music, volume, and calls effortlessly.
The 30-Second Version
The Truefree HD-100 is a surprisingly loaded neckband with best-in-class build, strong battery, and BT 6.0 connectivity, but comfort holds it back. At $36, it's a no-brainer for gym rats who need a beater pair. Anyone looking for all-day musical bliss should skip it.
Overview
If you're still rocking a neckband in 2025, the Truefree HD-100 makes a strong case with some surprisingly modern tricks. It's got Bluetooth 6.0, spatial audio, and an IP67 rating that means you can rinse off after a muddy trail run. At $36 (don't pay more—some sellers are asking $711, which is insane), it's a budget workout buddy that packs ANC and multipoint.
But here's the catch: the fit is polarizing. Our comfort score landed in the bottom third of earbuds we've tested, so if you need all-day wear, these might bug you. For short, intense sessions, though, the magnetic clasp neckband and wingtips keep them from flying off.
Performance
Sound is solid, landing in the 86th percentile with 11mm drivers that deliver punchy bass and a decent soundstage thanks to spatial audio. Music purists will notice treble that lacks sparkle, which likely explains the weak 54.2 music score, but for workout playlists it gets the job done. ANC hits the 80th percentile—enough to hush gym noise and plane hum. Battery life is a standout at 20 hours with a fast charge that nets nearly 5 hours in 10 minutes, putting it in the 89th percentile. Connectivity is equally strong with BT 6.0 and reliable multipoint (90th percentile). The mic is average (66th percentile), fine for calls but not crystal clear in windy conditions. Comfort, however, is a consistent drag.
Pros & Cons
Pros
- Rock-solid build with IP67 and magnetic clasp—ready for abuse. 99th
- Bluetooth 6.0 and multipoint connectivity at this price is rare. 90th
- 20-hour battery with a 10-minute quick charge for nearly 5 hours of playback. 89th
- Spatial audio and ANC that punch above their weight. 89th
Cons
- Comfort is a sore spot—ear tips and design can irritate after an hour. 28th
- Music playback lacks detail and sparkle compared to pricier competitors.
- Mic quality is average; not ideal for important calls.
- Neckband cord bounces during high-movement unless cinched tight.
The Word on the Street
Specifications
Full Specifications
Design
| Form Factor | in-ear |
| Wearing Style | neckband |
| Ear Tips | Multiple soft silicone ear tips and fins |
Audio
| Driver Type | dynamic |
| Driver Size | 11 |
| Drivers | 2 |
| Impedance | 32 |
| Codecs | Truefree Wireless Earbuds, HD-100 Bluetooth 6.0 Sport Earphones, Magnetic Wireless Headphones, 11mm Driver Spatial Audio, IP67 Waterproof, 20H Playtime, AI Enhanced Calls, App Control, Dual Connection |
| Surround | Spatial Audio |
Noise Control
| ANC | Yes |
| ANC Type | AI |
Connectivity
| Wireless | Yes |
| Bluetooth | 6 |
| Multipoint | Yes |
Earbud Battery
| Battery Life | 20 |
| Fast Charging | 10 min for nearly 5 hours playback |
| Charging | USB-C |
Case Battery
| Case Battery | 20 |
| Case Charging | USB-C |
Microphone
| Microphone | Yes |
| NC Mic | Yes |
Features
| Touch Controls | Yes |
| App | Truefree App |
| Water Resistance | IP67 |
Value & Pricing
At $36, the HD-100 is an absolute steal for the feature list. You're getting ANC, spatial audio, multipoint, and a 20-hour battery in a package tough enough for the gym. But if you're looking at the $711 listing, close that tab immediately—that's scalper nonsense. Even $50 would be a tough sell. Grab it from Amazon when it's at its lowest and you'll feel like you got away with something.
vs Competition
Against the JBL Endurance Peak 4, the HD-100 gives you a neckband that won't drop, though JBL's earhook design feels more secure during burpees. The SoundPEATS H3 is another neckband with similar battery life but lacks ANC and BT 6.0. If you can spend triple, the Samsung Galaxy Buds3 Pro deliver wildly better sound and comfort, but they'll flinch at a puddle while the HD-100 just shrugs it off. The EarFun Air Pro 4+ offers nicer ANC for a bit more money, but its true wireless form isn't as impervious to sweat and dust.
| Spec | truefree HD-100 | Technics Reference Class EAH-AZ100-K | Sony WF-1000XM5 WF-1000XM5 | Bose QuietComfort Ultra 896637-0010 | Sennheiser MOMENTUM True Wireless 4 | EarFun Air Pro Air Pro 4+ |
|---|---|---|---|---|---|---|
| Form Factor | in-ear | in-ear | in-ear | in-ear | in-ear | in-ear |
| Driver Type | dynamic | Planar Magnetic | dynamic | Dynamic | dynamic | hybrid |
| Wireless | true | true | true | true | true | true |
| Active Noise Cancellation | true | true | true | true | true | true |
| Bluetooth Version | 6.0 | 5.3 | 5.3 | 5.3 | 5.4 | 6.0 |
| Battery Life Hours | 20 | 10 | 8 | 6 | 30 | 12 |
| Case Battery Hours | 20 | 28 | 24 | 18 | 30 | 54 |
| Water Resistance | IP67 | IPX4 | IPX4 | IPX4 | IP54 | IP55 |
| Multipoint | true | true | true | true | true | true |
| Compare | Compare | Compare | Compare | Compare |
| Product | Anc | Mic | Build | Sound | Battery | Comfort | Connectivity | Social Proof |
|---|---|---|---|---|---|---|---|---|
| truefree HD-100 | 79.5 | 65.8 | 98.9 | 85.7 | 89.2 | 27.8 | 89.9 | 89.4 |
| Technics Reference Class EAH-AZ100-K Compare | 96.5 | 96.8 | 78.9 | 96.5 | 82.6 | 70.4 | 99.1 | 89.4 |
| Sony WF-1000XM5 WF-1000XM5 Compare | 96.5 | 96.8 | 78.9 | 99.3 | 76 | 93.4 | 100 | 80.2 |
| Bose QuietComfort Ultra 896637-0010 Compare | 96.5 | 90.3 | 78.9 | 96.4 | 47.2 | 93.4 | 97.8 | 96.9 |
| Sennheiser MOMENTUM True Wireless 4 Compare | 96.5 | 99.7 | 33.3 | 91.9 | 97.7 | 93.4 | 89.9 | 89.4 |
| EarFun Air Pro Air Pro 4+ Compare | 96.5 | 96.8 | 91.3 | 99.8 | 96.3 | 70.4 | 99.3 | 80.2 |
Common Questions
Q: How long does the battery really last with ANC on?
We're getting close to the claimed 20 hours with moderate volume and ANC enabled—your mileage may vary, but it's among the best in this class.
Q: Can I use multipoint to switch between my phone and laptop seamlessly?
Yes, the HD-100 pairs with two devices at once, and switching during calls or music is mostly smooth with Bluetooth 6.0.
Q: Is it comfortable for all-day wear?
No, comfort is not its strong suit. After an hour or two, the ear tips may cause fatigue for many users, so it's better suited for workouts rather than office marathons.
Who Should Skip This
Skip these if comfort is a top priority or if you need stellar music quality. The fit can be a literal pain, and the treble lacks the refinement of even slightly more expensive buds like the EarFun Air Pro 4+. If you want all-day wear, look at true wireless with memory foam tips.
Verdict
If you want a cheap, tough-as-nails neckband for sweaty workouts and don't mind a so-so fit, grab the HD-100. It's built for abuse, loaded with features, and the battery lasts forever.