UppSense17- Open Source sensor for chemical analysis based on fuoresence.
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.
 
 
 

10 lines
3.3 KiB

The logic board has been realized with the commercial CAD program Altium. The whole circuit fits on one sheet, as the logic board is not a complex design consisting out of very few IC's and passives.
\subsection{Design choices}
To facilitate all the functionality, certain IC's had to be chosen. The design requirements were to also have a debug option and a way to flash firmware without the need of a specialized programmer. That is why a USB-Serial bridge IC had to be found. There are nowadays quite a few different bridges on the market which all have the same basic functionality that is needed, namely: writing and receiving over a serial port. In order to keep the workload low so that the goal could be reached, an a-synchronous chip was sufficient. Therefor the CP2102 had been chosen. Other competitors with the same functionality were more expensive because they also offered extras that are not needed.\newpar
For \textit{IEEE 802.11} connection the ESP8266 has been chosen. This because it's the cheapest solution on the market, while also providing enough flash and performance to execute the tasks on the module itself, rather than needing a strong microcontroller with it. The ESP8266 itself is preprogrammed with a subset of the Hayes commands. But the firmware can be altered and software can be written in many different languages such as LUA, C++, Python.\newpar
In order to give the user feedback about the time, some interface is needed. As the weather and social media status should be visible this interface has to be a graphic screen of some sorts. Standard LCD's have the disadvantage that they have backlight, which causes annoyances during night when its on. As it acts as a large light source. And if the backlight is turned off, the user won't be able to read out the time. That is why an OLED screen has been chosen, based on the SEPS525F driver. OLED has the advantage that every pixel is lit individually, thus not creating a large light source when only time is displayed. Another advantage is the power consumption, which depends on the state of the screen. Fewer pixels being lit means a lower power consumption. \newpar
Only two microcontroller models were available to choose, as the course required to make use of an 8-bit AVR chip. Either the Atmega, or the more recent XMega. The Xmega has an updated design, and provides more efficient power management due to lower power supply while maintaining performance. Other advantages are a multi level interrupts and more advanced GPIO access. In order to facilitate possibilities to flash the ESP8266 module from the xmega, a large flash size is needed. The xmega with the smallest footprint and largest flash was chosen, which is the xmega128a4u.
\subsection{Implementation}
The XMega will be programmed trough a PDI port. Furthermore four ADC and PWM pins are exposed for use with the power board. The screen is connected via a flat flex connector, rather than soldered directly on the board. This allows for reuse of the screen on further revisions without having to purchase new screens.\newpar
An external crystal is used for the real time clock. This gives the possibility to use the 32 bit real time counter on the XMega which is more precise than using a build in oscillator. Two low side n-channel MOSFETS are connected for reverse voltage protection. \newpar
The full schematics can be found in Appendix \ref{append:logic}.