Home
JAQForum Ver 20.06
Log In or Join  
Active Topics
Local Time 03:26 19 May 2024 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : maximite i2c address range

Author Message
greybeard
Senior Member

Joined: 04/01/2010
Location: Australia
Posts: 158
Posted: 09:25pm 25 Jan 2013
Copy link to clipboard 
Print this post

I've been playing with the i2c master commands and there appears to be a restriction on the acceptable 7 bit slave address range. Any value between 8 and 119 ( inclusive ) is accepted but anything outside that range is rejected.
Does anyone know if this is by design or not?

The main reason I have found this is whilst playing with a serial GLCD interface. It isn't working as expected and I was trying to eliminate the potential issue of someone having configured the adapter ( serial glcd ) to use another i2c slave address.
RodEdited by greybeard 2013-01-27
 
greybeard
Senior Member

Joined: 04/01/2010
Location: Australia
Posts: 158
Posted: 11:43pm 25 Jan 2013
Copy link to clipboard 
Print this post

I've had a look at the original source code for the i2c functionality and it does check for a 7 bit address range with limits as I've observed.
I've done a search on i2c and am not sure why such a constraint was made.
It's not an issue for what I'm doing, more a search for enlightenment

[edit]
ok, I've been enlightened. And for anyone else who is interested, there are certain reserved addresss http://ww1.microchip.com/downloads/en/DeviceDoc/61116E.pdf section 24.7.3.7 for details.
I'll go and have a cleansing ale with the increase in knowledge bouncing around the brain Edited by greybeard 2013-01-27
 
MOBI
Guru

Joined: 02/12/2012
Location: Australia
Posts: 819
Posted: 11:55pm 25 Jan 2013
Copy link to clipboard 
Print this post

I did read somewhere that certain low and high addresses were considered as "test" addresses and not a specific device.

I might be mistaken, but something rings a bell.
David M.
 
BobD

Guru

Joined: 07/12/2011
Location: Australia
Posts: 935
Posted: 11:57pm 25 Jan 2013
Copy link to clipboard 
Print this post

Addresses 0 to 7 and 120 to 127 are reserved for other and future purposes.
 
greybeard
Senior Member

Joined: 04/01/2010
Location: Australia
Posts: 158
Posted: 11:59pm 25 Jan 2013
Copy link to clipboard 
Print this post

snap I found the answer and edited my earlier post.
cheers
 
MOBI
Guru

Joined: 02/12/2012
Location: Australia
Posts: 819
Posted: 01:31am 26 Jan 2013
Copy link to clipboard 
Print this post

  Quote  Addresses 0 to 7 and 120 to 127 are reserved for other and future purposes.


Is it a legal requirement that these addresses must be avoided?

Why can't the source code be amended to access all 127 addresses and leave it to the user to use or not to use.

I "grow" my own I2C devices and seeing as I'm the only user, I can please myself what address I use.

Edit: As an after thought, are those "forbidden" addresses used with the extended address mode?Edited by MOBI 2013-01-27
David M.
 
BobD

Guru

Joined: 07/12/2011
Location: Australia
Posts: 935
Posted: 08:10am 26 Jan 2013
Copy link to clipboard 
Print this post

  MOBI said  
  Quote  


Is it a legal requirement that these addresses must be avoided?


I don't know. I Googled for the answers and you have what I found.

  Quote   Why can't the source code be amended to access all 127 addresses and leave it to the user to use or not to use.


It's only software. Get the source code from Geoff and go for it.

  Quote   I "grow" my own I2C devices and seeing as I'm the only user, I can please myself what address I use.


Like consenting adults, you can do whatever you like in private. It's when the private becomes public that the problems start.

  Quote   Edit: As an after thought, are those "forbidden" addresses used with the extended address mode?


NFI but you can do what I did 12 months back and Google for the info. I have 3 documents from that effort and I have attached them for you and you can do the reading. I don't recall the URLs for these documents. The first one on Pullup Resistors was put together by me with info from a web site. That may also be the case for the second one. As I said it was 12 months back according to the file dates in Windoze.

2013-01-26_175209_I2C_-_Effects_of_Varying_Pullup_Resistors. pdf

2013-01-26_175248_I2C_Slave_Addressing.pdf

2013-01-26_175356_I2C-bus_Specification_and_User_Manual.pdf
 
donmck

Guru

Joined: 09/06/2011
Location: Australia
Posts: 1310
Posted: 09:01am 26 Jan 2013
Copy link to clipboard 
Print this post


We ran into trouble with the Olimex MOD I/O relay board when we first tried to plug it into a DuinoMite.

http://www.dontronics-shop.com/mod-io-input-output-expandabl e-board-with-uext.html

It was addressed at the first available address (zero), and wouldn't work. We discovered that Geoff had followed the I2C mapping rules correctly in MMBasic, so it never could be addressed. I had to re-burn the firmware of these devices so that the MaxiMites and DuinoMites could use a suitable working address. Olimex now burns a higher working address into the firmware.

I would strongly suggest that unless it is for private only use, then you shouldn't fiddle with these addresses.

And it is a big call to need 128 I2C addresses. I would think that another MM or DM slave talking to a master, could be a better choice.

Don...


https://www.32v8.com/d
 
MOBI
Guru

Joined: 02/12/2012
Location: Australia
Posts: 819
Posted: 10:46am 26 Jan 2013
Copy link to clipboard 
Print this post

  Don said  And it is a big call to need 128 I2C addresses.


Thanks for the PDF files - very informative, it told a lot more than I have ever found on Philips or Microchip sites.

Has anyone ever seen a list of "standard" I2C device addresses? There is a short list in Picaxe.

David M.
 
Print this page


To reply to this topic, you need to log in.

© JAQ Software 2024