This is legacy function and should not be used in the applications
Posts made by Andrey Bondarev
PPS sync should work properly as long as 1PPS pulse provided to PPS pin.
Proper timestamp so far supported only for ublox binary nav-pvt message.
1 PPS signal is processed inside timer5 interrupt routine.
ppsDetected is set inside function platformSetPpsTimeStamp(ts)
Please use next temporary fix:
Please use the upper .S for Assembly files.
The library will be updated for next release
Hi,
Please try to do next steps:
- Import custom IMU VG_AHRS application for OpenIMU330RI
- Update next structure to look like:
// User output packet codes, change at will
typedef enum {
USR_OUT_NONE = 0, // 0
USR_OUT_TEST, // 1
USR_OUT_DATA1, // 2
USR_OUT_DATA2, // 3
// add new output packet type here, before USR_OUT_MAX
USR_OUT_SCALED1, // 4
USR_OUT_ANG1,
USR_OUT_ANG2,
USR_OUT_MAX
} UserOutPacketType;
- Update default value of .userPacketType in gUserUartConfig structure to have desired value of the packet rate.
- Rebuild and reload application onto unit.
- Using ST-Link utility make sure that sector 2 in the MCU flash is write-protected
- Power cycle unit.
- Using any serial terminal check it packet "a1" coming out of the unit.
- Try to connect unit to "developers.aceinna.com" and check incoming data
If unit connected successfully it's possible to change unit settings.
Please note though that settings related to the serial port are not saved permanently - only CAN-related settings which can be changed from CAN bus side.
- Try to see if
The request and response format is provided on this page:
https://openimu.readthedocs.io/en/latest/tutorial/CAN/CAN_J1939_SetCommandMessages.html
The status of mag alignment needs to be periodically polled while system does full circle (plus some)
After alignment finishes the values can be permanently stored
You can flash binary images via serial port using python driver bootloader.py. To get detailed instructions please provide FW version of unit you have.
@Jack-Morrison We'll try to optimize OpenIMU330 to rid of some features to see if there is possibility to squeeze in INS application. originally it was not designed for that.
@Jack-Morrison OpenIMU300BI pinout documentation updated to reflect MCU pins routed to external BGA contacts. Please check it here (excel file):
As a workaroung please change line 350 in the file lib\Core\UARTComm\CommonMessages.c to next:
pld->pos[i] = dData[i];
This will be fixed in next release
Also binary image with this fix will be published on aceinna developers website.
@sharat You can flash Framework or IMU example into IMU and performance should be the same. If calibration damaged (data is all 0 or does not make sense) you ask our support team to create image for you with required calibration data if you provide IMU serial number. After you receive this image - you will need to flash it by ST-Link from address 0x08000000 and you will need to write protect sectors 0 and 2.
Actually, try to check if these sectors write protected first and protect if not before requesting image. Also you can capture image of you unit from address 0x08000000 with length 0x80000 , save it to file and send to support team for checking.
You can flash in available Framework or IMU application examples for that. It will work unless you did not damage unit calibration
Have you created this new packet?
"EP" is not in default list of available packets.
And the message you see it's NAK message - seems like system does not recognize the packet
Hi Sylvain.
I'm assuming that the question is about OpenIMU300ZA(ZI).
Usually upload process does not damage bootloader.
Please try next:
- In platformio.ini change -O0 to -Og rebuild and reload unit via J-Tag. Recycle power and see if unit came up
- While J-Tag connected Click Debug->Start debugging. After application upload (debugger stopped in main) hit RUN. Unit should come up. Then disconnect Jtag and recycle power.
If none of these options helped - please repost message here. We'll make bootloader image available and provide instructions.
HandleUserOutputPacket is called from underlying messaging engine. The source will be available in upcoming release. Meanwhile you can try send different types of packets each cycle or even better - create your own new message with required parameters.
Serial channels can be arbitrary assigned to specific functionality. Please check next lines in the main.c in INS application example:
platformUnassignSerialChannels();
BOOL res;
res = platformAssignPortTypeToSerialChannel(USER_SERIAL_PORT, UART_CHANNEL_0);
while(!res){}; // check if valid
res = platformAssignPortTypeToSerialChannel(DEBUG_SERIAL_PORT, UART_CHANNEL_1);
while(!res){}; // check if valid
res = platformAssignPortTypeToSerialChannel(GPS_SERIAL_PORT, UART_CHANNEL_2);
while(!res){}; // check if valid
Andrey
The mag alignment process will be fully available in the next upcoming release. Documentation will be available online and Aceinna Navigation Studio will include support for mag alignment process.
SPI interface support for OpenIMU300ZA will be available in next upcoming release.
It will be structured as open framework to be filled by users.
In this framework implementation of few commands/responses will be provided for reference.
SPI protocol description will be published at the same time.
Hi Jonas
Please provide more information: what application you are working on? What are baudrates for user and debug channels, what are packet rates and debug messages rates
Andrey
So far it can be done only via MTLT305 serial port requesting S0 or S1 message. Unit will respond ASAP. Unfortunately there is no dedicated HW signal on MTLT305 interface connectot to synchronize it with external signal.