ESP32 Learning Notes (3)

Recently, while exploring the ESP32, I discovered many AI toys designed for smart voice applications. These devices interact with remote large models to generate intelligent speech, which looks particularly cool. In the past, I occasionally encountered projects that required interfacing with hardware, such as massage chairs, smart car washes, oxygen machine testing, CarPlay, boot cards, charging piles, and so on. Even in cross-industry scenarios, I found the need to deal with different software and hardware. Our understanding of this hardware is minimal, and often you can’t find anyone to discuss it with. Especially in cross-disciplinary fields, communication and exchange require a significant investment of time and learning costs. After all, if you are not in this professional field, what do you do when others stop engaging? No one is obligated to teach you. Many times, you have to awkwardly interface with relevant protocols to send and receive requests, conducting experiments in a trial-and-error manner. Everything feels like a foolish endeavor.However, during my engagement with these projects, I have gained some insights. Particularly in IoT-related projects, aside from the software aspects, I occasionally encounter devices that require debugging. For example, controlling the switch of a 4G module via an app. Wi-Fi and Bluetooth can mostly be handled through Android. In the process of working with the 4G module, I sometimes find some supplier brands. I learn about the companies behind these 4G modules, such as Quectel and Fibocom. From the company’s history, the relevant accumulation is quite deep. I suspect these modules are already quite mature. Searching for information is not difficult, but it is challenging when you don’t know how deep the hardware knowledge goes. It’s not about developing the underlying technology. More importantly, can this hardware interact with the software?ESP32 Learning Notes (3)ESP32 Learning Notes (3)Sometimes, I also encounter situations with development boards. I have seen some boards on Taobao and JD.com.In previous projects, I also started to engage with different chip suppliers, such as Huawei, Allwinner, and other companies’ chips.ESP32 Learning Notes (3)To understand the full usage scenarios, you must confirm your intention to enter this industry. Currently, my exposure to Android and Linux usage is very superficial. I don’t even know where ESP32 is applied. I am also unclear about the computing power of the ESP32, which is quite unfortunate. You feel like a novice, needing to confirm whether these devices can support protocols like Wi-Fi, HTTP, and networking. Fortunately, this hardware comes with relevant documentation.Embedded projects are not unusual. Sometimes, engaging with them can be beneficial, as at least some strange terminologies will come into play, such as Linux cross-compilation, graphics libraries for low-end devices, and some EU patent situations. Embedded systems primarily use C language and assembly. I have noticed that some friends who develop for Android/iOS tend to prefer Android development. For in-vehicle applications, this is often driven by cost considerations.There is still much more to write about. Recently, while using Flutter, I remembered that the latest version of Dart also supports cross-compilation. Does this mean that developing a Flutter application to run on a Linux system is also possible? This seems like a crazy idea.ESP32 Learning Notes (3)ESP32 Learning Notes (3)Since the device can run Android, Flutter can generate corresponding applications to run on these devices. This makes development relatively faster. This raises other questions.Running these applications is not difficult; the challenge lies in how to deploy the applications to run on them. I think of Raspberry Pi, which is essentially similar to a small computer. Software development is not particularly difficult.This includes some chips that support RISC-V architecture. Alibaba’s T-Head has been working on this for a long time. At that time, there were also reports of it running on Android. More importantly, these developers have already provided support, while Qiaqia focuses on upper-layer applications.ESP32 Learning Notes (3)ESP32 Learning Notes (3)If you are interested, you can take a look at Dart’s cross-compilation; you might find more usage scenarios.

https://dart.dev/tools/dart-compile#cross-compilation-exe

ESP32 Learning Notes (3)Overall, there is still much to experiment with. Due to my shallow engagement with the projects, I have only touched the software layer, and I will continue to learn as I encounter relevant projects. ESP32 Learning Notes (3)ESP32 Learning Notes (3) That’s all for tonight.

Leave a Comment