Comments (4)
I will have a look at it, as soon as "my other work" let me to do so ;-)
from brzo_i2c.
Some questions from my side:
- What is the size of your pullup resistor on SDA and SCL?
- Which esp-board are you using?
- Which version of Arduino IDE and esp8266 core do you use?
- You don't get any
brzo_i2c
errors, right? - Do you get back different values, or always the same, independant of what happens on the analog inputs of the MAX11615?
- Did you try different settings for status and configuration register? Did it work?
- Does i2c communication work in general in your setup, i.e. were you able to try it out with a different ic2c slave? Or is the problem only occuring with the MAX11615.
- Do you have a scope or logical anaylizer?
I had a (quick) look at the datasheet (wrong link in your comment, but don't worry, I found the correct one). AFAIK, there is no way to read out the configuration or status register, right? Otherwise, we could have checked that the values were written correctly (assuming there are no read errors).
Even if the the write, i.e. bits 6 and 5, was not successful (i.e. writing 0), the power-up values of these would be 0 0, so the SCAN selection mode should not be affected.
from brzo_i2c.
-
What is the size of your pullup resistor on SDA and SCL?
4.7k
-
Which esp-board are you using?
esp8266 nodemcu 1.0
-
Which version of Arduino IDE and esp8266 core do you use?
Latest
-
You don't get any brzo_i2c errors, right?
No brzo errros
-
Do you get back different values, or always the same, independant of what happens on the analog inputs of the MAX11615?
I have figured out a way to work with wire as of now but i want to use brzo and i am trying to understand more about the code, if you can point me to any reading material it will be great.
- Did you try different settings for status and configuration register? Did it work?
I think it worked and i have narrowed down the error to bit shifting and noise from the power supply.
- Does i2c communication work in general in your setup, i.e. were you able to try it out with a different ic2c slave? Or is the problem only occuring with the MAX11615.
I don't have any other i2c setup as of now.
Do you have a scope or logical anaylizer?
Not yet, i am ordering one soon.
It must be a stupid question to ask but what is the console.log equivalent in assembly ?
from brzo_i2c.
Thanks for additional info. Just a small remark: I have not yet tested brzo_i2c
with the latest Arduino core , i.e., 2.4-rc*. But normally this is not a problem...
So, if I understood you correctly, i2c communication is working?
Concerning assembly language question (which is not stupid question at all): Well, debugging is always a bit difficult with these microcontrollers. It strongly depends on the IDE you are using, how good or bad it is supported. This is also true for (inline) assembly language. At least from the docs, the Xtensa Xplorer IDE seems to give good support also for assembly, i.e. you can observe the contents of the registers etc; but I am not using it.
Otherwise, since you are on the instruction level with (inline) assembly, the only way to go is to think and think and think again before implementing something ;-) ....and to "debug" like this: If possible, split up inline assembly in parts, pass values from register to the outside world (i.e. c/c++) and then print them to the console.
A help for me to debug brzo_i2c
was the rigol scope: I could know from the observed signals, where in the assembly code something probably went wrong.
from brzo_i2c.
Related Issues (20)
- I2C stucks after clock stretching time exceeds HOT 25
- Question: Logic Levels and ... HOT 2
- Cannot compile for Heltec Wifi Kit 32 HOT 3
- INA219 HOT 8
- Multiple I2C HOT 2
- gpio_init() will cause I2C bus busy (code: 1) HOT 5
- Migrating ADS1015 from Wire HOT 5
- AM2320 sensor not found HOT 11
- I2C bus handle for multiple instances posibility HOT 1
- Support speeds < 100KHz HOT 2
- after 1 slave fails others stop working HOT 4
- Have you thought about a i2c slave implementation. HOT 2
- Novice obsession HOT 2
- GCC 10 compilation issue with Arduino HOT 5
- SDA set before SCL while preparing STOP in brzo_i2c_read() HOT 7
- MEMW not always present
- Clock stretch logic
- Arduino IDE compile error with new ESP8266 core 3.0.0 HOT 30
- SCL cock stretching HOT 3
- Platformio installation instructions confusing
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from brzo_i2c.