Git Product home page Git Product logo

mobilinkd / nucleotnc Goto Github PK

View Code? Open in Web Editor NEW
83.0 83.0 18.0 23.3 MB

The Nucleo TNC is a breadboard implementation of the Mobilinkd TNC3 using a STM32L432KC Nucleo32 board. This TNC faithfully implements the audio section and EEPROM storage of the TNC3. It omits the battery charging and Bluetooth components of the TNC3. It presents as a KISS TNC over a USB serial port. This repository contains the build instructions, KiCAD schematics, and firmware source code.

License: GNU General Public License v3.0

C 87.25% C++ 5.92% Assembly 0.19% Jupyter Notebook 1.26% HTML 5.38%

nucleotnc's Introduction

nucleotnc's People

Contributors

mobilinkd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nucleotnc's Issues

Serial communication with TNC does not work

I have built TNC on a breadboard (version with STM32L432KC). Uploaded firmware (firmware.bin) and tried to connect with tnc1-python-config. It allows to connect to device, the button Connect changes to Disconnect, but in the upper left corner it still says "Not connected" and all fields seem to be set to default values (e.g. TNC Information shows "Uknown" and "Unsupported").

Rebuilt firmware from source and started debugging with gdb. It seems to be initializing normally, then getting into a loop analyzing audio. I enabled define KISS_LOGGING and got some meaningful debug output on the serial console. This is the start of it:

�Mobilinkd Nucleo32 Breadboard TNC versi�CPU core clock: 48000000Hz��    Device UID: 0029004B 374B500C 2038325�Bootloader version: 0x10��Loading settings from EEPROM��Attempting to read 812 bytes from EEPRO�Hardware Settings (size=812):��TX Delay: 30��P* Persistence: 64��Slot Time: 10��TX Tail: 1��Duplex: 0��Modem Type: 1��TX Gain: 63��RX Gain: 0��TX Twist: 50��RX Twist: 0��Log Level: 0��Options: 16��MYCALL: NOCALL��Dedupe time (secs): 30��Aliases:��Beacons:��Checksum: 53ees��Setting output gain: 63 (log 0 + 1013)��Setting input gain: 0��enter readLevels��readLevels: start��exit readLevels��Vpp = 6, Vavg = 7114��Vmin = 7111, Vmax = 7117��DEMODULATOR��enter demodulatorTask��Acquired frame 0x20004514 (size after �Acquired frame 0x20004538 (size after �Acquired frame 0x2000455c (size after �FCS = e77e��CRC = f622�� 

Tried to place breakpoints in all serial port callbacks, but they don't fire neither using tnc1-python-config nor when connecting with serial console and trying to send keystrokes.

Operating system: Linux (Ubuntu 18.04 LTS)

Thanks in advance!

schematic for PCB rev. C

Hello

Although the BOM was updated to rev C. but the schematic is still ver. B only. A diode was added but I cannot track the connection via the BOM.

Does it possible to provide the rev C schematic as well?

BR
VR2XKP

Feature Request: TX Watchdog Timer

I occasionally run in to an issue where the TNC will get stuck in TX and need to be reset. I'm reasonably sure this is due to RFI somewhere, but I've never been able to track it down and no amount of ferrite beads help. It happens on my mobilinkd as well as several NucleoTNCs. The documentation suggesting ferrite beads on the cable between the radio and TNC suggest I'm not the first to see this. My current work-around is a TOT set on the radio, but the TNC still needs to be reset once entering this condition.

As a workaround, and for HT use, etc... where rf conditions may be out of the user's control, it would be a nice feature to have a user-configurable TX watchdog timer to reset the TNC after a user-defined period of time in TX--user defined so it doesn't mess with M17 voice QSOs.

Thanks for your consideration.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.