Topics

9K6 TNC PCB layout and Teensy programming #pi #hampi


Arjan - PD3SPY
 

Hi all,

New to this group. I am from the Netherlands so shipping anything from the States is expensive. I managed to download a PCB layout but discovered when I wanted to start the soldering that it is not the same as in the description on tnc-x.com. Also the 'manual' didn't match the layout of my PCB.`

So, does anyone have the latest and greatest of an Eagle file or something I can use to make my own PCBs?

 

Further, since I got stuck with the soldering, I decided to turn my attention to programming the Teensy. I keep running into all sorts of error on my MAC so turned the old Windows machine on and it just about nearly complied but still ran into errors. So my question here is, which Arduino IDE version is supported and which Teensy download version goes with this Arduino IDE. I purchased a Teensy 3.6 board, should that make a difference.

Hope anyone can be of assistance! Thanks.

 

Arjan
PD3SPY


John Wiseman
 

My latest Gerbers and Eagle files are in

http://www.cantab.net/users/john.wiseman/Downloads/Beta/PI%20Teensy%20V4T.zip

I am currently using Arduino 1.8.9 and Teensyduino 1.47

The latest TeensyProjects is

http://www.cantab.net/users/john.wiseman/Downloads/Beta/TeensyProjects.zip

73,
John G8BPQ



On 17/07/2020 13:55, Arjan - PD3SPY wrote:

Hi all,

New to this group. I am from the Netherlands so shipping anything from the States is expensive. I managed to download a PCB layout but discovered when I wanted to start the soldering that it is not the same as in the description on tnc-x.com. Also the 'manual' didn't match the layout of my PCB.`

So, does anyone have the latest and greatest of an Eagle file or something I can use to make my own PCBs?

 

Further, since I got stuck with the soldering, I decided to turn my attention to programming the Teensy. I keep running into all sorts of error on my MAC so turned the old Windows machine on and it just about nearly complied but still ran into errors. So my question here is, which Arduino IDE version is supported and which Teensy download version goes with this Arduino IDE. I purchased a Teensy 3.6 board, should that make a difference.

Hope anyone can be of assistance! Thanks.

 

Arjan
PD3SPY



Arjan - PD3SPY
 

Dear John,

I reviewed your latest Gerbers, for which I thank you.
Somehow I managed to get hold of these files a while ago and so now the PCBs have arrived. The layout is quit a bit different than the manual on tnc-x.com for the 9k6 version. Do you maybe have an updated manual or a parts-list as the silkscreen is so tiny in some places I can't possibly read what is says ;)

Thank you in advance!

Arjan
PD3SPY


Mat Murdock
 


Arjan - PD3SPY
 

Hi Mat,

This should help a lot! Thanks for that!
Won't be till late july before I get the chance to test this so I might come back on the matter. 


Best regards,
Arjan
PD3SPY


Arjan - PD3SPY
 

That last manual was great. Got it all together now on my PI. Did upload the Teensy3.6 firmware via the loader-tool. When I apply power, I do get the flashing lights in sequence as per manual. However, I don't get any results from my ./pitnc_getparams command...

The following output is on my screen:
pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial1 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial1
retrying...
retrying...
retrying...
retrying...
retrying...

pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial0 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial0
retrying...
KISS Data Frame
retrying...
retrying...

Tried to see if it was on I2C. When using i2cdetect I get
       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1e -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 
So maybe there is the error and it is on I2C. I don't want this but how to change it?

Maybe it is just the fact that I am using a RPI4?

Arjan
PD3SPY


Mark Griffith
 

Try /dev/serial0

Mark
KD0QYN


On Tuesday, July 21, 2020, 4:08:52 AM CDT, Arjan - PD3SPY <arjan_hes@...> wrote:


That last manual was great. Got it all together now on my PI. Did upload the Teensy3.6 firmware via the loader-tool. When I apply power, I do get the flashing lights in sequence as per manual. However, I don't get any results from my ./pitnc_getparams command...

The following output is on my screen:
pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial1 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial1
retrying...
retrying...
retrying...
retrying...
retrying...

pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial0 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial0
retrying...
KISS Data Frame
retrying...
retrying...

Tried to see if it was on I2C. When using i2cdetect I get
       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1e -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 
So maybe there is the error and it is on I2C. I don't want this but how to change it?

Maybe it is just the fact that I am using a RPI4?

Arjan
PD3SPY


N5XMT
 

