nfc_playlist_led.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #include "nfc_playlist_led.h"
  2. NotificationMessage blink_message_normal = {
  3. .type = NotificationMessageTypeLedBlinkStart,
  4. .data.led_blink.color = LightBlue | LightGreen,
  5. .data.led_blink.on_time = 10,
  6. .data.led_blink.period = 100
  7. };
  8. const NotificationSequence blink_sequence_normal = {
  9. &blink_message_normal,
  10. &message_do_not_reset,
  11. NULL
  12. };
  13. NotificationMessage blink_message_error = {
  14. .type = NotificationMessageTypeLedBlinkStart,
  15. .data.led_blink.color = LightRed,
  16. .data.led_blink.on_time = 10,
  17. .data.led_blink.period = 100
  18. };
  19. const NotificationSequence blink_sequence_error = {
  20. &blink_message_error,
  21. &message_do_not_reset,
  22. NULL
  23. };
  24. void start_blink(NfcPlaylist* nfc_playlist, int state) {
  25. if (nfc_playlist->settings.emulate_led_indicator) {
  26. if (state == NfcPlaylistLedState_Normal) {
  27. notification_message_block(nfc_playlist->notification, &blink_sequence_normal);
  28. } else if (state == NfcPlaylistLedState_Error) {
  29. notification_message_block(nfc_playlist->notification, &blink_sequence_error);
  30. }
  31. }
  32. }
  33. void stop_blink(NfcPlaylist* nfc_playlist) {
  34. if (nfc_playlist->settings.emulate_led_indicator) {
  35. notification_message_block(nfc_playlist->notification, &sequence_blink_stop);
  36. }
  37. }