Sachverhalt:
A.
Die A._ AG (Unternehmerin, Klägerin, Beschwerdeführerin) bezweckt die Entwicklung, die Herstellung und den Vertrieb von elektronischen Geräten und Steuerungen sowie die Fabrikation elektronisch gesteuerter Maschinen.
Die B._ AG (Bestellerin, Beklagte, Beschwerdegegnerin) erbringt Dienstleistungen im Bereich der Zeitbewirtschaftung und des Zutrittsmanagements, konfiguriert Hardwareprodukte und handelt mit Hardwarekomponenten.
A.a. Im April 2010 schlossen die Parteien einen Werkvertrag über die Entwicklung und Produktion von 1'000 elektronischen Geräten zur Zeiterfassung in leicht verschiedenen Versionen. Der Stückpreis wurde mit Fr. 750.-- veranschlagt und im Januar 2011 wegen einer Angebotsänderung auf Fr. 1'020.-- erhöht. Die Bestellerin sollte die Geräte binnen 36 bis 42 Monaten gestaffelt abrufen. Allerdings bezog sie nicht alle Geräte in der vereinbarten Laufzeit, weshalb diese bis 31. Dezember 2016 verlängert wurde. Doch auch bis zu diesem Datum rief die Bestellerin nicht alle Geräte ab.
A.b. Die Unternehmerin teilte der Bestellerin am 27. April 2017 schriftlich mit, sie verzichte auf die Abnahme der restlichen Geräte und werde den Schaden gerichtlich geltend machen.
B.
Nach erfolglosem Schlichtungsversuch verklagte die Unternehmerin am 12. Februar 2018 die Bestellerin vor dem Bezirksgericht Willisau nach einer Klageänderung in der Replik auf Zahlung von Fr. 366'416.-- nebst Zins zu 5 % ab 30. Januar 2017.
Die Bestellerin schloss auf Abweisung der Klage, soweit darauf einzutreten sei. Eventualiter begehrte sie die Feststellung, dass die eingeklagte Forderung durch Verrechnung getilgt sei.
Das Bezirksgericht wies die Klage am 14. November 2019 ab.
Gleich entschied das Kantonsgericht des Kantons Luzern mit Urteil vom 26. Mai 2020 auf die gegen das Urteil des Bezirksgerichts erhobene Berufung der Unternehmerin.
C.
Die Unternehmerin beantragt mit Beschwerde in Zivilsachen, das Urteil des Kantonsgerichts sei aufzuheben, und das Verfahren sei an das Bezirksgericht zur erneuten Behandlung zurückzuweisen. Eventualiter sei die Bestellerin zur Zahlung von Fr. 366'416.-- nebst Zins zu 5 % ab 30. Januar 2017 zu verpflichten.
Die Bestellerin und das Kantonsgericht tragen auf Abweisung der Beschwerde an, soweit darauf einzutreten sei.
Die Parteien haben unaufgefordert repliziert und dupliziert.
Erwägungen:
1.
Die Beschwerde betrifft eine Zivilsache (Art. 72 BGG) und richtet sich gegen den Endentscheid (Art. 90 BGG) eines oberen kantonalen Gerichts, das als Rechtsmittelinstanz entschieden hat (Art. 75 BGG). Die Beschwerdeführerin ist mit ihren Anträgen unterlegen (Art. 76 BGG), der Streitwert ist erreicht (Art. 74 Abs. 1 lit. b BGG) und die Beschwerdefrist (Art. 100 Abs. 1 BGG) ist eingehalten. Auf die Beschwerde ist unter Vorbehalt hinreichender Begründung (vgl. E. 2 hiernach) einzutreten.
2.
2.1. Das Bundesgericht wendet das Recht von Amtes wegen an (Art. 106 Abs. 1 BGG). Es ist somit weder an die in der Beschwerde geltend gemachten Argumente noch an die Erwägungen der Vorinstanz gebunden; es kann eine Beschwerde aus einem anderen als dem angerufenen Grund gutheissen oder eine Beschwerde mit einer von der Argumentation der Vorinstanz abweichenden Begründung abweisen. Mit Blick auf die Begründungsanforderungen (Art. 42 Abs. 1 und 2 BGG) behandelt es aber grundsätzlich nur die geltend gemachten Rügen, sofern die rechtlichen Mängel nicht geradezu offensichtlich sind; es ist jedenfalls nicht gehalten, wie eine erstinstanzliche Behörde alle sich stellenden rechtlichen Fragen zu untersuchen, wenn diese vor Bundesgericht nicht mehr vorgetragen werden (BGE 140 III 86 E. 2 S. 88 f., 115 E. 2 S. 116). Eine qualifizierte Rügepflicht gilt hinsichtlich der Verletzung von Grundrechten und von kantonalem und interkantonalem Recht. Das Bundesgericht prüft eine solche Rüge nur insofern, als sie in der Beschwerde präzise vorgebracht und begründet worden ist (Art. 106 Abs. 2 BGG; BGE 142 I 99 E. 1.7.2 S. 106 mit Hinweisen). Stützt sich der angefochtene Entscheid auf mehrere selbständige Begründungen, so muss sich die Beschwerde mit jeder einzelnen auseinandersetzen, sonst wird darauf nicht eingetreten (BGE 142 III 364 E. 2.4 S. 368 mit Hinweisen; vgl. auch BGE 143 IV 40 E. 3.4 S. 44).
Unerlässlich ist im Hinblick auf Art. 42 Abs. 2 und Art. 106 Abs. 2 BGG, dass die Beschwerde auf die Begründung des angefochtenen Entscheids eingeht und im Einzelnen aufzeigt, worin eine Rechtsverletzung liegt. Die beschwerdeführende Partei soll in der Beschwerdeschrift nicht bloss die Rechtsstandpunkte, die sie im vorinstanzlichen Verfahren eingenommen hat, erneut bekräftigen, sondern mit ihrer Kritik an den als rechtsfehlerhaft erachteten Erwägungen der Vorinstanz ansetzen (BGE 140 III 86 E. 2 S. 89, 115 E. 2 S. 116). Die Begründung hat ferner in der Beschwerdeschrift selbst zu erfolgen und der blosse Verweis auf Ausführungen in anderen Rechtsschriften oder auf die Akten reicht nicht aus. Für die Beschwerdeantwort gelten dieselben Begründungsanforderungen (BGE 140 III 115 E. 2 S. 116).
2.2. Das Bundesgericht legt seinem Urteil den Sachverhalt zugrunde, den die Vorinstanz festgestellt hat (Art. 105 Abs. 1 BGG). Dazu gehören sowohl die Feststellungen über den streitgegenständlichen Lebenssachverhalt als auch jene über den Ablauf des vor- und erstinstanzlichen Verfahrens, also die Feststellungen über den Prozesssachverhalt (BGE 140 III 16 E. 1.3.1 S. 17 f. mit Hinweisen). Es kann die Sachverhaltsfeststellung der Vorinstanz nur berichtigen oder ergänzen, wenn sie offensichtlich unrichtig ist oder auf einer Rechtsverletzung im Sinne von Art. 95 BGG beruht (Art. 105 Abs. 2 BGG). "Offensichtlich unrichtig" bedeutet dabei "willkürlich" (BGE 143 IV 241 E. 2.3.1 S. 244; 140 III 115 E. 2 S. 117, 264 E. 2.3 S. 266). Überdies muss die Behebung des Mangels für den Ausgang des Verfahrens entscheidend sein können (Art. 97 Abs. 1 BGG).
Für eine Kritik am festgestellten Sachverhalt gilt das strenge Rügeprinzip von Art. 106 Abs. 2 BGG (BGE 140 III 264 E. 2.3 S. 266 mit Hinweisen). Die Partei, welche die Sachverhaltsfeststellung der Vorinstanz anfechten will, muss klar und substanziiert aufzeigen, inwiefern die genannten Voraussetzungen erfüllt sein sollen (BGE 140 III 16 E. 1.3.1 S. 18 mit Hinweisen). Wenn sie den Sachverhalt ergänzen will, hat sie zudem mit präzisen Aktenhinweisen darzulegen, dass sie entsprechende rechtsrelevante Tatsachen und taugliche Beweismittel bereits bei den Vorinstanzen prozesskonform eingebracht hat (BGE 140 III 86 E. 2 S. 90).
3.
Die Erstinstanz hatte festgestellt, die Beschwerdegegnerin habe 700 Geräte nicht bezogen. Dies blieb vor der Vorinstanz unangefochten.
Nach Ansicht der Erstinstanz war die Beschwerdegegnerin zur Abnahme von 1'000 Geräten verpflichtet. Sie habe nicht alle Geräte rechtzeitig bezogen und damit ihre vertraglichen Mitwirkungspflichten verletzt, womit sie in Verzug geraten sei. Diese Erwägung wurde vor der Vorinstanz nicht angefochten.
Bereits vor der Erstinstanz war unbestritten, dass die Preise für die ersten beiden Gerätetypen je Fr. 1'088.25 betragen und für den dritten Gerätetypen Fr. 1'175.50 [recte: Fr. 1'175.70].
Hingegen blieb umstritten, ob die Beschwerdegegnerin der Beschwerdeführerin Schadenersatz schulde.
4.
Zur Berechnung des Schadens erwog die Erstinstanz, die Beschwerdeführerin sei zum eingeklagten Betrag von Fr. 366'416.-- gelangt, indem sie vom Preis der Geräte die Kosten für Material und Arbeit abgezogen habe. Das resultierende Ergebnis habe sie mit der Anzahl nicht bezogener Geräte multipliziert. So sei sie zu einem Betrag von Fr. 215'847.15 gelangt (vgl. dazu E. 4.1 hiernach). Zudem veranschlage die Beschwerdeführerin Fr. 150'569.75 für Material, welches sie zur Herstellung der Geräte vergebens beschafft habe (vgl. dazu E. 4.2 hiernach).
4.1. Was den entgangenen Gewinn von angeblich Fr. 215'847.15 betrifft, war die Erstinstanz zum Schluss gekommen, die Beschwerdeführerin habe die behaupteten Herstellungskosten pro Gerät ungenügend substanziiert. Sie bezeichne die Herstellungskosten nur als Summe von Material und Arbeit. Zudem sei verwirrend und widersprüchlich, dass sie die Arbeit als Teil der Herstellungskosten aufführe, später jedoch ausdrücklich darauf hinweise, diese würde nicht als Schaden geltend gemacht. Auch bleibe unklar, welches Material tatsächlich in ihre Berechnungen eingeflossen sei. Gemäss Erstinstanz hätte die Beschwerdeführerin zumindest die Grundlage für ihre Berechnungen nennen müssen, aufgeschlüsselt nach Anzahl und Stückpreis. Die Erstinstanz hatte das Argument der Beschwerdeführerin verworfen, die Materialkosten könnten nicht genau bestimmt werden. Sie hatte erwogen, die Beschwerdeführerin hätte das erforderliche Material samt ungefährer Kostenschätzung einzeln aufführen müssen.
4.2. Zum vergebens beschafften Material im behaupteten Wert von Fr. 150'569.75 hatte die Erstinstanz erwogen, soweit die Beschwerdegegnerin geltend mache, das gelagerte Material sei anderweitig verwendbar, treffe sie die Beweislast. Allerdings müsse zuerst die Beschwerdeführerin beweisen, dass sie im Zusammenhang mit dem Werkvertrag tatsächlich Material im veranschlagten Betrag beschafft habe. Diesbezüglich lege die Beschwerdeführerin einen 19-seitigen Sammelbeleg mit diversen Rechnungen von Drittpersonen ins Recht. Die Rechnungsbeträge seien in Schweizerfranken, Euro oder US-Dollar aufgelistet. Auf zahlreichen Seiten seien schwer lesbare handschriftliche Notizen angebracht. Die Qualität der Kopien sei mangelhaft. Bei einer Rechnung sei nicht ersichtlich, welches Produkt die Beschwerdeführerin zu welchem Preis angeschafft habe. Die Beschwerdeführerin erkläre nicht, welches Material sich noch in ihrem Lager befinde und was sie nicht bereits für die Herstellung der Geräte für die Beschwerdegegnerin oder für Drittaufträge habe verwenden können. Somit sei das einzige Beweismittel, das die Beschwerdeführerin zum Nachweis des vergebens beschafften Materials im behaupteten Wert von Fr. 150'569.75 aufführe, untauglich.
4.3. Die Beschwerdegegnerin hatte vor Erstinstanz eingewendet, die Beschwerdeführerin habe die Materialkosten bei der Schadensberechnung doppelt berücksichtigt. Dem hatte die Erstinstanz entgegnet, die Beschwerdeführerin habe vom Preis die Materialkosten und den eingesparten Arbeitsaufwand abgezogen. Damit habe sie als entgangenen Gewinn einzig die Differenz zwischen den Herstellungskosten und dem vereinbarten Preis geltend gemacht, also die Marge. Daher sei nicht zu beanstanden, wenn sie die Materialkosten als eigene Position verlange. Dies focht die Beschwerdegegnerin in der Folge nicht mehr an.
4.4. Zusammenfassend war die Erstinstanz zum Schluss gekommen, der Beschwerdeführerin misslinge der rechtsgenügende Nachweis eines Schadens, weshalb ihre Klage abzuweisen sei. Vor diesem Hintergrund könne dahingestellt bleiben, wie es sich mit einer allfälligen Verrechnungsforderung der Beschwerdegegnerin verhalte.
5.
Die Vorinstanz wies die Berufung der Beschwerdeführerin ab und bestätigte das erstinstanzliche Urteil. Im Wesentlichen erwog sie, die Klage sei an mangelnder Substanziierung gescheitert und nicht, weil die Beschwerdeführerin eine bestimmte Berechnungsweise für den Schaden gewählt habe.
5.1. Zuerst prüfte die Vorinstanz, wie die Beschwerdeführerin den Schaden von Fr. 215'847.15 wegen entgangenen Gewinns für 700 Geräte berechnet hatte.
Sie stellte fest, die Beschwerdeführerin mache für den ersten Gerätetypen einen Preis von Fr. 1'088.25 und Herstellungskosten von Fr. 779.72 geltend bei 394 nicht abgenommenen Geräten, für den zweiten Gerätetypen einen Preis von Fr. 1'088.25 und Herstellungskosten von Fr. 844.96 bei 86 nicht abgenommenen Geräten und für den dritten Gerätetypen einen Preis von Fr. 1'175. 70 und Herstellungskosten von Fr. 842.23 bei 220 nicht abgenommenen Geräten.
Sodann erwog die Vorinstanz, die Beschwerdeführerin habe die Differenz zwischen dem Preis und den Herstellungskosten je mit der Anzahl nicht abgenommener Geräte multipliziert und sei so zu entgangenen Gewinnen von Fr. 121'560.82 für denersten Gerätetypen, Fr. 20'922.94 für den zweiten Gerätetypen und Fr. 73'363.40 für den dritten Gerätetypen und einem Gesamtbetrag von [rund] Fr. 215'848.-- gelangt. Das bereits eingekaufte Material habe die Beschwer deführerin nicht berücksichtigt, sondern separat geltend gemacht.
Weiter erwog die Vorinstanz, die Beschwerdeführerin habe nicht dargelegt, wie sich die konkreten Herstellungskosten pro Gerät zusammensetzten. Beispielsweise behaupte sie für den ersten Gerätetypen Herstellungskosten von Fr. 779.72. Doch erkläre sie nicht, wie sich dieser Betrag berechne, obwohl es ihr ohne weiteres zumutbar gewesen wäre, die Materialkosten auszuweisen. Die Beschwerdeführerin habe von den drei Gerätetypen je eine bestimmte Anzahl produziert und an die Beschwerdegegnerin ausgeliefert. Sie habe somit mögliche Abweichungen bei den Materialkosten gekannt. Zudem habe die Beschwerdeführerin die Materialkosten bereits vor der Fertigung kalkulieren müssen, um überhaupt eine Offerte zu erstellen. Schliesslich habe die Beschwerdeführerin nicht dargelegt, welcher Teil der Herstellungskosten auf die Arbeit entfalle.
5.2. Was die vergeblichen Materialaufwendungen betrifft, gestand die Vorinstanz der Beschwerdeführerin zu, dass sie erwähnt habe, welche unnützen Materialien sich noch in ihrem Lager befänden. Die Beschwerdeführerin habe diverses Material aufgelistet, woraus eine Summe von Fr. 150'569.75 resultierte. Zum Beweis habe sie auf einen Sammelbeleg verwiesen und ein Gutachten sowie einen Augenschein offeriert. Entgegen der erstinstanzlichen Auffassung habe die Beschwerdeführerin damit den Schaden knapp genügend substanziiert.
Allerdings, so die Vorinstanz weiter, werde die knappe Substanziierung nicht durch die Urkunden gestützt. Zwar fänden sich die in der erstinstanzlichen Replik aufgelisteten Lieferanten im Sammelbeleg. Allerdings seien die Materialien und die Preise nicht ohne weiteres erkennbar. Soweit die Rechnungen überhaupt lesbar seien, sagten sie nichts darüber aus, welche Materialien für welchen Gerätetyp benötigt worden seien. Nur eine solche Ausscheidung hätte die Überprüfung ermöglicht, welche Materialien nicht in die Geräte verbaut worden seien. Dieser Beweis hätte weder mit dem beantragten Gutachten noch mit dem Augenschein erbracht werden können.
Schliesslich erwog die Vorinstanz, die Beschwerdegegnerin habe die Kosten des Materials im erstinstanzlichen Verfahren bestritten. Sie habe erstens geltend gemacht, dass der Beschwerdeführerin aus dem sich im Lager befindlichen Material kein Schaden entstanden sei. Zweitens habe sie vorgetragen, es sei nicht bewiesen, dass besagtes Material eigens für die Herstellung der Geräte angeschafft worden sei. Anders als beim entgangenen Gewinn habe die Erstinstanz bei den unnützen Aufwendungen nicht beanstandet, dass die Höhe unklar sei. Vielmehr habe sie erwogen, dass die Bestreitung der Schadenshöhe unmöglich sei, weil die Beschwerdeführerin nicht dargetan und bewiesen habe, inwiefern ihr ein Schaden entstanden sei. Der pauschale Verweis auf diverse, zum Teil unleserliche Beilagen vermöge die fehlenden Behauptungen in den Rechtsschriften nicht zu ersetzen.
5.3. Gestützt auf diese Erwägungen wies auch die Vorinstanz die Klage der Beschwerdeführerin ab.
6.
Die Rügen, welche die Beschwerdeführerin vor Bundesgericht erhebt, sind unbegründet.
6.1. Nach dem allgemeinen Schadensbegriff ist der Schaden eine unfreiwillige Vermögensverminderung, der in einer Verminderung der Aktiven, einer Vermehrung der Passiven oder in entgangenem Gewinn bestehen kann. Er entspricht der Differenz zwischen dem gegenwärtigen Vermögensstand und dem Stand, den das Vermögen ohne das schädigende Ereignis hätte (BGE 144 III 155 E. 2.2 S. 157; 142 III 23 E. 4.1 S. 27; je mit Hinweisen).
Es ist unbestritten, dass im zu beurteilenden Fall das Erfüllungsinteresse (positives Vertragsinteresse) zu ersetzen ist.
6.2.
6.2.1. Nach Art. 55 Abs. 1 ZPO haben unter der Geltung des Verhandlungsgrundsatzes die Parteien dem Gericht die Tatsachen darzulegen, auf die sie ihre Begehren stützen, und die Beweismittel anzugeben. Eine Tatsachenbehauptung hat nicht alle Einzelheiten zu enthalten. Es genügt, wenn die Tatsachen, die unter die das Begehren stützenden Normen zu subsumieren sind, in einer den Gewohnheiten des Lebens entsprechenden Weise in ihren wesentlichen Zügen oder Umrissen behauptet werden (BGE 136 III 322 E. 3.4.2 S. 328; Urteil des Bundesgerichts 4A_412/2019 vom 27. April 2020 E. 4.1). Ein solchermassen vollständiger Tatsachenvortrag wird als schlüssig bezeichnet, da er bei Unterstellung, er sei wahr, den Schluss auf die anbegehrte Rechtsfolge zulässt (zit. Urteil 4A_412/2019 mit Hinweisen; vgl. auch BGE 127 III 365 E. 2b S. 368).
6.2.2. Die Behauptungs- und Substanziierungslast zwingt die damit belastete Partei nicht, sämtliche möglichen Einwände der Gegenpartei vorweg zu entkräften (Urteile des Bundesgerichts 4A_533/2019 vom 22. April 2020 E. 4.4.1; 4A_591/2012 vom 20. Februar 2013 E. 3.2 mit Hinweisen). Nur soweit der Prozessgegner den schlüssigen Tatsachenvortrag der behauptungsbelasteten Partei bestreitet, greift eine über die Behauptungslast hinausgehende Substanziierungslast. Die Vorbringen sind diesfalls nicht nur in den Grundzügen, sondern in Einzeltatsachen zergliedert so umfassend und klar darzulegen, dass darüber Beweis abgenommen oder dagegen der Gegenbeweis angetreten werden kann (BGE 144 III 519 E. 5.2.1.1 S. 523; 127 III 365 E. 2b S. 368 mit Hinweisen; vgl. zum Ganzen: Urteil des Bundesgerichts 4A_443/2017 vom 30. April 2018 E. 2.1).
6.2.3. Bestreitungen sind so konkret zu halten, dass sich bestimmen lässt, welche einzelnen Behauptungen der klagenden Partei damit bestritten werden; die Bestreitung muss ihrem Zweck entsprechend so konkret sein, dass die Gegenpartei weiss, welche einzelne Tatsachenbehauptung sie beweisen muss (vgl. Art. 222 Abs. 2 ZPO). Der Grad der Substanziierung einer Behauptung beeinflusst insofern den erforderlichen Grad an Substanziierung einer Bestreitung; je detaillierter einzelne Tatsachen eines gesamten Sachverhalts behauptet werden, desto konkreter muss die Gegenpartei erklären, welche dieser einzelnen Tatsachen sie bestreitet. Je detaillierter mithin ein Parteivortrag ist, desto höher sind die Anforderungen an eine substanziierte Bestreitung. Diese sind zwar tiefer als die Anforderungen an die Substanziierung einer Behauptung; pauschale Bestreitungen reichen indessen nicht aus. Erforderlich ist eine klare Äusserung, dass der Wahrheitsgehalt einer bestimmten und konkreten gegnerischen Behauptung infrage gestellt wird (BGE 141 III 433 E. 2.6 S. 438 mit Hinweisen). Eine hinreichende Bestreitung lässt die behauptungsbelastete Partei erkennen, welche ihrer Behauptungen sie weiter zu substanziieren und welche Behauptungen sie schliesslich zu beweisen hat (vgl. Urteil des Bundesgerichts 4A_9/2018 vom 31. Oktober 2018 E. 2.3 mit Hinweisen). Dagegen ist die beweisbefreite Partei grundsätzlich nicht gehalten, darzutun, weshalb eine bestrittene Behauptung unrichtig sei (BGE 144 III 519 E. 5.2.2.2 S. 524; 117 II 113 E. 2 S. 114).
6.2.4. Der Anspruch auf rechtliches Gehör (Art. 29 Abs. 2 BV) gewährt den Parteien insbesondere das Recht, mit rechtzeitig und formrichtig angebotenen erheblichen Beweismitteln gehört zu werden (BGE 134 I 140 E. 5.3 S. 148; 129 II 497 E. 2.2 S. 504 f.). Keine Verletzung des rechtlichen Gehörs liegt vor, wenn ein Gericht darauf verzichtet, beantragte Beweise abzunehmen, weil es aufgrund bereits abgenommener Beweise seine Überzeugung gebildet hat und ohne Willkür in vorweggenommener Beweiswürdigung annehmen kann, dass seine Überzeugung durch weitere Beweiserhebungen nicht geändert würde (BGE 134 I 140 E. 5.3 S. 148; 130 II 425 E. 2.1 S. 429 mit Hinweisen). Das Bundesgericht greift in eine antizipierte Beweiswürdigung nur ein, wenn sie willkürlich und damit offensichtlich unhaltbar ist (BGE 124 I 208 E. 4a S. 211), namentlich wenn sie eine prozessuale Vorschrift oder einen unumstrittenen Grundsatz des Beweisrechts krass verletzt oder sonst wie in stossender Weise dem Gerechtigkeitsgedanken zuwiderläuft (BGE 132 III 209 E. 2.1 S. 211; 131 I 57 E. 2 S. 61; 129 I 8 E. 2.1 S. 9; je mit Hinweisen).
6.3.
6.3.1. Mit Blick auf den entgangenen Gewinn von angeblich Fr. 215'847.15 (vgl. E. 4.1 und E. 5.1 hiervor) trägt die Beschwerdeführerin Folgendes vor: Die Beschwerdegegnerin habe vor der Erstinstanz behauptet, die Beschwerdeführerin habe die Herstellungskosten nicht substanziiert dargetan. Allerdings habe es die Beschwerdegegnerin versäumt, selbst Ausführungen zur Höhe der Herstellungskosten zu machen. Insbesondere habe sie nicht behauptet, die Herstellungskosten seien höher gewesen als von der Beschwerdeführerin behauptet. Vor Vorinstanz habe die Beschwerdeführerin dann geltend gemacht, dass nach der allgemeinen Beweislastregel die Beschwerdegegnerin die Herstellungskosten hätte substanziieren und behaupten müssen. Denn es handle sich dabei um anspruchsvernichtende Tatsachen. Die Beschwerdeführerin habe nur die Umsatzeinbusse als primären Schadensbegriff behaupten müssen. Die Umsatzeinbusse aber sei von der Vorinstanz anerkannt und von der Beschwerdegegnerin nicht mehr bestritten worden.
6.3.2. Diese Ansicht der Beschwerdeführerin, wonach die Umsatzeinbusse als primärer Schadensbegriff hätte herangezogen werden müssen, ist falsch. Zwar sind die Herstellungskosten bei der Schadensberechnung zu Gunsten der Beschwerdegegnerin zu berücksichtigen, doch bilden sie einen wesentlichen Bestandteil der Berechnungsformel für den entgangenen Gewinn. Daher trägt die Beschwerdegegnerin dafür nicht die Beweislast.
Die Beschwerdegegnerin wäre dann zur Substanziierung ihrer Bestreitung verpflichtet gewesen, wenn sie die konkret aufgeschlüsselten Parameter der Beschwerdeführerin anders hätte festsetzen wollen. Dazu konnte es aber überhaupt nicht kommen, weil die Beschwerdeführerin ihrerseits die behaupteten Herstellungskosten nicht hinreichend substanziiert hatte. Die Beschwerdeführerin behauptete ihre Herstellungskosten erst in der Replik und auch dort nur rudimentär.
Die Beschwerdeführerin übersieht, dass sie ihren entgangenen Gewinn hätte substanziieren müssen und nicht nur den entgangenen Umsatz. Denn der Umsatz stellte lediglich einen Bestandteil der Formel zur Schadensberechnung dar. Wäre dem nicht so, dann müsste die Beschwerdegegnerin im Ergebnis die Gewinnmarge und damit den entgangenen Gewinn der Beschwerdeführerin beweisen. Dies widerspräche der allgemeinen Beweislastregel von Art. 8 ZGB und auch der faktischen Beweisverfügbarkeit. Es ist die Beschwerdeführerin, die im Besitz von Unterlagen und Berechnungen zu den fraglichen Geräten ist, und nicht die Beschwerdegegnerin. Da diese die vorgelegte Schadensberechnung bestreitet und aus eigener Wahrnehmung in Bezug auf die Herstellungskosten keine substanziierten Behauptungen aufstellen kann, wäre die Beschwerdeführerin selbst dort gehalten, ihre Vorbringen zu substanziieren, wo sie nicht die Behauptungs- und Beweislast trägt (BGE 115 II 1 E. 4 S. 2; 133 III 43 E. 4.1 S. 54; Urteile 4A_27/2018 vom 3. Januar 2019 E. 2.3.2.3; 4A_251/2020 vom 29. September 2020 E. 3.7.1; je mit Hinweisen).
Unter diesem Gesichtspunkt musste die Beschwerdegegnerin auch kein Gutachten beantragen, um die Herstellungskosten als Ganzes beurteilen zu lassen. Die von der Beschwerdeführerin dem ausservertraglichen Haftpflichtrecht entnommene Rechtsfigur der Vorteilsanrechnung verfängt ebenfalls nicht. Sie kommt nur dann zum Zug, wenn einer geschädigten Vertragspartei materiell messbare Vorteile zugeflossen sind. Die Vorteilsanrechnung ist somit nicht Bestandteil der Schadensberechnung im engeren Sinne, welche den entgangenen Gewinn betrifft. Die streitgegenständlichen Herstellungskosten stellen keine finanziellen Vorteile dar, welche der Beschwerdeführerin im Sinne der Vorteilsanrechnung zugeflossen sind.
Da die Beschwerdeführerin die Berechnungsgrundlagen nicht im Detail unterbreitete, war auch eine gerichtliche Schätzung nach Art. 42 Abs. 2 OR ausgeschlossen (BGE 144 III 155 E. 2.3 S. 160; Urteil 4A_113/2017 vom 6. September 2017 E. 6.1.3; je mit Hinweisen). Die blosse Offerte eines Gutachtens genügt nicht, weil fehlende Behauptungen nicht durch Beweisanträge ersetzt werden können (vgl. dazu: Urteil des Bundesgerichts 4A_38/2020 vom 22. Juli 2020 E. 6.2.2 mit Hinweisen). Die Vorinstanzen durften annehmen, dass die Beschwerdeführerin bei den Vertragsverhandlungen eine ungefähre Kalkulation der Herstellungskosten vorgenommen hatte, ansonsten hätte sie keine zuverlässige Offerte stellen können.
6.4. Die Beschwerdeführerin führt verschiedene bundesgerichtliche Urteile ins Feld.
6.4.1. Wie bereits die Vorinstanz zutreffend erkannte, kann die Beschwerdeführerin aus dem Urteil 4C.137/2006 vom 17. Januar 2008 nichts zu ihren Gunsten ableiten. Das Bundesgericht befasste sich dort mit der Frage, ob überhaupt ein Schaden eingetreten sei. Hier ist jedoch die Schadenshöhe der zentrale Punkt, und es dreht sich alles um die Frage der hinreichenden Substanziierung.
6.4.2. Auch das von der Beschwerdeführerin angerufene Urteil 4C.216/2003 vom 20. Oktober 2003 ist nicht unbesehen auf den vorliegenden Fall übertragbar. Jener Entscheid handelt von der Abzugsmethode gemäss Art. 184 Abs. 2 SIA-Norm 118. Diese Norm regelt die Schadloshaltung eines Unternehmers, wenn der Besteller vorzeitig vom Vertrag zurücktritt. Vorliegend ist die Beschwerdeführerin als Unternehmerin und nicht die Beschwerdegegnerin als Bestellerin vom Vertrag zurückgetreten. Zudem ändert dieses Urteil nichts daran, dass die Beschwerdeführerin im vorliegenden Fall ihre Substanziierungsobliegenheit vernachlässigte.
6.5.
6.5.1. Die Beschwerdeführerin macht eine Verletzung ihres Anspruchs auf rechtliches Gehör geltend. Die Vorinstanz habe die Rügen zur Beweislast und Substanziierung hinsichtlich ihrer Ersparnisse nicht behandelt. Die Vorinstanz habe keinen Bezug auf das klägerische Vorbringen genommen, dass es sich bei den Herstellungskosten um anspruchsvernichtende Tatsachen handle.
6.5.2. Der verfassungsmässige Anspruch auf rechtliches Gehör umfasst das Recht des Betroffenen, sich vor Erlass eines in seine Rechtsstellung eingreifenden Akts zur Sache zu äussern. Er verlangt von der Behörde, dass sie sein Vorbringen tatsächlich hört, ernsthaft prüft und in ihrer Entscheidfindung angemessen berücksichtigt. Dies gilt für alle form- und fristgerechten Äusserungen, Eingaben und Anträge, die zur Klärung der konkreten Streitfrage geeignet und erforderlich erscheinen (BGE 136 I 184 E. 2.2.1 S. 188 mit Hinweisen). Daraus folgt auch die Verpflichtung des Gerichts, seinen Entscheid zu begründen. Die Begründung muss so abgefasst sein, dass der Betroffene den Entscheid gegebenenfalls sachgerecht anfechten kann. Sie muss kurz die wesentlichen Überlegungen nennen, von denen sich das Gericht hat leiten lassen und auf die es seinen Entscheid stützt (BGE 142 III 433 E. 4.3.2 S. 436; 141 III 28 E. 3.2.4 S. 41; je mit Hinweisen).
6.5.3. Der Prozessgeschichte ist zu entnehmen, dass die Vorinstanz zur Kenntnis nahm, dass die Beschwerdeführerin mit Blick auf die Herstellungskosten eine falsche Verteilung der Beweislast rügte. In der Folge handelte die Vorinstanz die Beweislast ab und auferlegte sie der Beschwerdeführerin. Eine Verletzung des Anspruchs der Beschwerdeführerin auf rechtliches Gehör liegt nicht vor.
6.6.
6.6.1. Die Beschwerdeführerin erklärt, sie habe im erstinstanzlichen Verfahren die Kosten für Materialien geltend gemacht, welche eingekauft worden seien für die Produktion der Geräte. Die Erstinstanz habe diese Schadensposition als ungenügend substanziiert erachtet.
Die Vorinstanz habe das erstinstanzliche Urteil in diesem Punkt teilweise korrigiert und ausgeführt, die Beschwerdeführerin habe hinreichend substanziiert dargetan, welche Materialien sie zu welchem Preis eingekauft habe und welche dieser Materialien noch in ihrem Lager seien. Damit seien die Voraussetzungen für die Schadensberechnung gemäss Vorinstanz erfüllt gewesen. Dennoch habe die Vorinstanz die Berufung abgewiesen gestützt auf die Bestreitung der Beschwerdegegnerin, dass aus dem Kauf der Materialien ein Schaden entstanden sei und dass besagtes Material für die Herstellung der Geräte angeschafft worden sei. Diese Begründung rügt die Beschwerdeführerin als nicht haltbar. Sie erklärt, es liege eine falsche Sachverhaltsfeststellung der Vorinstanz vor. Die Beschwerdeführerin habe nämlich klar dargetan, inwieweit ein Schaden entstanden sei. Dass die Vorinstanz anders entschieden habe, liege an einer falschen Würdigung der Einreden der Beschwerdegegnerin. Diese habe lediglich bestritten, dass die Materialien noch im Lager seien, nicht aber, dass sie für die Herstellung der Geräte angeschafft worden seien. Vielmehr habe sie nur ausgeführt, dass sie für andere Verwendungszwecke hätten benutzt werden können. Die Beweispflicht für die anderweitige Verwendbarkeit sei aber korrekterweise der Beschwerdegegnerin auferlegt worden, da es sich um eine kausalitätsunterbrechende Einrede handle.
Nachdem die Vorinstanz korrekterweise den Schaden beim eingekauften Material als genügend substanziiert eingestuft habe, seien die übrigen Argumente, welche sie zur Abweisung dieser Schadensposition anführe, nicht mehr stichhaltig. Die Vorinstanz stelle sich auf den Standpunkt, die Forderung sei unbegründet, weil nicht bewiesen worden sei, dass der Beschwerdeführerin ein Schaden entstanden sei und dass die Materialien für die Herstellung der Geräte angeschafft worden seien. Dabei verkenne sie aber die Natur der Einrede der Beschwerdegegnerin. Diese habe nicht bestritten, dass die Komponenten Bestandteil der auszuliefernden Geräte gewesen seien. Sie habe lediglich ausgeführt, die Komponenten hätten anders verwendet werden können. Für den bestrittenen Bestand habe die Beschwerdeführerin einen Augenschein offeriert, welcher aufgrund der Feststellung der fehlenden Substanziierung durch die Erstinstanz nicht abgenommen worden sei.
6.6.2. Soweit die Beschwerdeführerin sich gegen die vorinstanzliche Feststellung des Sachverhalts wendet, genügt sie den erhöhten Begründungsanforderungen nicht (vgl. E. 2.2 hiervor). Sie legt nicht dar, dass die vorinstanzliche Sachverhaltsfeststellung geradezu stossend und damit willkürlich wäre. Namentlich zeigt die Beschwerdeführerin nicht auf, dass die Vorinstanz in willkürlicher Weise zum Schluss kam, dass die Erstinstanz die Klage aufgrund der ungenügenden Beweislage abgewiesen hatte.
Es trifft nicht zu, dass die Beschwerdegegnerin nicht bestritten hatte, dass die Materialien Bestandteile der auszuliefernden Geräte waren. Die Bestreitung findet sich in Rz. 37 der Duplik. Nur für den Fall, dass der Beschwerdeführerin der Nachweis des Kausalzusammenhangs gelingen sollte, behauptete die Beschwerdegegnerin die anderweitige Verwendbarkeit.
Zudem verkennt die Beschwerdeführerin, wie weit die Vorinstanz ihrer Argumentation tatsächlich folgte. Nach Ansicht der Erstinstanz genügten weder die Behauptungen noch die Beweisanträge der Beschwerdeführerin. Dies beurteilte die Vorinstanz zu Gunsten der Beschwerdeführerin anders, indem sie zum Schluss kam, die Behauptungen seien knapp genügend. Demgegenüber schätzte die Vorinstanz wie die Erstinstanz das Beweisangebot als ungenügend ein. Dies zu Recht. Denn für die gesamte Schadensposition wurde ein einziger 17-seitiger Sammelbeleg ohne Nummerierung angeführt. Damit eine Behauptung bzw. die Bestreitung einer Rechnung (Art. 55 Abs. 1 und Art. 221 lit. d ZPO) genügend substanziiert ist, ist erforderlich, dass mehrere unterschiedliche Tatsachenelemente (wie etwa mehrere Positionen einer Rechnung) nummeriert werden. Eine Partei kann sich nicht darauf beschränken, beispielsweise den Totalbetrag einer Rechnung mit mehreren unterschiedlichen Positionen zu fordern. Die Behauptungen müssen grundsätzlich in der Rechtsschrift aufgestellt werden. Ein blosser Verweis auf eine Beilage ist nur dann genügend, wenn aus der Beilage selbsterklärend hervorgeht, welche konkreten, in ihre Elemente gegliederten Behauptungen aufgestellt werden. Sind die Beilagen nicht selbsterklärend, muss in der Rechtsschrift wenigstens erklärt werden, wie die Beilagen zu lesen sind (BGE 144 III 519 E. 5.1-5.3; Urteil 4A_209/2019 vom 8. Oktober 2019 E. 9.2). Im vorliegenden Fall nahm die Beschwerdeführerin in der Rechtsschrift keinerlei Bezug auf die einzelnen Seiten des Sammelbelegs. Damit behauptete die Beschwerdeführerin nicht rechtsgenüglich, welches bereits eingekaufte Material sie nicht verwenden konnte. Ihre Behauptung war so ungenau formuliert, dass ein substanziiertes Bestreiten durch die Beschwerdegegnerin oder das Antreten des Gegenbeweises nicht möglich war. Es lag weder an der Vorinstanz noch an der Beschwerdegegnerin, die entsprechenden Angaben aus den Belegen zusammenzusuchen. Jedenfalls vermochte der bloss pauschale Verweis auf zahlreiche Seiten von zum Teil unleserlichen Beilagen die fehlenden Behauptungen der Beschwerdeführerin in ihren Rechtsschriften nicht zu ersetzen.
Die Vorinstanz korrigierte das erstinstanzliche Urteil bloss mit Blick auf die Substanziierung. Sie entschied einzig, dass die tatsächlichen Ausführungen im Fliesstext zur Zusammensetzung des Betrags von Fr. 150'569.75 knapp ausreichten, um Lagerbestand und Stückpreis zu behaupten. Der Lagerbestand wurde, wie die Beschwerdegegnerin zutreffend bemerkt, bestritten. Was den beantragten Augenschein betrifft, trägt die Beschwerdeführerin keine hinreichenden Rügen vor. Namentlich behauptet sie in ihrer Beschwerde nicht, dass er in willkürlicher antizipierter Beweiswürdigung nicht durchgeführt wurde. In der Beschwerdereplik macht sie allerdings geltend, für den Lagerbestand der Komponenten sei ein Augenschein offeriert worden. Dass dieser nicht abgenommen worden sei, stelle eine willkürliche Beweisantizipation dar, wie die Beschwerdegegnerin selbst zu Recht ausführe. Damit ist sie aber nicht zu hören. Zum einen hielt die Beschwerdegegnerin in der Beschwerdeantwort fest, namentlich behaupte die Beschwerdeführerin nicht, dass der Augenschein in willkürlicher Beweisantizipation nicht abgenommen und eine Rechtsverletzung begangen worden sei. Hierauf sei sie zu behaften. Die Beschwerdeführerin verkehrt diese Aussage in ihr Gegenteil. Zum andern darf die Replik nicht dazu verwendet werden, die Beschwerde zu ergänzen oder zu verbessern. Zulässig sind nur Vorbringen, zu denen erst die Ausführungen in der Vernehmlassung eines anderen Verfahrensbeteiligten Anlass geben (vgl. BGE 135 I 19 E. 2.2 S. 21; 132 I 42 E. 3.3.4 S. 47; Urteile des Bundesgerichts 4A_241/2020 vom 9. September 2020 E. 2.3; 4A_84/2020 vom 27. August 2020 E. 2.2).
6.6.3. Das vorinstanzliche Urteil ist auch diesbezüglich nicht zu beanstanden. Die eingeklagte Forderung blieb unbewiesen.
7.
Nach dem Gesagten ist die Beschwerde abzuweisen, soweit darauf einzutreten ist. Dem Ausgang des Verfahrens entsprechend wird die Beschwerdeführerin kosten- und entschädigungspflichtig (Art. 66 Abs. 1 und Art. 68 Abs. 2 BGG). Die Beschwerdegegnerin erachtet in ihrer Beschwerdeantwort mit Blick auf den Streitwert eine Parteientschädigung von Fr. 11'500.-- für angemessen. Das Verfahren war indessen nicht mit einem übermässigen Aufwand verbunden, weshalb die Parteientschädigung praxisgemäss auf Fr. 8'000.-- festgelegt wird.
Demnach erkennt das Bundesgericht:
1.
Die Beschwerde wird abgewiesen, soweit darauf eingetreten wird.
2.
Die Gerichtskosten von Fr. 7'000.-- werden der Beschwerdeführerin auferlegt.
3.
Die Beschwerdeführerin hat die Beschwerdegegnerin für das bundesgerichtliche Verfahren mit Fr. 8'000.-- zu entschädigen.
4.
Dieses Urteil wird den Parteien und dem Kantonsgericht Luzern, 1. Abteilung, schriftlich mitgeteilt.
Lausanne, 18. November 2020
Im Namen der I. zivilrechtlichen Abteilung
des Schweizerischen Bundesgerichts
Die Präsidentin: Kiss
Der Gerichtsschreiber: Luczak