Welcome to the v8.2.0 release of the Opentrons App!
> This release adds support for the Opentrons Absorbance Plate Reader Module, as well as other features.
New Features
- Run protocols that use the Absorbance Plate Reader and check the status of the module on the robot details screen for your Flex.
- Run protocols that use the new Opentrons Tough PCR Auto-Sealing Lid with the Thermocycler Module GEN2. Stacks of these lids appear in a consolidated view when setting up labware.
Improved Features
- Error recovery now works in more situations and has more options.
- Recover from gripper errors.
- Recover from failure to drop tips.
- Indicate that an error was improperly detected and skip similar errors later in the run.
- Choose from more options of where to drop tips as part of recovery.
- Disable error recovery entirely, if your application requires it. Runs will fail on any error.
Bug Fixes
- Fixed an app crash when performing certain error recovery steps with Python API version 2.15 protocols.
Known Issues
- If you attach an Absorbance Plate Reader to _any_ Flex on your local network, you must update all copies of the Opentrons App on the same network to at least v8.1.0.
---
[8.2.0](https://github.com/Opentrons/opentrons/compare/v8.1.0...v8.2.0) (2024-12-04)
[8.2.0-alpha.4](https://github.com/Opentrons/opentrons/compare/v8.1.0...v8.2.0) (2024-11-22)
Bug Fixes
* **api-client, react-api-client, app, robot-server:** support multiple recovery policies during a run ([16950](https://github.com/Opentrons/opentrons/issues/16950)) ([7e6c8ee](https://github.com/Opentrons/opentrons/commit/7e6c8eead7b0e7c2e21ae95cca818e40fdbcc175))
* **api:** raise error during analysis plate reader read without lid closed ([16941](https://github.com/Opentrons/opentrons/issues/16941)) ([8b2196a](https://github.com/Opentrons/opentrons/commit/8b2196a5deee7c2de532c7f9693129fb48477e60))
* **api:** truncate plate reader floating point results to third decimal place ([16919](https://github.com/Opentrons/opentrons/issues/16919)) ([d1d9b87](https://github.com/Opentrons/opentrons/commit/d1d9b877d194bc000c980d1d00a4fa2f73942889))
* **api:** ungrip gripper should home g ([16933](https://github.com/Opentrons/opentrons/issues/16933)) ([f764319](https://github.com/Opentrons/opentrons/commit/f7643196b455a38d0a1320117112871bfc592be0))
* **app:** fix estimator update command failure copy during drop tip ([16884](https://github.com/Opentrons/opentrons/issues/16884)) ([888a0ab](https://github.com/Opentrons/opentrons/commit/888a0abd0241c67732b61d2409832cacdd4b79c2))
* **app:** fix infinitely hanging return to dashboard ([16923](https://github.com/Opentrons/opentrons/issues/16923)) ([b980fd2](https://github.com/Opentrons/opentrons/commit/b980fd213afac3925b8d050a74f47e87e2871b9b))
* **app:** fix intervention modal icon sizing ([16940](https://github.com/Opentrons/opentrons/issues/16940)) ([4f061f7](https://github.com/Opentrons/opentrons/commit/4f061f7b30e4ddd9e21e03d96f022e7d9d832c68))
* **app:** fix ODD liquids CSS ([16886](https://github.com/Opentrons/opentrons/issues/16886)) ([556329b](https://github.com/Opentrons/opentrons/commit/556329b0e1abed31f5c70075d77b2c84e05b5583))
* **app:** Fix post run drop tip wizard always displaying after error recovery ([16893](https://github.com/Opentrons/opentrons/issues/16893)) ([90389eb](https://github.com/Opentrons/opentrons/commit/90389ebc20710d832ecfec71d629c1ee55667d2a))
* **app:** home gripper G during recovery ([16928](https://github.com/Opentrons/opentrons/issues/16928)) ([d8ad367](https://github.com/Opentrons/opentrons/commit/d8ad367eccbf88dbb5ed9dc49e3336e30ee53cb0))
* **app:** Plate reader DQA ([16946](https://github.com/Opentrons/opentrons/issues/16946)) ([6ae2f38](https://github.com/Opentrons/opentrons/commit/6ae2f381a77c57ed4195ebe5b43cb0a3b96aa9f3))
* **app:** update air gap aspirate copy, high res mag block image ([16890](https://github.com/Opentrons/opentrons/issues/16890)) ([2938900](https://github.com/Opentrons/opentrons/commit/29389000a81159bcea84ba2efb79b1fa7b87352d))
* **components:** fix unit text wrap-issue ([16943](https://github.com/Opentrons/opentrons/issues/16943)) ([eff74bc](https://github.com/Opentrons/opentrons/commit/eff74bc9ca1bd75778caa91fdb84681ceb5e8142))
* **shared-data:** Add biorad pcr plate compatibility with tough_pcr_lid_auto_seal_lid to release ([16903](https://github.com/Opentrons/opentrons/issues/16903)) ([bb0cf23](https://github.com/Opentrons/opentrons/commit/bb0cf23186e33c4d75f006764aec635614ad6885))
* **shared-data:** Fix migrating mutable pipette configs ([16962](https://github.com/Opentrons/opentrons/issues/16962)) ([453cd47](https://github.com/Opentrons/opentrons/commit/453cd4776074263bb990f28afdb194e9928bdbf4))
[8.2.0-alpha.3](https://github.com/Opentrons/opentrons/compare/v8.1.0...v8.2.0) (2024-11-19)
Bug Fixes
* **api:** add 10s delay after updating the plate reader to give time to boot-up. ([16882](https://github.com/Opentrons/opentrons/issues/16882)) ([abaade6](https://github.com/Opentrons/opentrons/commit/abaade69ce834e36c8646265053bc5bc4e296f19))
* **api:** add stopped state so a stop request doesn't mean the gripper needs to re-home ([16853](https://github.com/Opentrons/opentrons/issues/16853)) ([c90aaea](https://github.com/Opentrons/opentrons/commit/c90aaea51c22d19346f69de87fb54222cdcba40e))
* **api:** update error message to title case ([16851](https://github.com/Opentrons/opentrons/issues/16851)) ([c94a64c](https://github.com/Opentrons/opentrons/commit/c94a64c8e8e15d83955db513b4e4f49a88b32bb2))
* **api:** update the plate reader parsing of the serial + version to account for the new format. ([16824](https://github.com/Opentrons/opentrons/issues/16824)) ([d49f990](https://github.com/Opentrons/opentrons/commit/d49f9908c8e65b6e2088bd7eebc94e4ff9f00338))
* **app, robot-server:** support `retryLocation` when retrying `dropTipInPlace` during Error Recovery ([16839](https://github.com/Opentrons/opentrons/issues/16839)) ([df80263](https://github.com/Opentrons/opentrons/commit/df802636a513f3e733058b4054aeb038ffba1a9c))
* **app,robot-server:** Account for failed commands not having a pipetteId ([16859](https://github.com/Opentrons/opentrons/issues/16859)) ([29e03ae](https://github.com/Opentrons/opentrons/commit/29e03aea6c5af18f48d77614f06549e62cf57325))
* **app:** Error Recovery 8.2 DQA ([16880](https://github.com/Opentrons/opentrons/issues/16880)) ([0f11594](https://github.com/Opentrons/opentrons/commit/0f115947f1b663b2e57ea1987064ffa423a2b3df))
* **app:** Fix `failedCommand` caching issues ([16874](https://github.com/Opentrons/opentrons/issues/16874)) ([c0f95de](https://github.com/Opentrons/opentrons/commit/c0f95deec1266b215c73e1bddbbc5470d68d86f9))
* **app:** fix post run tip detection after error recovery ([16860](https://github.com/Opentrons/opentrons/issues/16860)) ([6d5b3a2](https://github.com/Opentrons/opentrons/commit/6d5b3a23220419317d68f01b15405371ce8953cb))
* **app:** fix timestamp used for protocol completion ([16855](https://github.com/Opentrons/opentrons/issues/16855)) ([57ea4ae](https://github.com/Opentrons/opentrons/commit/57ea4aecf4eaacc603c6f2b76f0e43a902e36674))
* **shared-data:** deck riser and auto sealing lid labware definition updates ([16852](https://github.com/Opentrons/opentrons/issues/16852)) ([62b1e9d](https://github.com/Opentrons/opentrons/commit/62b1e9ddf66bdf078c2968c54bbf2355c458a777))
Features
* **app, opentrons-ai, labware-library:** update deck riser image ([16875](https://github.com/Opentrons/opentrons/issues/16875)) ([31a819d](https://github.com/Opentrons/opentrons/commit/31a819d1691ba9c72f02c0666bee5cd7cc25a842))
[8.2.0-alpha.2](https://github.com/Opentrons/opentrons/compare/v8.1.0...v8.2.0) (2024-11-14)
Bug Fixes
* **api:** add supported wavelengths to runtime error when initializing the plate reader. ([16797](https://github.com/Opentrons/opentrons/issues/16797)) ([0ae0414](https://github.com/Opentrons/opentrons/commit/0ae04149e87b115bcc524a2ee77c93fcc710576a))
* **api:** Skip updating position estimators for axes that are not present ([16804](https://github.com/Opentrons/opentrons/issues/16804)) ([91b40ae](https://github.com/Opentrons/opentrons/commit/91b40aec8288a835be7b181752b5e6e86f3a5152))
* **api:** use encoder position instead of homing gantry when placing plate reader lid. ([16781](https://github.com/Opentrons/opentrons/issues/16781)) ([9e951da](https://github.com/Opentrons/opentrons/commit/9e951dad2890acd0238b4fec9ae0bed6cb0ac078))
* **app, shared-data, components:** add calibration not req text for plate reader, remove lid filtration ([16776](https://github.com/Opentrons/opentrons/issues/16776)) ([653fb49](https://github.com/Opentrons/opentrons/commit/653fb4931ec4bedc445cc043687a0aa4e594de0f))
* **app:** add affordances for tip detection failures ([16828](https://github.com/Opentrons/opentrons/issues/16828)) ([972c592](https://github.com/Opentrons/opentrons/commit/972c5924034ade27037973a343447afe4479e693))
* **app:** add error handling for failed maintenance run creation ([16818](https://github.com/Opentrons/opentrons/issues/16818)) ([a0fe00f](https://github.com/Opentrons/opentrons/commit/a0fe00fba2e7394260eecf6c31de88b73fadbabb))
* **app:** Bubble pipette command errors during drop tip wizard ([16793](https://github.com/Opentrons/opentrons/issues/16793)) ([21bf747](https://github.com/Opentrons/opentrons/commit/21bf7474e4486867d64c165294a3537bba355a0e))
* **app:** enable about plate reader button when run is in progress ([16803](https://github.com/Opentrons/opentrons/issues/16803)) ([20c98e6](https://github.com/Opentrons/opentrons/commit/20c98e6aca500133c1bf2eccd1c098a9dff6e1b4))
* **app:** Fix run setup buttons ([16796](https://github.com/Opentrons/opentrons/issues/16796)) ([f2adaab](https://github.com/Opentrons/opentrons/commit/f2adaab5b25013dd0d0bf17d18ea0cc0acc6216a))
* **app:** support special cased slot name copy ([16823](https://github.com/Opentrons/opentrons/issues/16823)) ([59814e6](https://github.com/Opentrons/opentrons/commit/59814e62614518dfe0125542bea98e5e8487c1b5))
* **robot-server:** update data_files_table with uploaded source ([16813](https://github.com/Opentrons/opentrons/issues/16813)) ([6d62bec](https://github.com/Opentrons/opentrons/commit/6d62beca4845f2f0c439d241823fb80f83ba52cb))
[8.2.0-alpha.1](https://github.com/Opentrons/opentrons/compare/v8.1.0...v8.2.0) (2024-11-12)
Bug Fixes
* **api, shared-data:** Allow labware lids to be disposed in the trash bin ([16638](https://github.com/Opentrons/opentrons/issues/16638)) ([ec7641c](https://github.com/Opentrons/opentrons/commit/ec7641c500c1c31a71bd992155d69bf62c8d3d87))
* **api:** Do not load the absorbance reader lid with `loadLabware` ([16734](https://github.com/Opentrons/opentrons/issues/16734)) ([60dca54](https://github.com/Opentrons/opentrons/commit/60dca5409a9313d952557f8e995828581d1a844d))
* **api:** Ensure stack of labware on Staging Area Slot properly resolves ancestor slot ([16681](https://github.com/Opentrons/opentrons/issues/16681))
...and more! Log link: https://github.com/Opentrons/opentrons/compare/v8.1.0...v8.2.0
ot32.3.0-alpha.0
[2.3.0-alpha.0](https://github.com/Opentrons/opentrons/compare/ot32.2.0-alpha.1...ot32.3.0-alpha.0) (2024-11-25)
Bug Fixes
* **abr-testing:** added error handling for run log parsing ([16867](https://github.com/Opentrons/opentrons/issues/16867)) ([1e6df83](https://github.com/Opentrons/opentrons/commit/1e6df83647e2e36043c0cb2e63a4238d4bd78bcd))
* **abr-testing:** Resolves missing coordinate data issue during upload. ([16641](https://github.com/Opentrons/opentrons/issues/16641)) ([d270ccd](https://github.com/Opentrons/opentrons/commit/d270ccd2491d01f2d79db3a32201fd58f67cdbaf))
* **abr-testing:** unify all script compatibility with same ip file ([16922](https://github.com/Opentrons/opentrons/issues/16922)) ([da74897](https://github.com/Opentrons/opentrons/commit/da74897b48452a237387040b8d43ab1b8ab80224))
* **abr-testing:** Update simulate ([16929](https://github.com/Opentrons/opentrons/issues/16929)) ([f37ef0a](https://github.com/Opentrons/opentrons/commit/f37ef0ab64fed89484c19320c34b1b6ef2639fa3))
* **analyses-snapshot-testing:** heal edge snapshots ([16526](https://github.com/Opentrons/opentrons/issues/16526)) ([9a634ea](https://github.com/Opentrons/opentrons/commit/9a634ead1bb51c23ec00b5bb4d4da538aece14e5)), closes [#16525](https://github.com/Opentrons/opentrons/issues/16525)
* **analyses-snapshot-testing:** heal edge snapshots ([16527](https://github.com/Opentrons/opentrons/issues/16527)) ([b40f721](https://github.com/Opentrons/opentrons/commit/b40f72153afc1628e11ba5eff3ef9f29e823cd96))
* **api, shared-data:** Allow labware lids to be disposed in the trash bin ([16638](https://github.com/Opentrons/opentrons/issues/16638)) ([ec7641c](https://github.com/Opentrons/opentrons/commit/ec7641c500c1c31a71bd992155d69bf62c8d3d87))
* **api:** add details to confusing error message ([16517](https://github.com/Opentrons/opentrons/issues/16517)) ([835204a](https://github.com/Opentrons/opentrons/commit/835204a5c956524a5a73d383e7cf2c10674c2dff))
* **api:** add stopped state so a stop request doesn't mean the gripper needs to re-home ([16853](https://github.com/Opentrons/opentrons/issues/16853)) ([c90aaea](https://github.com/Opentrons/opentrons/commit/c90aaea51c22d19346f69de87fb54222cdcba40e))
* **api:** add supported wavelengths to runtime error when initializing the plate reader. ([16797](https://github.com/Opentrons/opentrons/issues/16797)) ([0ae0414](https://github.com/Opentrons/opentrons/commit/0ae04149e87b115bcc524a2ee77c93fcc710576a))
* **api:** allow labware def schema v3 ([16647](https://github.com/Opentrons/opentrons/issues/16647)) ([3d45ddc](https://github.com/Opentrons/opentrons/commit/3d45ddc10c3dd461283dde40b34936a26e8aedd9))
* **api:** Do not load the absorbance reader lid with `loadLabware` ([16734](https://github.com/Opentrons/opentrons/issues/16734)) ([60dca54](https://github.com/Opentrons/opentrons/commit/60dca5409a9313d952557f8e995828581d1a844d))
* **api:** don't use sensor log on ot2 or simulators ([16590](https://github.com/Opentrons/opentrons/issues/16590)) ([9d57048](https://github.com/Opentrons/opentrons/commit/9d57048fda674858b9684ec3501cb7a7a796d03c))
* **api:** Ensure stack of labware on Staging Area Slot properly resolves ancestor slot ([16681](https://github.com/Opentrons/opentrons/issues/16681)) ([7669fc2](https://github.com/Opentrons/opentrons/commit/7669fc20001fe0ffd580db7574bf86968821ca7b))
* **api:** ER support for in place commands and blow out ([16510](https://github.com/Opentrons/opentrons/issues/16510)) ([61c2775](https://github.com/Opentrons/opentrons/commit/61c277573c238d951119a7a248a76a8a17e869e0))
* **api:** Fix certain failed runs showing a stale recovery target ([16630](https://github.com/Opentrons/opentrons/issues/16630)) ([b27a22c](https://github.com/Opentrons/opentrons/commit/b27a22c502078e38f20720ef19831ab188cc5719))
* **api:** Fix path planning after failed tip drop ([16513](https://github.com/Opentrons/opentrons/issues/16513)) ([51ead23](https://github.com/Opentrons/opentrons/commit/51ead23b8b05a1b7113bbd92def4422ca1e80e7e))
* **api:** Fix Yocto check preventing OT-2s from booting ([16637](https://github.com/Opentrons/opentrons/issues/16637)) ([d140271](https://github.com/Opentrons/opentrons/commit/d140271f4e318e3f2470a4d8c446156825bc9492))
* **api:** Fix Yocto check preventing OT-2s from booting ([16639](https://github.com/Opentrons/opentrons/issues/16639)) ([56329cc](https://github.com/Opentrons/opentrons/commit/56329ccd5f9276d3059b994eb3ad10a84cc81e15))
* **api:** home all gripper axis when a stall is detected ([16579](https://github.com/Opentrons/opentrons/issues/16579)) ([565865d](https://github.com/Opentrons/opentrons/commit/565865def36986071591a05c2f47b1f084fcadb7))
* **api:** prevent moving a labware onto itself ([16600](https://github.com/Opentrons/opentrons/issues/16600)) ([df01e77](https://github.com/Opentrons/opentrons/commit/df01e7722af56dbb6c1b2d1bf8a4f3edc82399ef))
* **api:** refactor protocol api integration tests to prevent thread leakage ([16834](https://github.com/Opentrons/opentrons/issues/16834)) ([feeb999](https://github.com/Opentrons/opentrons/commit/feeb999f68dd9dd50cf786d16b4ae056be8870b3))
* **api:** rename TouchTipParams -> LiquidClassTouchTipParams to avoid name conflict ([16848](https://github.com/Opentrons/opentrons/issues/16848)) ([112ea83](https://github.com/Opentrons/opentrons/commit/112ea831efe62f984a7b67ed1ba2793b0885f503))
* **api:** restrict the labware that can be moved to the plate reader + validate wavelengths. ([16649](https://github.com/Opentrons/opentrons/issues/16649)) ([01c06d5](https://github.com/Opentrons/opentrons/commit/01c06d5bf6b9dc87a2b530d5725d64fa042a4944))
* **api:** Skip updating position estimators for axes that are not present ([16804](https://github.com/Opentrons/opentrons/issues/16804)) ([91b40ae](https://github.com/Opentrons/opentrons/commit/91b40aec8288a835be7b181752b5e6e86f3a5152))
* **api:** update error message to title case ([16851](https://github.com/Opentrons/opentrons/issues/16851)) ([c94a64c](https://github.com/Opentrons/opentrons/commit/c94a64c8e8e15d83955db513b4e4f49a88b32bb2))
* **api:** update motor position before homing ([16887](https://github.com/Opentrons/opentrons/issues/16887)) ([0dacfb3](https://github.com/Opentrons/opentrons/commit/0dacfb327a529ce1a7a320a860b8baf66668f36a))
* **api:** Update Plate Reader CSV output to match OEM file output ([16751](https://github.com/Opentrons/opentrons/issues/16751)) ([7bc46d3](https://github.com/Opentrons/opentrons/commit/7bc46d384578104baece757e8eb77c22a638cf82))
* **api:** update the plate reader parsing of the serial + version to account for the new format. ([16824](https://github.com/Opentrons/opentrons/issues/16824)) ([d49f990](https://github.com/Opentrons/opentrons/commit/d49f9908c8e65b6e2088bd7eebc94e4ff9f00338))
* **api:** update the plate reader serial number parser to include BYO and OPT delims. ([16650](https://github.com/Opentrons/opentrons/issues/16650)) ([4945928](https://github.com/Opentrons/opentrons/commit/4945928df4358c9a8a3d12b844aef2bfe434e484))
* **api:** use encoder position instead of homing gantry when placing plate reader lid. ([16781](https://github.com/Opentrons/opentrons/issues/16781)) ([9e951da](https://github.com/Opentrons/opentrons/commit/9e951dad2890acd0238b4fec9ae0bed6cb0ac078))
* **api:** use the message only formatter for the sensor logs ([16577](https://github.com/Opentrons/opentrons/issues/16577)) ([9f28fab](https://github.com/Opentrons/opentrons/commit/9f28fab1ecc3e29bfec39c078511bc9d696af72c))
* **app-shell, app-shell-odd:** Fix devtools not working on built versions of desktop app/ODD ([16709](https://github.com/Opentrons/opentrons/issues/16709)) ([b1b4b30](https://github.com/Opentrons/opentrons/commit/b1b4b30fcd4c244291497e62d817c2084b15adba))
* **app-shell:** fix clearing robot update cache after robot cache update ([16706](https://github.com/Opentrons/opentrons/issues/16706)) ([0ad9ef8](https://github.com/Opentrons/opentrons/commit/0ad9ef83a4b175f78f5add776f91abdbc682c736))
* **app, components:** Fix TC lid rendering in `runRecord` deck maps ([16692](https://github.com/Opentrons/opentrons/issues/16692)) ([de01cf6](https://github.com/Opentrons/opentrons/commit/de01cf64124a7427f674344d4280420b9511910a))
* **app, protocol-designer:** align left_right mount text ([16715](https://github.com/Opentrons/opentrons/issues/16715)) ([7e59b53](https://github.com/Opentrons/opentrons/commit/7e59b5383003aaeb3dd74f870da64a272f888cb2))
* **app, robot-server:** support `retryLocation` when retrying `dropTipInPlace` during Error Recovery ([16839](https://github.com/Opentrons/opentrons/issues/16839)) ([df80263](https://github.com/Opentrons/opentrons/commit/df802636a513f3e733058b4054aeb038ffba1a9c))
* **app, shared-data, components:** add calibration not req text for plate reader, remove lid filtration ([16776](https://github.com/Opentrons/opentrons/issues/16776)) ([653fb49](https://github.com/Opentrons/opentrons/commit/653fb4931ec4bedc445cc043687a0aa4e594de0f))
* **app,robot-server:** Account for failed commands not having a pipetteId ([16859](https://github.com/Opentrons/opentrons/issues/16859)) ([29e03ae](https://github.com/Opentrons/opentrons/commit/29e03aea6c5af18f48d77614f06549e62cf57325))
* **app:** add affordances for tip detection failures ([16828](https://github.com/Opentrons/opentrons/issues/16828)) ([972c592](https://github.com/Opentrons/opentrons/commit/972c5924034ade27037973a343447afe4479e693))
* **app:** add an exit button for failed moveToAddressable area commands during Error Recovery ([16729](https://github.com/Opentrons/opentrons/issues/16729)) ([d4c0f85](https://github.com/Opentrons/opentrons/commit/d4c0f85a4d23e6be8e73a9ec26b67c046b37a009))
* **app:** add error handling for failed maintenance run creation ([16818](https://github.com/Opentrons/opentrons/issues/
...and more! Log link: https://github.com/Opentrons/opentrons/compare/ot32.2.0-alpha.1...ot32.3.0-alpha.0