What software does a diagnostic reader need?
A handheld reader is half of a product. The other half is software: an app for the person holding it, a reliable link between the phone and the reader, a way to get new firmware onto readers already in the field, a backend to hold the results and the accounts, and a portal to run it all. For Epona's Sidekick reader, Purpledecks built every one of those and keeps building them.
How does an app get firmware onto a device over Bluetooth?
The way the Sidekick apps do a firmware update, as Purpledecks built them: the app fetches the new image from the backend, sends it to the reader a row at a time, checks each row before sending the next, waits for the reader to reboot, reconnects, and reads back the version the reader reports before recording the update as done. The firmware itself is Epona's. The delivery is Purpledecks' work.
What happens to a result when the app has no signal?
Nothing bad, if the app was built for it. The Sidekick apps Purpledecks built store results and notes on the phone and send them when a connection returns. A result the server cannot take yet is retried. A result the server rejects is kept and marked as not synced, so the vet can see it and nothing is lost. No signal here means no internet on the phone. The Bluetooth link to the reader works either way.
Why native iOS and Android rather than cross-platform, for this product?
For Sidekick, because the hard part is native whatever the screens are built in. The Bluetooth link and the firmware delivery run at the native level on both platforms. It could have been done cross-platform with native modules for that piece. Purpledecks chose fully native for Sidekick, at the time, so the part that mattered most lived in one layer on each platform. That was a decision for this product, not a rule Purpledecks applies to every app.
How is an engagement like this shaped?
It started with discovery, before any code: Purpledecks worked through requirements, user stories, architecture, risks and estimates with Epona and put them in writing before proposing the build. Then the build. Then years of maintaining and extending it, and the next thing when it comes. Purpledecks does not publish prices. It publishes the shape: understand the business first, build what fits, and stay for what comes next.
Why show a list of nearby readers rather than connect to the first one?
Because where there is more than one reader, the first one found may not be yours. Purpledecks built both Sidekick apps to show a live list and let the vet choose. It costs a tap, and it stops the app pairing with someone else's reader.
Do you write the firmware for the device?
No. The firmware on Epona's reader is Epona's, and Purpledecks has never claimed it. Purpledecks builds the software that talks to it: the apps, the delivery of new firmware to the field, and the backend behind them. Where a device already has its firmware and someone who owns it, that is exactly the shape Purpledecks works in.