Showing posts from March, 2011

Moving code from ESP8266 to ESP32

A while ago I made a mashup of Dan Royer's code CNC 2 Axis Demo with my own code for trapezoidal motion stepper and servo control for ESP8266.

I assumed porting the code to the ESP32 would be trivial, and that was true for the most part: changes like library name being Wifi.h instead of Wifi8266.h were not a problem. UDP now does not like multicharacter writes but you can use print instead. So far so good.

However, when it came to the interrupt code I was stuck with the stepper interrupt causing an exception sometimes. And to make things weirder, the servo interrupt worked flawlessly (both of them had the IRAM_ATTR directive if you ask me).

Going little by little, I could narrow down the culprit to a floating point operation during the interrupt, that would cause problems sometimes but not always. Browsing around I found this post. Where the solution was simple: do not use floats within the interrupt routines but doubles. The reason was the float calculation would be performed by…

Galaxy S: a few months later

A few months of use have given me some perspective on Samsung's Galaxy S. What I have liked is how easy it was to get Gmail working and configuration of services in general. But several things have been confusing and not so nice: for example the use of calendars or the contact lists. It seems you can maintain several calendars and there are different places where you can store your contact list.
The initial contact list synchronization was not easy as Galaxy S won't work with Apple's iSync. I used SyncMate application but I did not like either. But I can recommend Dropbox as it is a great tool not only to get content onto your smartphone but also to upload pictures from it.
While a do like Android, the system has a lot of room for improvement, the worst thing is the variability on the response time. Sometimes the system is just not interested on what you do. You may get a call you cannot answer for a few seconds because the system is busy doing something else. I do not like …