a144105b23
* Add struct definition for functionGenControl channel data * Add member variables for channel data to functionGenControl, deprecate old variables * fix a typo * Transition to new functionGenControl cahnnel data variables. Remove old ones. * refactor genericUsbDriver::setFunctionGen to use the new ChannelData struct. * functionGenControl: free(NULL) is safe * Eliminate duplication of functionGenControl::waveformName_CH* fuctions by putting common things into a private template function * get rid of comments added during refactor * Move function gen channel data to use std::vector. algorithmify some code on genericUsbDriver::setFunctionGen * various formatting changes, remove irrelevant comments * functionGenControl::waveformName: always use utf8 and 16 byte buffers. Remove template * fix typo introduced by last-second indentation change * genericUsbDrive::setFunctionGen: shrink samples to fit * functionGenControl::waveformName: clean up file path manipulation, clean up formatting * change the two channel objects to an array of two elements. Add common implementations for all methods of functionGenControl. Fix a massive bug introduced earlier in the refactor. Formatting. |
||
---|---|---|
AVR_Code | ||
Desktop_Interface | ||
Librador_API | ||
PCB | ||
build_scripts | ||
.appveyor.yml | ||
.gitignore | ||
.travis.yml | ||
README.md | ||
pinout.svg |
README.md
What is it?
The EspoTek Labrador is an open-source board that converts your PC, Raspberry Pi or Android Smartphone and into a full-featured electronics lab bench, complete with oscilloscope, signal generator and more.
More information available at: http://espotek.com/labrador
This repo hosts all of the software and hardware that makes Labrador possible.
Documentation and Software
To download binary (executable) versions of the software, go to:
https://github.com/espotek/labrador/releases
For the documentation, please visit:
https://github.com/espotek/labrador/wiki
Licence
All software files are licenced under GNU GPL v3. https://www.gnu.org/licenses/gpl.html
All hardware files (schematics, PCB) are licenced under Creative Commons 4.0 (CC BY-NC-SA). https://creativecommons.org/licenses/by-nc-sa/4.0/
Building from Source
I use Qt Creator to build the software interface. https://www.qt.io/download-open-source/ Open Desktop_Interface/Labrador.pro, then Clean All -> Run qmake -> Build All. If you're on Linux (including Raspberry Pi), then you can also build the software from source by cloning the repo, cd'ing to the Desktop_Interface directory then running:
qmake
make
sudo make install
Then, to launch, just type labrador
into the terminal.
To build the AVR software, I use Atmel Studio 7. Just load up the .atsln and push F7. You can use avr-gcc
if you don't want to install a full IDE.
The PCB files can be edited in KiCAD 4.0.
Known bugs.
Most of the main bugs have now been fixed, including all synchronisation issues. Please open an issue if you're aware of any in particular.
Collaboration
If you want to make any suggestions, or better yet, submit some code, please do so here at GitHub.
Suggestions and feature requests belong on the "Issues" page.
For code submissions, look into Pull Requests.
If you just want to say hello and remind me that people are actually using my product (or if you just don't want to make a GitHub account), please email admin@espotek.com
Thanks to all.
~Chris