upload
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

bluetooth.h 2.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /*
  2. Bluefruit Protocol for TMK firmware
  3. Author: Benjamin Gould, 2013
  4. Jack Humbert, 2015
  5. Based on code Copyright 2011 Jun Wako <[email protected]>
  6. This program is free software: you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation, either version 2 of the License, or
  9. (at your option) any later version.
  10. This program is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. GNU General Public License for more details.
  14. You should have received a copy of the GNU General Public License
  15. along with this program. If not, see <http://www.gnu.org/licenses/>.
  16. */
  17. #ifndef BLUETOOTH_H
  18. #define BLUETOOTH_H
  19. void bluefruit_serial_send(uint8_t data);
  20. /*
  21. +-----------------+-------------------+-------+
  22. | Consumer Key | Bit Map | Hex |
  23. +-----------------+-------------------+-------+
  24. | Home | 00000001 00000000 | 01 00 |
  25. | KeyboardLayout | 00000010 00000000 | 02 00 |
  26. | Search | 00000100 00000000 | 04 00 |
  27. | Snapshot | 00001000 00000000 | 08 00 |
  28. | VolumeUp | 00010000 00000000 | 10 00 |
  29. | VolumeDown | 00100000 00000000 | 20 00 |
  30. | Play/Pause | 01000000 00000000 | 40 00 |
  31. | Fast Forward | 10000000 00000000 | 80 00 |
  32. | Rewind | 00000000 00000001 | 00 01 |
  33. | Scan Next Track | 00000000 00000010 | 00 02 |
  34. | Scan Prev Track | 00000000 00000100 | 00 04 |
  35. | Random Play | 00000000 00001000 | 00 08 |
  36. | Stop | 00000000 00010000 | 00 10 |
  37. +-------------------------------------+-------+
  38. */
  39. #define CONSUMER2BLUEFRUIT(usage) \
  40. (usage == AUDIO_MUTE ? 0x0000 : \
  41. (usage == AUDIO_VOL_UP ? 0x1000 : \
  42. (usage == AUDIO_VOL_DOWN ? 0x2000 : \
  43. (usage == TRANSPORT_NEXT_TRACK ? 0x0002 : \
  44. (usage == TRANSPORT_PREV_TRACK ? 0x0004 : \
  45. (usage == TRANSPORT_STOP ? 0x0010 : \
  46. (usage == TRANSPORT_STOP_EJECT ? 0x0000 : \
  47. (usage == TRANSPORT_PLAY_PAUSE ? 0x4000 : \
  48. (usage == AL_CC_CONFIG ? 0x0000 : \
  49. (usage == AL_EMAIL ? 0x0000 : \
  50. (usage == AL_CALCULATOR ? 0x0000 : \
  51. (usage == AL_LOCAL_BROWSER ? 0x0000 : \
  52. (usage == AC_SEARCH ? 0x0400 : \
  53. (usage == AC_HOME ? 0x0100 : \
  54. (usage == AC_BACK ? 0x0000 : \
  55. (usage == AC_FORWARD ? 0x0000 : \
  56. (usage == AC_STOP ? 0x0000 : \
  57. (usage == AC_REFRESH ? 0x0000 : \
  58. (usage == AC_BOOKMARKS ? 0x0000 : 0)))))))))))))))))))
  59. #endif