Mirror of EspoTek/Labrador@github.com - Drivers and firmware for the Labrador board
Go to file
EspoTek 58e438c3f8 Logic Analyser CH2 should write to correct console now. 2017-03-13 09:54:40 +11:00
AVR Code Start of 32 bit release. 2017-03-02 18:55:45 +11:00
Desktop_Interface Logic Analyser CH2 should write to correct console now. 2017-03-13 09:54:40 +11:00
Old Matlab Interface
PCB Added files for Android deployment. Added references to PCB on layer "Dwgs.User" 2017-02-18 13:38:18 +11:00
.DS_Store Moved to unix. Tested on Mac, anyway. Also fixed bug on Windows + CR/LF issues. 2017-02-08 13:30:05 +11:00
._.DS_Store Moved to unix. Tested on Mac, anyway. Also fixed bug on Windows + CR/LF issues. 2017-02-08 13:30:05 +11:00
.gitignore
README.md

README.md

This is the project page for the EspoTek Labrador.

http://espotek.com/labrador https://www.crowdsupply.com/espotek/labrador

#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/

The intention is to move to a less restrictive licence in future, where commercial hardware derivatives are allowed but the use of the Labrador name or any branding is not. If anyone knows how to implement such a licence, I'm all ears.

#Known bugs. This software is very much pre-beta. Those of you with sharp eyes will notice that there are some bugs. A few biggies include: ~~ - The software is compatible with Windows (x64) only.~~

  • A sample is discarded every frame while the DMA resynchronises.
  • The serial decoder doesn't actually look at every sample individually.

There are planned fixes for these: ~~ - Port libusbK calls to libusb1.~~

  • Time everything from the ADC's input clock. Send an extra "status" byte in isoBuffer[] and time this to a high-priority DMA interrupt to prevent the desktop interface and MCU code falling out of sync. (The "drop 1 sample per frame" was a hacky solution to a synchronisation problem caused by a double buffer's state variable being stored separately, on both PC and MCU. This should have been stomped out 6 months ago).
  • Change all calculations to be bit-based (not byte) and use a mix of divide and modulo to get exact position.

This is in addition to the dozens of small bugs that will have to be slowly squashed before launch.

#Collaboration Mailing list is here and open to all who wish to collaborate on the project: https://groups.google.com/forum/#!forum/labrador-devel

Thanks to all.

~Chris