Wunderlist Task Printer

About

In this project we will be making a Wunderlist Task Printer. To accomplish this we will be creating a nice 3D printed case for the Adafruit Mini Thermal Printer and connecting it to the Particle Photon. The photon will then listen for HTML POST requests from a Microsoft Flow task that monitors Wunderlist for tasks that have been added.

If you want to see a kit version of this (or any) project then let me know and ill get on to making them available asap.

Constructed Thermal printer in case

Parts Needed

To complete this build you will need the following parts
Adafruit Thermal Printer
Particle Photon
Freetronics Buzzer Module (optional)
• 3x 5mm LEDs
Mini Breadboard
Breadboard Jumper wires
• Button
• 5 Volt 2 Amp power supply
2.1mm Barrel Jack

Constructing the Hardware

Making the case

Front View of 3D printed case
The enclosure for this project has been 3D printed and holds the thermal printer and supporting electronics. We printed ours out of Taulman In-PLA (red was all we had on-hand). It took approximately 8 hours to print all 3 parts.
Our printer settings
• 0.2mm Layer Height
• Sliced in Astroprint (we had a raspberry pi running Astroprint to control the printer)
• Extruder at 220°C
• Bed at 50°C

You can download the print files from thiniverse

After printing you will have 3 parts
The Front panel
Front Panel

Main body
Main body

and the side panel
Side Panel

You will need to attach the main body and side panels together. We carefully melted the two pieces using a soldering iron, however you may like to use hot glue or your own preferred method. There is an area on the body and side panel for a mounting screw for additional support.
Constructed body

Once the body is completed you need to attach the power jack. This can be done using the same method as before (if soldering, the barrel jack needs to have plastic where you are going to make the join). We would recommend using a hot glue gun for this, however we did not have one available so we used the soldering iron again to make the connection.
View of power jack

Now that the body is constructed and has the power jack in place, construction on the front panel can begin. Start by installing the 3 5mm LEDs. This can again be done using hot glue or the melting method or by using LED mounting clips. Now install the button in the middle. This screws in-place using the supplied hardware. Before installing the buzzer, solder two wires onto the module, then clip the buzzer in place. Some force may be required to get it installed, depending on the printers accuracy. If it is loose apply some hot glue around the outside it keep it secure.

Now it is time to install the thermal printer. Remove the side mounts from the printer and slide it in. The reinstall the mounting hardware to secure the thermal printer. You may wish to place some hot glue around the edges of the printer to prevent the front panel from bending too much.

Advertisment

Installing the Electronics

Now that the case is constructed and parts are mounting in it, it is time to wire everything up. Start by soldering wires to the LEDs. You can join all the cathodes together and attach one wire to them. Now attach wires to the button. Depending on the button this may mean soldering or screwing in the wires.
Next install the mini breadboard to the back of the thermal printer. They normal come with adhesive tape attached, so this can be used. Push the photon into the breadboard, leaving some space on the end of the board.

Time to start connecting the wires. Use the following table as a guide. You may with to use a channel on the breadboard as a ground connection for everything.

Schematic

Buzzer to Pin 0 and GND
Anode of LED1 to Pin 3 (This is the power LED)
Anode of LED2 to Pin 2 (This is the Heart Beat LED)
Anode of LED3 to Pin 1 (This is the Status LED)
Cathodes of LEDs to GND
Button to Pin 4 and GND (we will use the internal pull-up resistor on the photon
Thermal Printer GND to GND
Thermal Printer RX to TX on photon
PWR (+) to Thermal Printer HV and photon VIN
GND In (-) to Thermal Printer GND and GND

Wiring of Photon

You may now wish to do some basic cable management / tiding up. Then mount the assembled front panel to the body. (You may wish to setup the photon before screwing the case together)

Constructed Unit

Congratulations on constructing the device. Now lets install the software and breath some life into it!

Install software

Before uploading the code to the photon we need to know the baud rate of our printer. To find out this hold in the button on the thermal printer while attaching power. The printer will preform a test print and on it will be the printer baud rate.

Test Print

Now we need to flash the photon with our software. To do this go to build.particle.io and sign in using the same account used during the photon setup.

Copy and paste this code into a new project and change the baud rate to match what was on the test print. Then press flash (The lighting bolt icon)

The software waits for a HTTP POST request and prints the input value of that to the thermal printer. To test that it works you can follow the guide on the particle site.
The code has three functions that it can accept; header, body and task.
The header function, prints text larger and centre aligned.
The body function, prints text in the default size and alignment.
The task function, is the same as body, except an extra string is prefixed to it. This string (by default is []) makes the check box that gets printed. Each of these methods have a shorten function which trims the text if it is too long to fit on one line and replaces the last 3 characters with “…”.

The code is all commented and should be easy to ready and edit to your liking. The next steps we will cover is creating a new Flow task that monitors Wunderlist for added tasks and prints it.

Advertisment

Creating the Flow

We used Microsoft Flow as the gateway that monitors Wunderlist and updates the photon as we already had an Office 365 Business account that includes Flow. If you don’t have access to Flow you may be able to use something like Zapier to achieve similar results.

Start by going to flow.microsoft.com and signing in. Then go to ‘My Flows’ and press ‘Create from blank’. Type Wunderlist and choose ‘Wunderlist – When a new task is created’ as the trigger. You will need to connect your Wunderlist account then choose a list to monitor.

Adding Wunderlist to Flow

Press ‘+ New step’ and then ‘Add an action’. Type ‘HTTP’ to select the HTTP option. For method select POST. We will need to create our Uri. To do this you need the device id and access token for your photon. You can get these from the particle site. Enter in https://api.particle.io/v1/devices//task?access_token=, replacing and . In Body you will need to enter { "args":"TITLE" }. TITLE is dynamic content that can be selected from the list (see image).

Filling out POST screen

Give the flow a name and press ‘Create Flow’ and wait while your flow is created. Once it has been created open Wunderlist and create a new task in the list your monitoring. You will need to wait a few minutes (seconds if your lucky) for Flow to register the new task and send it to the photon.

DONE

Finished Device

That’s it. You now have a live Wunderlist printer for the occasion when you want a physical copy of your tasks. If you liked this project please consider donating so I can continue to create new projects and cover the cost of this website. If you have any suggestions or you made one please let us know in the comments below.

Leave a Reply

Your email address will not be published. Required fields are marked *