Vanessa is a rechargeable e-paper device. This design is powered by a lithium-polymer battery pack with charging and protection features like those shown in Solution A in the lithium battery guide. Vanessa uses SPI to communicate with a Pervasive Displays e-paper TFT display, and includes two user buttons. A custom enclosure for this reference design is available from Shapeways:
E-paper is an excellent fit for occasionally updated, long battery-life display applications, which makes it a perfect partner for the imp in a wide array of applications. E-paper displays have a very low refresh rate (writing the display make take several seconds) but once written, the display retains its image even with power removed. The imp can therefore do a periodic wake, check in with the agent for new messages and download any queued images, then turn off Wi-Fi, write the display and return to sleep to save battery.
The e-paper display is powered off the same 3.0V system rail as the imp and is written via SPI. The chip-on-glass (CoG) IC in Pervasive’s panel requires some assorted additional GPIO and a PWM input to initialize and manage some internal rails. For more information, refer to the Vanessa source code.
The e-paper display’s power rail is the same as the imp’s power rail, but is gated to avoid driving the display when no updates are necessary.
Because the e-paper panel requires that each frame be written continuously to the display for a specific ‘stage time’ before proceeding to the next frame, and because this stage time is temperature-dependent, the Vanessa design includes a temperature sensor. This sensor is a simple and inexpensive 10kΩ NTC thermistor, read with one of the imp's analog inputs. The thermistor is powered from the e-paper panel's supply rail, so the NTC does not draw any current unless the panel is powered on.
The Vanessa design uses a rechargeable lithium battery so care must be taken to avoid a number of dangerous conditions, including overcharging, over-discharging, continuous ‘top-off’ and excessive charge current. For more information on designing successful lithium battery-powered devices, please refer to the lithium battery design guide.
Vanessa’s overcharge protection is provided by the BQ25060 charge controller IC. This component also provides protection against continuous top-off by switching the system rail off of battery power when the charge cycle is completed. Fast-charge current is also limited, and can be set by selecting the value of a single resistor.
Over-discharge protection is provided by the Seiko S-8241 Battery Management IC. This circuit ‘locks out’ the battery by lifting the negative terminal from system ground when the battery voltage drops below 2.5V. The lock is released when the battery voltage rises above 2.9V. This prevents the imp from boot-looping and damaging the battery at the end of battery life. Many battery packs include this circuit in the pack itself, so a shortpad (W20) is also included on the board; if this circuit is present in the pack, the relevant components can be omitted and the circuit bypassed by shorting W20 with a small blob of solder.
The imp is able to monitor the battery voltage with one of its analog inputs, and can provide feedback when the battery is low.
Because of the number of GPIO lines required for this design, the Vanessa board includes a Semtech SX1505 eight-channel GPIO Expander, which is used to manage many of the functions on the e-paper CoG, as well as to receive input from the two user buttons. Each pin on the expander can be configured as an input or output, with configurable internal pull-up or pull-down resistors.
Because the GPIO expander cannot automatically detect when the imp goes to sleep, and because the push-pull output drivers in the IC consume power, it is important to configure the GPIO expander’s pins as inputs before going to sleep to avoid wasting battery life.
A custom-modeled enclosure is available for purchase through Shapeways. The buttons and PCB fit into the front half of this enclosure, and the lid then closes on top. BlinkUp and imp connection status are available on the back of the device.
Revision-controlled example firmware for the Vanessa board is available on the Electric Imp GitHub examples page. The Vanessa firmware includes several modular classes: