TransmitterVersionRxMessage.swift 592 B

123456789101112131415161718192021222324252627282930
  1. //
  2. // TransmitterVersionRxMessage.swift
  3. // xDripG5
  4. //
  5. // Created by Nate Racklyeft on 9/29/16.
  6. // Copyright © 2016 Nathan Racklyeft. All rights reserved.
  7. //
  8. import Foundation
  9. struct TransmitterVersionRxMessage: TransmitterRxMessage {
  10. let status: UInt8
  11. let firmwareVersion: [UInt8]
  12. init?(data: Data) {
  13. guard data.count == 19 && data.isCRCValid else {
  14. return nil
  15. }
  16. guard data.starts(with: .transmitterVersionRx) else {
  17. return nil
  18. }
  19. status = data[1]
  20. firmwareVersion = data[2..<6].map { $0 }
  21. }
  22. }