From e10a7b1b9d3286cfbcd724db3e2887d0f373ee25 Mon Sep 17 00:00:00 2001 From: Peter Tanner Date: Sun, 17 Nov 2024 03:59:12 +0800 Subject: [PATCH] More on prices --- .../2024-02-16-JLCPCB-shipping-price-hack.md | 46 ++++++++++++++---- .../price_plot.png | Bin 0 -> 6235 bytes 2 files changed, 36 insertions(+), 10 deletions(-) create mode 100644 assets/img/2024-02-16-JLCPCB-shipping-pric/price_plot.png diff --git a/_posts/2024-02-16-JLCPCB-shipping-price-hack.md b/_posts/2024-02-16-JLCPCB-shipping-price-hack.md index fde19c0..5322766 100644 --- a/_posts/2024-02-16-JLCPCB-shipping-price-hack.md +++ b/_posts/2024-02-16-JLCPCB-shipping-price-hack.md @@ -6,6 +6,16 @@ categories: [Electronics] # Blogging | Electronics | Programming | Mechanical tags: [electronics, JLCPCB] # systems | embedded | rf | microwave | electronics | solidworks | automation --- + +## TL;DR + +- Parts assembly adds more mass than you would think to an order +- Mass of a board is calculated by the bounding rectangle dimensions and the PCB thickness, so if you have areas cut out from a board it is still counted. You can see this in the quote screen. + - Thickness makes a big impact, but it can't be avoided if you want to use economic PCBA. +- A steep jump in price occurs at 0.3 kg, if it's above this mass the incremental jumps in price are less and it's generally not worth optimizing small combined orders to save on shipping (See last plot) + +## Details + There is a shipping option called "Global Standard Direct Line" which is the cheapest but has a longer shipping time. This is pretty good though if you are not a business and want to shave off as much cost as possible, it incentives making more revisions and shipping often, compared to bundling orders in one shipment. @@ -34,13 +44,29 @@ Here's some shipping data from some of my past orders and tests with random PCBs All prices in AUD. -| Mass [kg] | Global Standard Direct Line | DHL express | S.F Express Standard | FedEx International Packet | UPS Express Saver | Notes | -| --------- | --------------------------- | ----------- | -------------------- | -------------------------- | ----------------- | ------------------------------ | -| 0.18 | **3.18** | Ignored | Ignored | Ignored | Ignored | openGNSS, no assembly | -| 0.29 | **3.18** | **28.40** | 31.42 | 31.72 | 49.52 | Simulated mass | -| 0.33 | 14.35 | **28.40** | 31.42 | 31.72 | 49.52 | Simulated mass | -| 0.39 | 14.35 | Ignored | Ignored | Ignored | Ignored | openGNSS, after assembly | -| 0.46 | 14.35 | **28.40** | 31.42 | 31.72 | 49.52 | Simulated mass | -| 0.67 | 23.39 | 40.49 | 37.42 | 45.02 | 67.74 | Simulated mass | -| 0.8 | 23.61 | 40.49 | 37.42 | 45.02 | 67.74 | Neptunium Order after assembly | -| 1.19 | 31.59 | 63.01 | 43.06 | 64.40 | 46.65$A | Simulated mass | +| Mass [kg] | Global Standard Direct Line | DHL express | S.F Express Standard | FedEx International Packet | UPS Express Saver | Notes | +| --------- | --------------------------- | ----------- | -------------------- | -------------------------- | ----------------- | -------------------------------------------- | +| 0.18 | **3.18** | Ignored | Ignored | Ignored | Ignored | openGNSS (no assembly) | +| 0.29 | **3.18** | **28.40** | 31.42 | 31.72 | 49.52 | Simulated mass | +| 0.33 | 14.35 | **28.40** | 31.42 | 31.72 | 49.52 | Simulated mass | +| 0.39 | 14.35 | Ignored | Ignored | Ignored | Ignored | openGNSS (assembled) | +| 0.46 | 14.35 | **28.40** | 31.42 | 31.72 | 49.52 | Simulated mass | +| 0.56 | 19.80 | Ignored | Ignored | Ignored | Ignored | Test | +| 0.59 | 20.68 | Ignored | Ignored | Ignored | Ignored | Test: openGNSS (assembled), patch antenna V3 | +| 0.60 | 20.68 | Ignored | Ignored | Ignored | Ignored | Test: openGNSS (assembled), patch antenna V2 | +| 0.61 | 20.68 | Ignored | Ignored | Ignored | Ignored | Test: openGNSS (assembled), patch antenna | +| 0.67 | 23.39 | 40.49 | 37.42 | 45.02 | 67.74 | Simulated mass | +| 0.8 | 23.61 | 40.49 | 37.42 | 45.02 | 67.74 | Neptunium Order after assembly | +| 1.19 | 31.59 | 63.01 | 43.06 | 64.40 | 46.65$A | Simulated mass | + +```mathematica +prices = {{0.18, 3.18}, {0.29, 3.18}, {0.33, 14.35}, {0.39, + 14.35}, {0.46, 14.35}, {0.56, 19.80}, {0.59, 20.68}, {0.60, + 20.68}, {0.61, 20.68}, {0.67, 23.39}, {0.8, 23.61}, {1.19, 31.59}} + +ListPlot[prices] +``` + +Price plot for Global Standard Direct Line + +![Price plot for Global Standard Direct Line](/assets/img/2024-02-16-JLCPCB-shipping-pric/price_plot.png) \ No newline at end of file diff --git a/assets/img/2024-02-16-JLCPCB-shipping-pric/price_plot.png b/assets/img/2024-02-16-JLCPCB-shipping-pric/price_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..bb5429a59884925fdb063bb4f37ea4ee9245efd0 GIT binary patch literal 6235 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 Ng|lYAml|D<{x2r7$W8zN literal 0 HcmV?d00001