2989Re: [Raspberry_Pi_4-Ham_RADIO] Latest TNC-Pi documentation?
- Mar 27, 2014I'm wondering whether you are using raspi-wheezy or NOOBs. They have changed the download page so it sort of pushes people toward NOOBs and there appear to be some differences between the ditro that is there and the plain raspi-wheezy. When the documentation for the TNC was written, it was based on the plain raspi-wheezy. I may have to make some changes if they've changed the defaults they are distributing.John W2FSOn Wed, Mar 26, 2014 at 5:47 PM, Clay Jackson <n7qnm-lists@...> wrote:
I’m glad I’m not the only one who had problems with this –
“Out of the box”, my TNC-PI was “deaf and dumb” to the Async interface – it wouldn’t do anything. When I loaded up the I2C diagnostics and modules, I was able to look at the I2C bus and found it as device 3. Once I SET things correctly, I can use the TNC-PI through the async interface just fine.
Very much, thank you.
I think two things threw me off. One was that my device was at bus 1 device 3, when the documentation said it would be at 0-0. The other thing was my incorrect assumption that since this is a KISS device, config would always happen over i2c, even when the async serial port is used for data.
The tool was giving a different error message for device 0 than for a valid i2c address where there was no device. My assumption that config was always over i2c had me concerned I would no longer be able to configure it once at address 0, but more likely the different error message was due to failure to get a response on the serial port instead of not finding the i2c device. The tool must send some escape sequence over the serial port to send configuration.
I understood the concept of changing i2c addresses, it was the handling of address 0 where I was confused.
I am currently set at address 5, the difference in error messages here concerned me, but it all makes sense now:
root@raspberrypi:/home/pi/tnc-pi# ./pitnc_getparams 1 3
poll failed: Input/output error
root@raspberrypi:/home/pi/tnc-pi# ./pitnc_getparams 1 0
On Mar 25, 2014, at 10:58 AM, Tadd Torborg <tadd@...> wrote:
It is important to discuss the difference between an I2C device and an async device. The device address # 3 (or greater) limitation is an I2C limitation. I2C is multi-drop, meaning you can have many TNC-PI stacked. The TNC-PI defaults to being async and you can only have one of those on the Raspberry PI at a time. I2C devices show up on the I2C bus which has a different bus # than the I2C bus. Both are addressable using the tncpi_setparams and getparams applications.
So.. your TNC-PI should be at 0 0 until you assign it an I2C address at which point it takes whatever address you gave it. After you assign it an I2C address, and then reboot the TNC-PI it will be an I2C device and will show up on the I2C bus scan (I can't remember the terminology -- I'm at the office and don't have one handy).
pitnc_getparams 0 0 is asking for parameter dump from the TNC-PI on the async bus.
pitnc_getparams 1 3 is asking for parameter dump from the TNC-PI on the i2c bus at address #3.
pitnc_setparams 1 3 1 15 will write to I2C bus#1 to address #3 to parameter #1 and set it to 15 hex. I don't remember the parameter numbers off hand but that's the general idea. If you do a getparams the response will tell you the parameter numbers and current values.
If you address the TNC-PI as an I2C device and set its address back to 0, I suspect it will now be an async device on bus 0 device 0 again.
From your email it sounds like the TNC-PI was already set to I2C address 3 when you put it together?
Does this help?
Tadd/KA2DEW in Raleigh NC USA
On Mar 25, 2014, at 10:45 AM, mcarland@... wrote:
Just built a TNC-Pi, was up until the wee hours figuring out it was at bus 1 device 3 and not 0-0 per the documentation. I see at least one other on this list had the same problem.
Is there a source of updated documentation for it? My Pi would get angry if I forced it to poll device 0, would freeze on reboot. The i2c-tools seem to want to start at device 3 unless you override it. I am concerned if I change the TNC-Pi to use device zero to use the async port, that I will no longer be able to communicate with it via pitnc-setparams at device 0. Or if I change it to zero, will it use the async port, but still take commands as device 3?
- << Previous post in topic Next post in topic >>