Leon Lindenfelser
Forum Replies Created
-
AuthorPosts
-
Leon Lindenfelser
ModeratorHit the reset button on the UDK board and at the same time hit a key repeatedly. You should see that the bootloader is entered. This should be on the same port that you see the warning message. Once into the bootloader, select the option to erase flash memory. See if that clears the issue.
Leon Lindenfelser
ModeratorHi Casey,
You’re welcome. I’m glad you were able to get it working.
Kind regards,
LeonLeon Lindenfelser
ModeratorI took an MTQN-MNG1-B02 and measured the voltage on RADIO_RESET and RADIO_ONOFF. I am not seeing the same as you see. RADIO_RESET is low. FYI, both signals get inverted before they reach the radio. Please open a support portal ticket at https://support.multitech.com/support.
At the end of the 20s do you see 1V8_MON go low?
Leon Lindenfelser
ModeratorOn the MTQN-MNG1-B02, the RADIO_ONOFF and RADIO_RESET are controlled by an ATtiny9 microcontroller. You should not try to control these. The beginning of chapter 7 covers powering down and resetting the radio. It can be done by AT command or the reset line. The reset line is an input to the ATtiny9.
https://www.multitech.com/documents/publications/manuals/s000702.pdf
Note: Signal 1V8_MON operates at 3.3 V not 1.8V.On the MTQN_MNG1-B01, RADIO_ONOFF and RADIO_RESET are controlled by the STM32L471QG microcontroller and the ATtiny9 is omitted.
Leon Lindenfelser
ModeratorPlease read the warning box titled ‘InterruptIn Limitations’
https://os.mbed.com/platforms/MTS-xDot-L151CC/Leon Lindenfelser
ModeratorHi David,
Please take a look at this example.
https://os.mbed.com/teams/MultiTech/code/Dragonfly_Filesystem_Example/Kind regards,
LeonLeon Lindenfelser
ModeratorHi David,
Which Dragonfly model do you have?
Are you using the Dragonfly examples with the MTSCellularInterface library?
https://os.mbed.com/teams/MultiTech/code/Dragonfly-Examples/Are you planning to use the GPS or SMS functionality along with UDP sockets?
Which version of mbed-os are you using?
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Peter,
My suspicion is that RXD and TXD need to be switched.
Please see JP98 on page 54.
https://www.multitech.com/documents/publications/manuals/s000612_DB9.pdf
TXD and RXD can be swapped via jumpers on JP98. Looks like we had the naming wrong but corrected it on our latest boards.Kind regards,
LeonLeon Lindenfelser
ModeratorHi Cora,
Assuming you want to only power the xDot with your power pack, remove JP30 and connect your positive wire to the pin closest to the label JP30 and connect your ground wire to the pin closest to the label JP5 or the via (not the pin) on the other side of JP5 labeled GND.
You will also need to provide 5v into the USB connector so the interface chip is powered and providing NRESET to the xDot.
FYI, Page 51 of the developer guide contains the xDot developer board schematics.
https://www.multitech.com/documents/publications/manuals/s000645.pdf
If you want access to the command or debug serial ports without the interface chip(U6 on page 3), pay close attention to the buffers on the upper left quadrant of page 2. If those buffers are enabled, UART_RX_X/UART_TX_X and MBED_RX_X/MBED_TX_X are driven by the buffers. The UART_RX_X/UART_TX_X pins are brought out but MBED_RX_X/MBED_TX_X are not.Kind regards,
LeonLeon Lindenfelser
ModeratorHi Alejandro,
Powering the xDot without providing power on the USB connector will not work. The MK20 interface chip needs to be powered through the USB connector so it drives the NRESET line high.
The intention of JP30 and JP5 is to provide a means to measure the xDot power draw.
We will submit a request to our technical writers to correct the developer guide.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Mark,
Here is the full set of SPIFFS responses and yes, it is the SPI flash file system.
#define SPIFFS_OK 0
#define SPIFFS_ERR_NOT_MOUNTED -10000
#define SPIFFS_ERR_FULL -10001
#define SPIFFS_ERR_NOT_FOUND -10002
#define SPIFFS_ERR_END_OF_OBJECT -10003
#define SPIFFS_ERR_DELETED -10004
#define SPIFFS_ERR_NOT_FINALIZED -10005
#define SPIFFS_ERR_NOT_INDEX -10006
#define SPIFFS_ERR_OUT_OF_FILE_DESCS -10007
#define SPIFFS_ERR_FILE_CLOSED -10008
#define SPIFFS_ERR_FILE_DELETED -10009
#define SPIFFS_ERR_BAD_DESCRIPTOR -10010
#define SPIFFS_ERR_IS_INDEX -10011
#define SPIFFS_ERR_IS_FREE -10012
#define SPIFFS_ERR_INDEX_SPAN_MISMATCH -10013
#define SPIFFS_ERR_DATA_SPAN_MISMATCH -10014
#define SPIFFS_ERR_INDEX_REF_FREE -10015
#define SPIFFS_ERR_INDEX_REF_LU -10016
#define SPIFFS_ERR_INDEX_REF_INVALID -10017
#define SPIFFS_ERR_INDEX_FREE -10018
#define SPIFFS_ERR_INDEX_LU -10019
#define SPIFFS_ERR_INDEX_INVALID -10020
#define SPIFFS_ERR_NOT_WRITABLE -10021
#define SPIFFS_ERR_NOT_READABLE -10022
#define SPIFFS_ERR_INTERNAL -10050
#define SPIFFS_ERR_TEST -10100With the library version you are using, if your code is accessing the SPI flash part from more than one thread, it can become corrupted and errors can occur. We have added a mutex to protect flash memory in cases where designers wish to access it from more than one thread. That support is in revision 113:53cb35474afb as listed at:
https://os.mbed.com/teams/MultiTech/code/libmDot-dev-mbed5/shortlog/To recover your flash memory, I recommend you create support case via the support portal found at https://www.multitech.com/support/support. They will be able to provide what you need to erase and restore the flash memory.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Mark,
I’m happy to hear you figured it out.
The “[INFO] entering sleep (stop) mode 00000037″ message comes from our library. More specifically it is in the code for the Dot object.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Mark,
Does the example code work for you when not integrated into your project?
Have you tried the sleep API directly in your project?
dot->sleep(delay_s, mDot::RTC_ALARM, deepsleep);The setWakePin() configures the pin and sets a variable then getWakePin() reads the variable back. Looks like you can query but not set. I don’t see an obvious reason why.
Kind regards,
LeonLeon Lindenfelser
ModeratorThe power supplied to the mdot is connected to the input of a 3v regulator. VBAT and VDDA are both connected to the output of the regulator.
Leon Lindenfelser
ModeratorHi Martin,
This fix was added as of mbed-os-5.5.2. I expect a new stable library release sometime in Q1 of 2018.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Sergio,
If you are building online or offline, make sure you are building for the xdot. In the upper right corner of your online compiler page it will show which product you are building for. If offline, make sure you use -m XDOT-L151CC.
If the above is of no help, please tell me which version of the libxDot-dev-mbed5 library and mbed-os are you building with and if you are building online or offline.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Sergio,
There is a watchdog available in the mdot and xdot. The mdot uses an STM32F411RE processor and the xdot uses an STM32L151CC processor. We do not enable the watchdog.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Antonio,
Do you have the dotbox… https://www.multitech.com/models/99999211LF? If you have the dotbox, look for the heading MTDOT-BOX/EVB at http://www.multitech.net/developer/downloads/ and download the 2.1.2 version of code.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Antonio,
Was it working before you programmed it?
What firmware did you flash it with? Did you flash firmware from the ftp site?
https://webfiles.multitech.com/wireless/mtdot/dot-v3.0.0/What do you mean the screen is shut down? With the factory AT command firmware you communicate through the serial interface.
Which developer card are you using?
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Stefano,
You should be able to confirm if the mDot is functioning by loading original AT command code.
https://webfiles.multitech.com/wireless/mtdot/dot-v3.0.0/Kind regards,
LeonOctober 9, 2017 at 9:25 am in reply to: Dragonfly GPS not working while TCP connection is enabled? #21142Leon Lindenfelser
ModeratorHi Adriaan,
Yes, you can have simultaneous TCP socket and GPS.
The MTSCellularInterface code can be found here:
https://github.com/MultiTechSystems/MTSCellularInterface
It implements sockets in command mode allowing GPS while TCP sockets are established. You can find a couple examples of MTSCellularInterface in use here:
https://os.mbed.com/teams/MultiTech/code/Dragonfly-Examples/wiki/HomepageKind regards,
LeonLeon Lindenfelser
ModeratorHi,
I would expect the voltage to drop during a read as that will add impedance. So your numbers with the 10k resistors sound pretty close with a 50K internal impedance. With the 100K resistors I would expect a greater drop on read. That difference is what’s puzzling to me but the drop is expected.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Andrew,
Sorry, nothing yet. It is submitted as a feature request.
Leon
Leon Lindenfelser
ModeratorHi Scott,
To adjust the stack sizes look in the file “…mbed-os\rtos\rtx\target_cortex_m\Cmsis_os.h” line 89 you should see:
#define DEFAULT_STACK_SIZE (WORDS_STACK_SIZE/2)
WORDS_STACK_SIZE is 512 so this sets DEFAULT_STACK_SIZE to 256.
In the file “…mbed-os\rtos\rtx\target_cortex_m\RTX_CM_lib.h” line 363 you should see:
static uint32_t thread_stack_main[DEFAULT_STACK_SIZE * 6 / sizeof(uint32_t)];
This sets the stack for the main thread to 1.5k.
As for your offline compiling issues, please try using an older GCC_ARM compiler version. mbed-cli used to call out using a GCC_ARM version < 5.0. I have been using version 4.9 2015q2. If I recall correctly, you want to use GCC_ARM compiler versions < 5.0 for mbed-os versions < 5.5.0. Kind regards, Leon
Leon Lindenfelser
ModeratorHi Tae,
If you open the DotBox, you should see a USB connector just below the on/off slide switch. Assuming it is there, that can be used to power the DotBox. You could cut a hole in the plastic case to provide access. It only provides power. The data lines are not connected.
Kind regards,
LeonLeon Lindenfelser
ModeratorBob & Pascal,
Please reset the dot, wait one second, enter +++ then wait one second. It needs to be exactly three ‘+’ characters with at least one second of no characters entered before and after the sequence of three ‘+’ characters.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Aitor,
When IO pins are programmed as analog inputs they draw the least amount of power. So if you have pins configured as PWM or digital you will see additional power draw. That is why you see all pins being configured as analog during sleep mode… to reach lowest power consumption.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Aitor,
The mDot power draw numbers can be found on page 25 of the developer guide.
http://www.multitech.com/documents/publications/manuals/s000612.pdf
Your higher readings align closely with what we measured.I am having a difficult time imagining how a single undefined function declaration could affect power draw. Are you building on line or off line? If off line, which compiler?
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Mark,
When getStandbyFlag() is called, it should simply return the state of the standby flag directly from the processor which should function as follows…
Standby flag:
This bit is set by hardware and cleared only by a POR/PDR (power on reset/power down reset) or by setting the CSBF bit in the PWR power control register (PWR_CR)
0: Device has not been in Standby mode
1: Device has been in Standby mode
The xDot should enter standby mode when deep sleep in invoked. So you should see the standby flag set if it came out of deep sleep.Stored settings do consume part of the EEPROM.
Kind regards,
LeonLeon Lindenfelser
ModeratorHi Mark,
Please see the section on Deepsleep functionality change…
https://developer.mbed.org/platforms/MTS-mDot-F411/#lora-stack-libmdotKind regards,
Leon -
AuthorPosts