Here is what you'll need:

    1. an Apple iPhone/iPad

    2. a (free or paid) account with Pushbullet

    4. an ESP32 DevKit board which you can get  in North America from Amazon or from China from AliExpress (30 pin with soldered header pins recommended)

    5. a set of Max7219 display modules (I used 2 x 8-in-1 modules) from AliExpress in my final build (less soldering)

    5. this open source Arduino code sketch

             which uses other libraries (with due credit given in the comments of the code itself)

    6. a momentary switch 

    7.  a 10K resistor

    8.  an enclosure of some sort - more information below

    9. a red acrylic cover to go with the enclosure (which is hard to find, but I got one locally from a plastic's shop) more info below


Here is how you set it up (this is at the 100 foot level, I'm not going to go into great detail - you're smart and can figure it out):

 1.   Sign on to your iPhone/iPhone

 2.  Open the Apple Shortcuts application; one way to do this is to say "Hey Siri, open shortcuts"

 3.  A screen should appear, tap on the "+" beside the 'Select' at the top of the screen

 4. While perhaps not obvious, the screen will be waiting for you to enter a name for your shortcut, enter "Leave a message" (without the quotes) for the name of the shortcut
 5. In search box, search for and add "Dictate Text"
 6. In  the search box search for and add "Get contents of"

 7. For the url of the Get contents of, use:

       Under Headers add:

       Access-Token           your Pushbullet Access Token from - Settings - Access Tokens

       Under Request Body add:

       type                            note
       title                             Leave a message
       body                          Dictated text


     A.  Dictated text is a 'Magic Variable' in the Apple Shortcuts app - do not type Dictated text, rather select it in the Apple shortcuts app.

     B.  the words type, note, title and body should not be capitalized

8 . Tap on 'Done'

9. (optional)  Press and hold on the shortcut, a window should open, press "Details", and then press the option 'Add to Home Screen"

10.   Update the Arduino code to include your PushBullet Access Token (found on your Pushbullet Settings window), 

       and your WiFi credentials

11.  Update the ESP32 board with the updated Arduino code

12.  Assemble the case and plug in the ESP32

To make it work:

 Give it a try by saying "Hey Siri Leave a message" 

pause speaking until you hear Siri say "What's the text"

say (for example) "Hello world", or anything else you may like.


Here are some things which I learned along the way:

i) the enclosure listed above did not have a way to get the power cable in the back, so I remixed it to add one and to use a project box power coupler solution (also listed above) - but you could drill a hole too - ultimately I designed my own enclosure - files available on github (below)

ii) when first powered up for some reason all the Max7219 modules didn't light up, but if I just unplugged it and plugged...

Read more »