data van barcode (USB) scanner converteren

De barcode op de eID in België wordt een datamatrix.Als je die inleest krijg je eerst een 1; binnen en dan 11 karakters (en nog wat meer) die je eigenlijk wil hebben.
Aangezien de barcode scanners USB apparaten zijn moet het mogelijk zijn hier een software oplossing voor te vinden (tja hoe? ben ik nog aan het bekijken).

Maar anderzijds vroeg ik mij af of je zo iets ook met een microcontroller zou kunnen doen en die bijvoorbeeld inbouwen in een USB hubje als universele oplossing? Als er 20 karakters binnenkomen moeten die gewoon doorgestuurd worden, zijn het er 44, dan moet je de cijfers van positie 3 tot en met 14 doorsturen.

benleentje

Golden Member

Kan je de scanner niet instellen als een keyboard? Vaak kan je ook instellen of je wel of allen de data wilt hebben of alles en zo zijn er nog meer instellingen. Zo kan je de scanner als je hem gebruikt in Exel een return (volgende regel) of TAB volgend veld extra mee laten sturen. Voor mijn Ebay scaner heb ik een kaart met QR codes waarmee ik dan de scanner in een andere mode of instelling kan zetten

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

hij staat ook zo, in het invulveld kwamen de eerste 11 cijfers (rijksregsiternr) en de rest werd genegeerd. Nu staat daar die 1; voor en die zou weg moeten. Ik ben aan het testen met een Quickscan QD24XX, maar je kan geen karakters laten vallen.

Op 28 januari 2020 17:00:06 schreef kombucha:
Maar anderzijds vroeg ik mij af of je zo iets ook met een microcontroller zou kunnen doen en die bijvoorbeeld inbouwen in een USB hubje als universele oplossing? Als er 20 karakters binnenkomen moeten die gewoon doorgestuurd worden, zijn het er 44, dan moet je de cijfers van positie 3 tot en met 14 doorsturen.

Ja, natuurlijk kan dat. Er zijn microcontrollers die USB Host kunnen zijn en die een HID kunnen simuleren op je PC. Dan zou je in die uC precies kunnen doen wat je wil. Maar misschien is dat een beetje veel development werk en zou je dit beter in een software oplossing kunnen fabrieken.

