I2C is based on using two pins - SDA, SCL that are connected to VCC using so known pull-up resistors. Devices on the bus shorts the lines to GND to produce signals and communicate. ATS909X Device already has such pull-ups (just to let the internal I2C bus working) - and your Raspi has the same pull-ups - and extra external voltage comes to receiver's I2C bus through those resistors on Raspi. That voltage can make a distortions to signal and other participants on the bus, like display and CPU cannot...
sorry didn't realy understand you on that: "Try to not use pull-ups on your Raspi - just set SCL/SDA to Hi-Z. In opposite case you power the device's bus with extra 3,3V power. " can you clarify a bit its interesting I didn't break anything in the proces :) yet :) BTW: How would I check for sure which A or B pin is SCL or SDA can I do this with a multimeter?
ATS909X I2C bus is loaded with much more functionality than in ATS909 - display control, frequency tuning etc. so it is not surprise, that adding extra pull-ups (to external power) to the bus will break the device/display functionality. :-) Try to not use pull-ups on your Raspi - just set SCL/SDA to Hi-Z. In opposite case you power the device's bus with extra 3,3V power. By the way, AFAIR after sending (DATA OUT) all pages the receiver will try to reread they back from our adapter and (probably)...
are you sure that SCL is A and SDA is B, because whenever I try to connect my Raspberry PI B+ to the radio (did I mention that breadbord wires always fall out so its hard to make a solid connection without holding the wires and using at least 4 heands) its I2C pins are GPIO 2,4 like here: https://pinout.xyz/pinout/i2c# than I tried to set my raspberry pi as I2C slave according to this: https://raspberrypi.stackexchange.com/a/91438 but whenever I connect any pin to A/B terminal the radio becomes unresponsive...
Corresponding to http://ats909hoggy.sourceforge.net/usb-gpio12-connect.jpg SDA is B, SCL is A. Ground is required anyway to let the bus working. You cannot ruin your radio - even you load corrupted dump - its EEPROM will be reset to default set of station and settings. you cannot ruin your stations until you using "upload" command - i.e writing EEPROM to radio. Download EEPROM from radio is safe. You should configure your I2C program as I2C slave with address 0x51 (AFAIR) and must reconfigure your...
Thanks decided to switch hardware a bit and will use Raspberry PI Model B+ which has 3.3V i2c and 512MB of RAM I am a bit confused on how to use WiringPi with I2C even after reading this: http://wiringpi.com/reference/i2c-library/ still don't know I connect A to SDA and B to SCL or vice versa?, do I realy need ground?, because according to your previus comment: " Just for you information - device do not take care of I2C slave NACKs - it sends data regardless of our acknowledgements or not acknowledgments."...
Thanks decided to switch hardware a bit and will use Raspberry PI Model B+ which has 3.3V i2c and 512MB of RAM I am a bit confused on how to use WiringPi with I2C even after reading this: http://wiringpi.com/reference/i2c-library/ still don't know I connect A to SDA and B to SCL or vice versa?, do I realy need ground?, because according to your previus comment: " Just for you information - device do not take care of I2C slave NACKs - it sends data regardless of our acknowledgements or not acknowledgments."...
Hi, Jon, as far as I rememebr, the EEPROM dump is about 2048 bytes long for ATS909 and a bit more (2560?) for ATS 909X. Receiver sends it in 256 byte long pages, page by page. There are no way to select a page to download or download only one page - the whole EEPROM dump is send. So to keep all data in your MCU - it has to have more RAM onboard. Obviously you can download one or two pages to test your hardware, but for working sample you need more RAM onboard. Just for you information - device do...
Hi, Jon, as far as I rememebr, the EEPROM dump is about 2048 bytes long for ATS909 and a bit more (2560?) for ATS 909X. Receiver sends it in 256 byte long pages, page by page. There are no way to select a page to download or download only one page - the whole EEPROM dump is send. So to keep all data in your MCU - it has to have more RAM onboard. Obviously you can download one or two pages to test your hardware, but for working sample you need more RAM onboard. Just for you information - device do...
OK Thanks as Seerduino is using this Microcontroller: https://en.wikipedia.org/wiki/ATmega328 and does not have USB, only serial out I was wondering do I have to read the whole EEPROM of my ATX909X out to ATmega328 as I have only 1Kb EEPROM on there or 2KB SRAM that could be problematic or I can for a first PoC only read the first Page of stationns on FM for instance? Thanks for Anwsering and Best Regards also which Port (A or B) does SDA/SCL map to in ATS909X? PS: do I have to use headphone jack...
OK Thanks as Seerduino is using this Microcontroller: https://en.wikipedia.org/wiki/ATmega328 and does not have USB, only serial out I was wondering do I have to read the whole EEPROM of my ATX909X out to ATmega328 as I have only 1Kb EEPROM on there or 2KB SRAM that could be problematic or I can for a first PoC only read the first Page of stationns on FM for instance? Thanks for Anwsering and Best Regards
Hi, for ATS909X I2C levels 3.3V and they are more "stable" and "clean" than for classical ATS909. For the last one I have used 5V powered board and have to adjust SCL and SDA pull-ups rersistance to different values to "balance" those lines for MCU. More info about those adjustments are on the project main page http://ats909hoggy.sourceforge.net/ Due this specific of ATS909 model the making of universal adapter for both models I see as very problematic.
using Seerduino (Arduino) as MicroController instead of PIC18
Reimplement I2C/EEPROM handliong routines locally.
fix project.
Support auto-incremented builds with bootloader HEX merging.
Template for PIC16F1454 chip support - more che...
Fix processing timer time BCD values and priori...
Adjust SCL/SDA pullup outputs for ATS-909 compa...
Untested attempt to fix band issues in priority...
Cleanup.
Timer's hours and minutes are stored in BCD for...
Cleanup and fix issue with lower case character...
Support for classic ATS-909 EEPROM layout too.
Fix Ancourage time offset is -9 instead of -4 (...
More clean and complete support XML writing/rea...
Finish support of formatted XML output.
Improve XML writing and reading and formatting ...
just working draft of human-readable formatted ...
More support on loading from XML file. Prelimin...
Support locale-independent LoadStringEx helper ...
Start implementing reading data from XML data f...
Switch updating controller buffer with modified...
cleanup no functional changes.
Implement storing document files in XML format ...
Cleanup warnings - no functional changes.
Continue porting document to use elements objec...
Improve disabling some ui elements on disconnec...
Start porting document to use elements objects ...
UI support for adapter I2C protocol switching a...
Finalize support of i2c protocol ATS-909 <-> AT...
Start I2C protocol status/selection UI support ...
Fix I2C reading and adjust EEPROM layout for AT...
Start implementing customizable I2C protocol su...
A bit hardware support on ATS909X - I2C write O...
Switch RTL from DLL to static - no need to depl...
Home Page is released!
Home page adjusted: Releasing first public vers...
Added tag fw_version_0.1.200_USB-GPIO12 for cha...
Moved tag version_0.9.0-RC1 to changeset 9e44d6...
Added tag version_0.9.0-RC1 for changeset 4846a...
first public version - 0.1.200
Support "Launch Hoggy Studio" checkbox on the F...
deployment support adjusted and fixes. Has acce...
Event logging support may be switched now and s...
Fix issue with not loaded version mask on non-e...
Change version string layout - utilize build nu...
Merge
More info on HS introduction video added. Small...
Preparing to first beta release. :)
Fix Test sub-menu layout etc.
Home page layout changed.
More info on USB GPIO12 modifcations.
Some words about Hoggy Studio in the home page.
More info about project on the Home Page.
Reload some extra resources on switching UI lan...
HID bootlader by USB-GPIO12
About dialog layout and placement adjusted.
Support for application version and build number.
Finish UI localization resources.
Home Page skeleton
Idiots! Idiots! Idiots! Most ugly app I have se...
Fix font used in status pane.
Draft of deployment support. InstallShield was ...
More human-readable status pane messages.
Final fix for dirty-check on closing application.
Fix closing app after saving during dirty-check...
Some fixes to resource strings.
some problems were found again.
Fix dirty-check on exiting using File-Exit menu...
Implement application close handler - prevent m...
No need to check timer type before parsing freq...
Draft of installer package project added.
Class Diagramm updated - no functional changes.
Placeholders "Page #" in Etc priority button pa...
Fix issue with non-editable sw page names in em...
Refactoring Document::TimeZone -> Document::Tim...
Yet more support for user time zone editing and...
Add reference column for SW bands inforamtion.
Fix applying all pages to controller EEPROM fro...
Fix incorrect city-2-index entries.
Implement possibility to enter time zone offset...
Refactor TRACE support - add time of events, ne...