I'm on rpi4.  It's always available on i2c.
You can do pitnc_getparams 1 30 (30 is the decimal equivalent of hex 1e)


On Jul 21, 2020, at 05:28, Arjan - PD3SPY <arjan_hes@...> wrote:
Did this as well (sorry, not in my post) but got the same results as tty0 or ttyAMA0...

Op 21 jul. 2020 om 13:01 heeft Mark Griffith via groups.io <mdgriffith2003@...> het volgende geschreven:


Try /dev/serial0

Mark
KD0QYN


On Tuesday, July 21, 2020, 4:08:52 AM CDT, Arjan - PD3SPY <arjan_hes@...> wrote:


That last manual was great. Got it all together now on my PI. Did upload the Teensy3.6 firmware via the loader-tool. When I apply power, I do get the flashing lights in sequence as per manual. However, I don't get any results from my ./pitnc_getparams command...

The following output is on my screen:
pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial1 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial1
retrying...
retrying...
retrying...
retrying...
retrying...

pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial0 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial0
retrying...
KISS Data Frame
retrying...
retrying...

Tried to see if it was on I2C. When using i2cdetect I get
       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1e -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 
So maybe there is the error and it is on I2C. I don't want this but how to change it?

Maybe it is just the fact that I am using a RPI4?

Arjan
PD3SPY


John Wiseman
 

The management interface is always available on i2c, so the device will appear to i2cdetect. But it will only send and receive data on i2c is the configuration is changed and the software rebuilt.

As the TNC seems to be running the most likely problems are with the pi serial port config or the setting of the serial port jumpers on the TNC board.

73,
John


On Tue, Jul 21, 2020 at 10:08 AM, Arjan - PD3SPY wrote:

That last manual was great. Got it all together now on my PI. Did upload the Teensy3.6 firmware via the loader-tool. When I apply power, I do get the flashing lights in sequence as per manual. However, I don't get any results from my ./pitnc_getparams command...

The following output is on my screen:
pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial1 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial1
retrying...
retrying...
retrying...
retrying...
retrying...

pi@hamPi:~/bin/piTNC $ sudo ./pitnc_getparams /dev/serial0 0
pitnc_getparams Version 0.0.0.5
Using Serial port /dev/serial0
retrying...
KISS Data Frame
retrying...
retrying...

Tried to see if it was on I2C. When using i2cdetect I get
       0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1e -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 
So maybe there is the error and it is on I2C. I don't want this but how to change it?

Maybe it is just the fact that I am using a RPI4?

Arjan
PD3SPY


Arjan - PD3SPY
 

I'm on rpi4.  It's always available on i2c.
You can do pitnc_getparams 1 30 (30 is the decimal equivalent of hex 1e)
 
I'll try this next time I'm able to spend time at the hobby! Now away for work cor a few day ): thanks for the tip!


As the TNC seems to be running the most likely problems are with the pi serial port config or the setting of the serial port jumpers on the TNC board.
I have a board version with 2x3 pin header. Placed both jumpers on pin 2+3. Looking at the schematics this should be correct. Although unlikely, I might change my jumpers out for new one next time over to rule out any faults. Solder joints I have already checked...

Thanks all for the tips and help. Will try when I get back from work!

Arjan
PD3SPY


Arjan - PD3SPY
 

