This is the OLD source code for firmware versions 1.15x and earlier to run the PanelDue 3D printer user interface board. Source code for firmware versions 1.16 and later is in repository PanelDueFirmware, see https://github.com/dc42/PanelDueFirmware.
Build instructions: load file PanelDue.cppproj into Atmel Studio 7.0. For those wishing to build it under operating systems other than Windows, it should not be difficult to port it to Eclipse. The only libraries needed that are not included in this repository are the GCC toolchain libraries for the SAM3S.
Static analysis: parts of the firmware are formally verified using Escher C++ Verifier, hence the design-by-contract and other annotations. File ecv.h defines macros that make these annotations invisible to compilers.
Firmware upload instructions: see http://miscsolutions.wordpress.com/paneldue/
Licence and copyright
Copyright (c) 2015 Escher Technologies Limited. Licensed under the Creative Commons Attribution-NonCommercial 4.0 license. See https://creativecommons.org/licenses/by-nc/4.0/legalcode for a copy. Some parts of the firmware (c) Henning Karlsen. Some parts of the firmware (c) Atmel Inc.
Submitting pull requests
I will only consider pull requests that meet the following standards:
- the code must compile warning-free, with very few exceptions
- existing design-by-contract annotations must be preserved, and contracts should be added for any new functions. Please asked for a copy of eCv++ Free Edition if you plan on making substantial changes.
- the coding style must be adhered to
Henning Karlsen - for the original versions of the TFT display driver, see http://www.henningkarlsen.com/electronics/ Atmel - for the Atmel Software Framework, which made programming the ATSAM3S a lot easier MikroElectronika - for providing GLCD Font Creator, see http://www.mikroe.com/glcd-font-creator/ Andy (kwikius) - for writing a program to compress fonts generated by GLCD Font Creator