Persoonlijk zou ik kijken of ik in een tooltje (in bijvoorbeeld C#) de USB barcodescanner gaan claimen, je trucje uithaalt en dat je tooltje weer iets van een virtuele HID aanmaakt. Bij elke enter van de barcodescanner vloept er dan een string aan characters uit.

Lijkt mij het makkelijkst.

werken met scanlengte zal niet lukken omdat beide codes moeten gelezen worden.

benleentje

Golden Member

IK zou toch eens die handleiding eens helemaal goed doorlezen want als het eerst wel goed werkte dan is er toch een instelling verandert.

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

nee nee, de barcode is van een gewone naar een datamatrix veranderd. Ik zou het eerste deel van de datamatrix code gelijk gehouden hebben aan het oude formaat, maar dat is niet weerhouden er staat een versie nummer 1; voor de eigenlijke inhoud. En die zou ik moeten skippen.
De eId kaarten worden trouwens op veel plaatsen ingelezen, het is geen kwestie van één toepassing aanpassen.

benleentje

Golden Member

Wie heeft de data matrix gemaakt en kan niet daar gewoon de fout zitten dat ze verkeerd gemaakt zijn. En heb je ook al een andere scanner geprobeerd liefst dan van een ander merk om eea te vergelijken.
En als de scanner met het oude formaat wel goed werkte wil nog niet zeggen dat het met het nieuwe formaat ook zo is het kan nog steeds Zijn dat er een setting verandert moet worden.

Dus lees vooral niet de handleiding door.

Als test voor diverse barcodes kan je vanaf internet veel codes vinden in de vorm van een plaatje en ook zijn er genoeg barcode generatoren te vinden

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

oud formaat: 60072042590778800000
nieuw formaat: 1;60072042590;595000040030;20290709;20010705

Niets mis met de barcode, de inhoud is gewoon veranderd. Dat 60072042590 nummer moet ik hebben. In het eerst geval werd het gewoon afgekapt, nu moet die prefix 1; weg

benleentje

Golden Member

Ik probeer je te helpen maar je geeft geen of te weinig informatie terug. Post eens het plaatje van beide barcode's dan scan ik deze ook even en kan ik zien wat ik inlees. En heb je de manual nu al helemaal doorgelezen?

[Bericht gewijzigd door benleentje op woensdag 29 januari 2020 19:02:11 (56%)

Mensen zijn soms net als een gelijkrichter, ze willen graag hun gelijk hebben.

beste, er is geen probleem met de barcodes, er worden jaarlijks miljoenen kaarten geproduceerd, enkel de inhoud verschilt. Ik kan in de barcode reader eventueel de 1; skippen door 2 reads te doen (volgens handleiding), maar dan mis ik de 2 eerste cijfers bij een oude eId kaart (en sommige blijven 30 jaar geldig...).
Software zou mogelijk moeten zijn, maar concrete voorbeelden vind ik niet.
Ik zoek het nu naar µC met 2 usb poorten om eventueel een interface te bouwen. Toch bedankt voor het meedenken.

@benleentje: eID is (een onderdeel van) de Belgische Identiteitskaart. Vroeger stond er een conventionele barcode op, op de meest recente versie is dat dus een DataMatrix code. Blijkbaar was voor de overheid alleen het BSN en documentnummer niet voldoende en moest daar geldigheidsdatum en geboortedatum nog bij. Als je dat in een standaard barcode wilt opslaan, dan is de ID-kaart te kort. ;)

Fan van Samsung (en repareer ook TV's). :)

bij de meeste barcode scanners kan je dit wel oplossen hoor,
kijk bij de parameters voor advanced formating, daar kan je voor elk codetype vastleggen hoe de data moet worden doorgestuurd, je kan voor datalogic scanners eventueel hun aladdin software gebruiken voor het instellen.
https://www.datalogic.com/eng/retail-healthcare-other-solutions/hand-h…

Mijn ervaring is dat de datalogic support echt wel goed is, dus misschien moet je met hen eens contact opnemen.

https://www.datalogic.com/eng/contact-us/technical-support-cts-8.html?…

rudig76

Golden Member

2 arduino leonardos aan elkaar koppelen en juiste interfacing schrijven is dat een optie?

Iets heel anders :-) http://www.echteworst.nl

Ik denk dat je met Excel en CSV een heel eind kunt komen. Aangezien er een scheidingsteken tussen staat, namelijk de ;. Je kunt dan in Excel kijken in kolom A of er een 1 staat (nieuwe eID), zo ja, dan nummer uit kolom B pakken, als kolom A een groter getal is dan is het een oud nummer.

die barcode wordt bijvoorbeeld in de bibliotheek gebruikt door de ontlener. Hij identificeert zichzelf met zijn eID (identiteitskaart) kaart aan de ontleen kiosk en scant daarna de teruggave en/of ontleen boeken in. Geen kwestie dus van effen naar een andere soft gaan.

Ik begrijp dat de TS een oplossing zoekt dat de barcode scanner in alle bestaande software die van de oude barcode gebruikt maakt, gewoon ook hetzelfde uitstuurt als de nieuwe data matrix wordt gescand.

Naar mijn idee zou dat kunnen met 1. een service in c# bijvoorbeeld die dit afvangt en weer een virtuele HID aanmaakt, echter denk ik dat het best lastig is om dat te omzeilen, want hoe voorkom je dat de string die de barc ode scanner stuurt in alle andere applicaties terecht komt.
(misschien toch geen optie)

2. Idd een micro met usb host pakken en een usb hid. Al zijn die zeer schaars denk ik (met 2 usb peripherals), daarnaast is usb host op een micro leuk, maar dat garandeerd niet dat je daar zomaar even elk device op aan kan sluiten (wellicht is een HID device) nog wle te doen.

3. De barcode scanner zo configureren dat hij het goede uitstuurt.

Afhankelijk van het doel van de TS, zou ik voor optie 3 gaan. Dat zou slechts een kwestie van configureren zijn en dan heb je verder geen extra tools of ontwikkeling nodig.

buckfast_beekeeper

Golden Member

Op 30 januari 2020 17:51:02 schreef kombucha:
die barcode wordt bijvoorbeeld in de bibliotheek gebruikt door de ontlener. Hij identificeert zichzelf met zijn eID (identiteitskaart) kaart aan de ontleen kiosk en scant daarna de teruggave en/of ontleen boeken in. Geen kwestie dus van effen naar een andere soft gaan.

Dan moet de maker van de software een patch voorzien. Jullie zijn toch niet de enige die tegen dit probleem aanlopen.

Bijvoorbeeld Colruyt scant met hetzelfde toestel de conventionele barcode op hun producten net als QR code op hun klantenkaart.

@stijnos: komt er een nieuwe ID een nieuw kastje of een software update? Moet je dat ook weer voorzien. Een goede software leverancier moet deze patch eigenlijk al hebben.

[Bericht gewijzigd door buckfast_beekeeper op vrijdag 31 januari 2020 12:47:54 (12%)

Van Lambiek wordt goede geuze gemaakt.

Op 31 januari 2020 11:25:00 schreef buckfast_beekeeper:
[...]

Dan moet de maker van de software een patch voorzien. Jullie zijn toch niet de enige die tegen dit probleem aanlopen.

Bijvoorbeeld Colruyt scant met hetzelfde toestel de conventionele barcode op hun producten net als QR code op hun klantenkaart.

Misschien wil TS een oplossing vermarkten, zodat niet elke software pakket aangepast moet worden?

nee hoor, ik werk gewoon voor binnenlandse zaken. Bij een rondvraag in 65 gemeentes gebruikte niemand de barcode. Na het omschakelen van amper 4 gemeentes heb ik al 3 klachten dat het scannen niet meer werkt...
Het zou gewoon een leuke oplossing zijn moest ik een conversie "bakje" kunnen maken. De eID van bejaarde mensen zijn 30 jaar geldig, dit probleem kan dus nog jaren opduiken.
USB µcontrollers zijn inderdaad niet dik gezaaid, nog even verder zoeken..
Simpelste oplossing: datamatrix gewoon beginnen met de 11 rijksregister nummers en dan de ;1 Maar dat vraagt een aanpassing

als je een seriële barcode scanner zou hebben is het met een micro veel makkelijker op te lossen

idd, ik heb ook de indruk dat de TS een nieuwe decoder wilt uitvinden zoiets als de oude datalogic Master B/BB/B+/BB+, dat moet mogelijk zijn, denk aan een arduino met een usb host shield.

Echter zoals eerder aangegeven hebben zit alles wat je nodig hebt reeds in zowat elke barcodescanner met een degelijke decoder.
Dus zowat elke scanner van zebra(symbol), honeywell(metrologic), datalogic,.. die nieuwer is dan pakweg 1992 (en dus zowat elke 2D scanner) onder de advanced data formatting opties, welke je in de in de volledige of geavanceerde handleiding kunt vinden.

Ps, je gaat ervan uit dat iedereen keyboard wedge/emulation gebruikt, wat zeker niet zo is, je hebt ook nog rs232 over usb, ibm oem en een hele rits andere of iemand die codeid’s wil, je kastje is helemaal niet zo eenvoudig als het lijkt.

[Bericht gewijzigd door Pmaeseele2 op vrijdag 31 januari 2020 13:25:04 (18%)

maartenbakker

Golden Member

Barcodescanners werken meestal met keyboardemulatie, althans in mijn ervaring.

En alsnog is een nieuwe scanner + kastje goedkoper en makkelijker dan de kaart of software aan te laten passen.

www.elba-elektro.nl | "The mind is a funny thing. Sometimes it needs a good whack on the side of the head to jar things loose."