Back home (:

So, after the tip from N5XMT, I gave it a ./pitnc_getparams 1 30 and the result is:
pitnc_getparams Version 0.0.0.5

   TNC Software Version           6
01 TXDelay - Zero means use ADC 255
02 Persistance                  255
03 Slottime (in 10 mS)          255
04 TXTail                       255
05 Full Duplex - Not used       255
06 Our Channel (Hex)             ff
07 I2C Address (0 = async) Hex   ff
08 Mode Speed                  25500
09 RX Level (Config)            255
10 TX Level                     255
11 RX Level (Actual)            255
13 Centre Freq                 2550
8 6 ff ff ff ff ff ff ff ff ff ff ff ff e c0 sum 0

In other words, it does work via I2C. That is a relief as now I know that most of my soldering is done correctly. The only thing what still doesn't work is the serial connection. Jumper wise (picture them in the top left on the board as seen from above I placed them like this:
. ._.
. ._.
Following the schematics, this should be ok. I guess I have to stick with the bus then. Documentation on this is somewhat limited. I'll try and find more and see if I can get it working. Should be as there are other who have multiple working via the I2C bus...

Arjan
PD3SPY


Arjan - PD3SPY
 
Edited

Oke, for those of you suffer from the same problem on a RPI4 here is the solution:

First:
sudo systemctl mask serial-getty@...
This disables serial port login.

Then we need to stop the kernel from using the serial port by editing the cmdline.txt. file:
sudo nano /boot/cmdline.txt
Here, remove "console=serial0,115200". Save your changes and reboot. Now you can find your TNC on /dev/ttyS0 


N5XMT
 

1000% easier

sudo raspi-config
go to interfacing
select serial
set allow console logins to no
set enable serial hardware to yes
Finish and reboot



On Fri, Jul 24, 2020 at 9:42 AM Arjan - PD3SPY <arjan_hes@...> wrote:

[Edited Message Follows]

Oke, for those of you suffer from the same problem on a RPI4 here is the solution:

First:
sudo systemctl mask serial-getty@...
This disables serial port login.

Then we need to stop the kernel from using the serial port by editing the cmdline.txt. file:
sudo nano /boot/cmdline.txt
Here, remove "console=serial0,115200". Save your changes and reboot. Now you can find your TNC on /dev/ttyS0 


N5XMT
 

Now you need to set the params on it the same way.  
pitnc_setparams 1 30 param# value

   TNC Software Version           6
01 TXDelay - Zero means use ADC 30
02 Persistance                  63
03 Slottime (in 10 mS)          20
04 TXTail                       20
05 Full Duplex - Not used       255
06 Our Channel (Hex)             ff
07 I2C Address (0 = async) Hex   ff
08 Mode Speed                  1200 or 9600 (use 12 or 96)
09 RX Level (Config)            128
10 TX Level                     128
11 RX Level (Actual)            128
13 Centre Freq                 1700 (use 170, all params are 0-255)


On Fri, Jul 24, 2020 at 4:28 AM Arjan - PD3SPY <arjan_hes@...> wrote:

Back home (:

So, after the tip from N5XMT, I gave it a ./pitnc_getparams 1 30 and the result is:
pitnc_getparams Version 0.0.0.5

   TNC Software Version           6
01 TXDelay - Zero means use ADC 255
02 Persistance                  255
03 Slottime (in 10 mS)          255
04 TXTail                       255
05 Full Duplex - Not used       255
06 Our Channel (Hex)             ff
07 I2C Address (0 = async) Hex   ff
08 Mode Speed                  25500
09 RX Level (Config)            255
10 TX Level                     255
11 RX Level (Actual)            255
13 Centre Freq                 2550
8 6 ff ff ff ff ff ff ff ff ff ff ff ff e c0 sum 0

In other words, it does work via I2C. That is a relief as now I know that most of my soldering is done correctly. The only thing what still doesn't work is the serial connection. Jumper wise (picture them in the top left on the board as seen from above I placed them like this:
. ._.
. ._.
Following the schematics, this should be ok. I guess I have to stick with the bus then. Documentation on this is somewhat limited. I'll try and find more and see if I can get it working. Should be as there are other who have multiple working via the I2C bus...

Arjan
PD3SPY


N5XMT
 

Also, put the jumpers JP3 and JP4 on the 2 pins closest to the labels JP3 and JP4.  on the next two pins they are connected to serial port 3 on the Teensy, not serial port 1.


On Fri, Jul 24, 2020 at 4:28 AM Arjan - PD3SPY <arjan_hes@...> wrote:

Back home (:

So, after the tip from N5XMT, I gave it a ./pitnc_getparams 1 30 and the result is:
pitnc_getparams Version 0.0.0.5

   TNC Software Version           6
01 TXDelay - Zero means use ADC 255
02 Persistance                  255
03 Slottime (in 10 mS)          255
04 TXTail                       255
05 Full Duplex - Not used       255
06 Our Channel (Hex)             ff
07 I2C Address (0 = async) Hex   ff
08 Mode Speed                  25500
09 RX Level (Config)            255
10 TX Level                     255
11 RX Level (Actual)            255
13 Centre Freq                 2550
8 6 ff ff ff ff ff ff ff ff ff ff ff ff e c0 sum 0

In other words, it does work via I2C. That is a relief as now I know that most of my soldering is done correctly. The only thing what still doesn't work is the serial connection. Jumper wise (picture them in the top left on the board as seen from above I placed them like this:
. ._.
. ._.
Following the schematics, this should be ok. I guess I have to stick with the bus then. Documentation on this is somewhat limited. I'll try and find more and see if I can get it working. Should be as there are other who have multiple working via the I2C bus...

Arjan
PD3SPY