-
Notifications
You must be signed in to change notification settings - Fork 148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
testing new Modem modem-v1.0.3 on a SIMCOM A7672E (IDFGH-11227) #375
Comments
CONFIG_LOG_DEFAULT_LEVEL_INFO=y it works, CONFIG_LOG_DEFAULT_LEVEL_VERBOSE=y it fails espressif/esp-protocols#375
@diplfranzhoepfinger Does it mean that it works with the inflatable buffer? Looking at the logs, your'e hitting only the exit CMUX problem, which is related to the known issue of SIMCOM A7672 I think you're actually seeing this problem: esp-protocols/components/esp_modem/src/esp_modem_dte.cpp Lines 81 to 82 in 93dd567
I was thinking about adding a debug/warning log here, but this could also mean a standard timeout, so decided against it. I know that I told you to set esp-protocols/components/esp_modem/Kconfig Lines 15 to 17 in 93dd567
that this mode is perfectly suited for DATA mode, but in the COMMAND mode, you might see get some timeout issues and this is probably the case. And it also explains why the logging verbosity makes such a difference, clearly sending long hexdump payloads to UART causes delays, so the data come in chunks and if the Now the esp-protocols/components/esp_modem/src/esp_modem_cmux.cpp Lines 315 to 320 in 93dd567
That said, I would recommend these configuration of
|
ESP_MODEM_CMUX_DEFRAGMENT_PAYLOAD=n, ESP_MODEM_USE_INFLATABLE_BUFFER_IF_NEEDED=y Set like you recommend It does now at least get a IP Address; which was a big issue before. Where does this "invalid header" warning come from? |
This example terminates the connection in the end, so you either remove the exit or reconnect after it. Looking at your logs I can see that the connection and publishing to the MQTT broker succeeded -- in both verbose/info version.
I think we've discussed that already. Your modem doesn't comply to some control sequences of the CMUX protocol, I've even added a note about it in the docs: esp-protocols/docs/esp_modem/en/README.rst Lines 148 to 149 in 93dd567
Previous version of |
so i will integrate your patch and make new Tests. i do not think that anything runs in the current Version. The Device get an IP, but furthere communication does not happen. i will do more tests later today, and post them here. Thanks, Franz |
Terminal integrate the Fix espressif/esp-protocols@28de345 like said here: espressif/esp-protocols#375 (comment)
first Example
that part looks good now ... wow. but my Second Example lacks:
seems also working, only Problem is the Fragmentation of the AT AT+CPSI? Answer. |
It comes fragmented, but should be passed to the command library multiple times, but the new fragments should be appended to the previous so in the end, it should arrive as a whole. This is also happening for other commands, that's why we parse them like this: esp-protocols/components/esp_modem/src/esp_modem_command_library.cpp Lines 335 to 342 in 3e8de3a
(returning
Yes, as indicated above: #375 (comment) you can use the most default configuration ( |
so, how to get the Data then ? can i grab it somehow ?
so you say maybe this config is the better one in some cases ? |
Now I understand. We must change the Parser. |
Yes that's one option. The other one is to switch to the default config.
I meant theoretical throughput, since the defragmentation takes place before we post the data to the network stack. This is of course negligible on UART speeds of few hundred kbauds. |
thanks a lot, i will do a test. |
@diplfranzhoepfinger You can also try to cherry-pick 1db1e15 to see if your parser works with |
but we use A7672 on 4-wire serial. do you think USB has some siginficant advantages ? OK, it saves 2 Lines. but i still need CMUX right ? |
This also affects UART in the configuration of
Wires and speed
Not necessarily, A7670 supports two logical channels (endpoints) in USB, which could represent two physical channels (i.e. terminals) that you connect to the DTE. So you can have one channel for commands and another for data without multiplexing. |
then i start ESP-Modem 2 times, once in DATA Mode, once in AT Mode ? |
Just check the examples. esp-protocols/components/esp_modem/examples/pppos_client/main/pppos_client_main.c Lines 220 to 222 in 3e8de3a
The rest is the exactly same (one DTE, one DCE, one network interface). PS: This constructs a DTE which simply takes two terminals, and sets the mode to esp-protocols/components/esp_modem/src/esp_modem_dte.cpp Lines 33 to 36 in 3e8de3a
|
that is cool i want to test it ! |
It looks like the tests pass. Please reopen if not. |
YES ! we use it, and beside some initial Problems with the VBUS Pin ( USB still work when VBUS not on 5V, but Fail after this when activating GNSS) it is much more cool than using CMUX. so if somebody read this: i would rate USB much better than CMUX. |
I'm planning on enabling |
yep. might be a good thing ! |
Answers checklist.
General issue report
testing new Modem modem-v1.0.3 on a SIMCOM A7672E
Test 1:
Test is with Firmware
After adding some Delay and Sync, here it gets an IP Address. BUT only with INFO Logging, not with Verbose Logging.
It is interesting to see that at "verbose" logging the behaviour is different than in "info" logging.
@david-cermak
Test 2:
testing the 4-Wire Mode: repo
Not working.
Test 3:
Inflatable Buffer:
Test 4:
cross-Testing with Old Modem:
repo
log
log
test with merged new Modem 1.0.3:
repo
log
The text was updated successfully, but these errors were encountered: