david4599 / PricehaxBT

Wireless tool to communicate with IR based ESLs from a smartphone ;-)
GNU General Public License v3.0
58 stars 7 forks source link

Update to MainActivity.java adding new hardware type id #2

Closed themillerdave closed 2 years ago

themillerdave commented 2 years ago

New hardware type ID 1370, 2021 model - SmartTag HD L 296x128 in a black housing. Verified on v19 of the Android app through some trickery: Without rebuilding the app, these tags work by manually replacing 1370 with 1328 in the manually entered barcode field.

Happy to send you one if you want to try it out yourself :).

Once I get my dev environment set up (ran into a ton of issues, as it has been at least a decade since I've compiled any java code, let alone an Android app), I am considering adding a manual tag settings override option for "incompatible" tag type IDs, to allow the user to specify the height, width, and color params.

david4599 commented 2 years ago

Hello,

I saw this new ESL type recently and I guessed it would work since this is the same model as the white version. I didn't buy a pack of them because this would be useless to buy and test the hundreds of types they make. The main goal of communicating with the commonly used labels was done. The incompatible types are mainly revisions not related to the display like custom designs for specific store brands or countries and surely firmware and PCB changes but they are not very widespread.

So, no need to send me one but thanks for offering.

At the same time, I know the black version of the HD150 exists and I saw its type number last time I checked so I just added it. I've also quickly implemented the checksum verification of the barcode. A part of it is used as an ID to send an image which means the targeted ESL will decline the data if we mistype it.

I already considered the override option for width and height 3 years ago but I don't think it would make sense since there isn't many size combinations for graphic ESLs, they are already all defined in the app to my knowledge. Same for the colors, there are only 3 types I know of: black/white, black/white/red and black/white/yellow (never saw and tested yellow ones IRL though, they are really rare and I am not sure if the protocol to set yellow pixels is the same as red ones but no big deal).

themillerdave commented 2 years ago

Many thanks for the comments - can’t say I disagree with any of your logic (interesting bit on the checksum - I figured it was the last digit, ‘cause what else would they use it for?). Thanks for keeping this stuff alive!