DJI RoboMaster Development Boards now available
123Next >
19250 99 2019-8-6
Uploading and Loding Picture ...(0/1)
o(^-^)o
albertr
lvl.3
United States
Offline

Can you start on S1 in the meantime? Hi-res pictures of the S1 boards can be a good teaser while we are waiting on comparison to the big brother... just a hint ;-)

-albertr
2019-8-29
Use props
djiuser_1LAFG2ESJmOM
New

United States
Offline

Amazon sells a few CAN hats for PI's. for between $16 and $32, depending what you're looking for.


2019-8-30
Use props
albertr
lvl.3
United States
Offline

IMHO These CAN Bus  "hats" most likely are using SPI to CAN bridge chips and will require significant amount of CPU cycles to drive CAN at 2Mbit speed. I would suggest to try USB2CAN adapter or STM32 instead.

-albertr
2019-8-30
Use props
albertr
lvl.3
United States
Offline

rhoude57, any updates? or you like to tourch  us even more?

-albertr
2019-8-31
Use props
albertr
lvl.3
United States
Offline

Can you at least check what is the main MCU used on the motor control board? Is it some variant of STM32? STM32F427? Something else?

-albertr
2019-8-31
Use props
rhoude57 - YUL
lvl.4
Canada
Offline

albertr Posted at 8-31 11:13
rhoude57, any updates? or you like to torch  us even more?

-albertr

Sorry to make you linger so long, but I have some health issues that have taken over priorities for a few days in my life. Be back as soon as possible.
2019-8-31
Use props
albertr
lvl.3
United States
Offline

Oh sorry to hear that, take care of yourself and hope to see you well and healthy back soon.

-albertr
2019-8-31
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

albertr Posted at 8-29 15:26
Can you start on S1 in the meantime? Hi-res pictures of the S1 boards can be a good teaser while we are waiting on comparison to the big brother... just a hint ;-)

-albertr

Here's a photo of the motion control board.
2019-9-1
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

gpvillamil Posted at 8-6 14:59
Those have been available from DJI for a while, together with some motors, cables and other accessories.
Here's the store link: https://store.dji.com/category/robomaster?from=menu_products

"Buying from DJI directly seems to be about half the price of buying from Amazon"
SeeedStudio(dot)com also sells Robomaster parts for about the same price as DJI.
2019-9-1
Use props
albertr
lvl.3
United States
Offline

Duane Degn Posted at 9-1 07:15
Here's a photo of the motion control board.
[view_image]

Great, thank you Duane! Do you have by any chance other pictures of this board (maybe both sides) in higher resolution and/or different angles? Just trying to see if we can ID the chips on the board...

Does this board have a t serial UART exposed? USB port?

-albertr
2019-9-1
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

albertr Posted at 9-1 10:45
Great, thank you Duane! Do you have by any chance other pictures of this board (maybe both sides) in higher resolution and/or different angles? Just trying to see if we can ID the chips on the board...

Does this board have a t serial UART exposed? USB port?

I have some higher res photos but none of them look very good. I had something on the lens of my camera which blurs parts of the image.
I'm pretty sure the chip is MIMXRT1021CAF4A
Here's a Mouser link (if it shows up):
https://www.mouser.com/ProductDetail/771-MIMXRT1021CAF4A
The Mouser part number is: 771-MIMXRT1021CAF4A
These pictures aren't very clear but I'll share them anyway.

Here's the bottom of the board.

There's a conformal coating on both the top and bottom of the board which makes reading chip labels extra hard.
I was able to read the main chip's number but many of the other chips were harder to read.
The board had a USB port and it has a 3-pin servo style port labeled UART. The three pins of the UART port are labeled "R T G". I assume this if for Receive, Transmit and Ground. I haven't sniffed this lines yet.
DJI's FAQ mentions the UART and S-BUS ports are not supported. I tried to find the exact quote about the UART and S-BUS but I couldn't find it on the FAQ. I'm not sure, but I suspect the FAQ has been changed since I original read it over a month ago.
It's very disappointing to see the UART and S-BUS not being presently supported.
S-BUS is a common radio control protocol. It would be extremely useful to have access to this bus with a program.
2019-9-1
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

Here's a photo which almost lets one read the chip label.
2019-9-1
Use props
albertr
lvl.3
United States
Offline

Duane, thanks! It's very interesting that they departed from STM32 MCU family they use in a big brother. This i.MX CPU is faster with higher clock speed, but why would one need higher clock frequency on a toy car comparing to the real thing???  I think there're must be other reason(s)... maybe it's less expensive? Anyone has any ideas?

Anyways, looks like firmware is not compatible with the big brother, bummer.

Next to the CPU there is a 8-pin SOIC chip that looks like QSPI Flash, however I don't see any RAM chips around. So, without external RAM, this CPU has only 256KB build-in RAM, which means embedded linux is out of questions, but it can possibly run FreeRTOS or MQX RTOS. Does it look like unpopulated soldering pads for SD card slot on the other side of the board?

I think then next logical step would be to probe serial UART port (I concur that "R T G" most likely mean RX, TX, GND pins) to see which bootloader it runs (connect UART first @ 115200/8-N-1), then power up the board. You should see some messages spitted by the bootloader.  If we are lucky, it might even run u-boot, and maybe it will be able  to boot off the SD CARD (if it can be added).

-albertr

2019-9-1
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

albertr Posted at 9-1 15:47
Duane, thanks! It's very interesting that they departed from STM32 MCU family they use in a big brother. This i.MX CPU is faster with higher clock speed, but why would one need higher clock frequency on a toy car comparing to the real thing???  I think there're must be other reason(s)... maybe it's less expensive? Anyone has any ideas?

Anyways, looks like firmware is not compatible with the big brother, bummer.

"looks like QSPI Flash"
I agree. I can't read the text on the chip because of the conformal coating but I think I see the Windbond logo on it.
"embedded linux is out of questions"
I think the board at the top of the turret uses an embedded Linus of some sort. The top board is the real brains of the robot.
"Does it look like unpopulated soldering pads for SD card slot on the other side of the board?"
Yes. I'm pretty sure that what it is.
"I think then next logical step would be to probe serial UART port"
Agreed. I'll trying doing this in the next couple of days.
"maybe it will be able  to boot off the SD CARD"
From reading the datasheet I think there are jumpers which need to be set to get the controller to boot from different media. It might be possible to set the required jumpers but I don't know which pins need to be jumped yet.
2019-9-1
Use props
rhoude57 - YUL
lvl.4
Canada
Offline

albertr Posted at 9-1 15:47
Duane, thanks! It's very interesting that they departed from STM32 MCU family they use in a big brother. This i.MX CPU is faster with higher clock speed, but why would one need higher clock frequency on a toy car comparing to the real thing???  I think there're must be other reason(s)... maybe it's less expensive? Anyone has any ideas?

Anyways, looks like firmware is not compatible with the big brother, bummer.

This is the equivalent of the Type A Development Board, not the Type B, which does the heavy processing and runs algorithms on the RoboMaster big brother.

The NXP MIMXRT1021CAF4Ais a very nice Interface processor for the S1 Interface Module card. The following link points to the processor family product descrption.
https://www.nxp.com/docs/en/data-sheet/IMXRT1020IEC.pdf.

I'm looking forward to see what's hidden "under-the-hood" of the RoboMaster Type A Development Board.



2019-9-1
Use props
rhoude57 - YUL
lvl.4
Canada
Offline

albertr Posted at 9-1 15:47
Duane, thanks! It's very interesting that they departed from STM32 MCU family they use in a big brother. This i.MX CPU is faster with higher clock speed, but why would one need higher clock frequency on a toy car comparing to the real thing???  I think there're must be other reason(s)... maybe it's less expensive? Anyone has any ideas?

Anyways, looks like firmware is not compatible with the big brother, bummer.

Next to the CPU there is a 8-pin SOIC chip that looks like QSPI Flash, however I don't see any RAM chips around. So, without external RAM, this CPU has only 256KB build-in RAM, which means embedded linux is out of questions, but it can possibly run FreeRTOS or MQX RTOS. Does it look like unpopulated soldering pads for SD card slot on the other side of the board?

The board you are looking at is that of the Interface Module, sitting at the back of the S1, not the Intelligent Controller sitting on top. It is clear the Interface Module would never run any kind of embedded Linux, from my point-of-view.



2019-9-1
Use props
MarkusXL
lvl.4
United States
Offline

Hmmm meaty.  For starters, the soldering is pretty good. I hate seeing all the flux residue. I think at some point the Chinese manufacturers found that the nice touch of decent PC board cleaning did not reduce Field RMA so they all just skip it these days.   Blech.  At least I don't see any little tiny solder balls, those are killers.

Yes the main brain that runs Linux and Python is on top.  This board takes CAN bus data from the CPU up top to drive the whole robot. It also sends hit events from the hit detectors back up.  I'm not surprised the chip is quite capable because those mecanum wheels require some extra processing.  This board must also have the micro gyroscopes for orientation detection and must also send that data up top.  By the way, google up how those micro gyros work, it's fascinating, based on nanotechnology micro machines made of silicon.

It also must drive all the PID outputs and manage the UART. That means it can also handle bi-directional data transfer with the CPU up top. Wheeeee!o


I also suspect that it also has a JTAG interface for bring up and debug and to handle test modes, connected to that red connector labeled M0. That would be a secret proprietary protocol I'm sure.
2019-9-2
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

MarkusXL Posted at 9-2 06:22
Hmmm meaty.  For starters, the soldering is pretty good. I hate seeing all the flux residue. I think at some point the Chinese manufacturers found that the nice touch of decent PC board cleaning did not reduce Field RMA so they all just skip it these days.   Blech.  At least I don't see any little tiny solder balls, those are killers.

Yes the main brain that runs Linux and Python is on top.  This board takes CAN bus data from the CPU up top to drive the whole robot. It also sends hit events from the hit detectors back up.  I'm not surprised the chip is quite capable because those mecanum wheels require some extra processing.  This board must also have the micro gyroscopes for orientation detection and must also send that data up top.  By the way, google up how those micro gyros work, it's fascinating, based on nanotechnology micro machines made of silicon.

"This board must also have the micro gyroscopes for orientation detection"
Where the top board connects to the gimbal contains the gyros and accelerometers.
I'm pretty sure the main brain just tells the gimbal which position to hold. The micros and IMU in the gimbal itself maintain the position.
I've taken the gimbal apart a couple of times. I should have taken photos while it was in pieces but I'll make sure and take photos next time it's taken apart.
The PCB with the IMU is a pain to get to since the fasteners are blocked by the gimbal structure.
I'll also take photos of inside the brain box next time I take it apart.
2019-9-2
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

MarkusXL Posted at 9-2 06:22
Hmmm meaty.  For starters, the soldering is pretty good. I hate seeing all the flux residue. I think at some point the Chinese manufacturers found that the nice touch of decent PC board cleaning did not reduce Field RMA so they all just skip it these days.   Blech.  At least I don't see any little tiny solder balls, those are killers.

Yes the main brain that runs Linux and Python is on top.  This board takes CAN bus data from the CPU up top to drive the whole robot. It also sends hit events from the hit detectors back up.  I'm not surprised the chip is quite capable because those mecanum wheels require some extra processing.  This board must also have the micro gyroscopes for orientation detection and must also send that data up top.  By the way, google up how those micro gyros work, it's fascinating, based on nanotechnology micro machines made of silicon.

"I hate seeing all the flux residue."
I think that's a conformal coating.
I'm pretty DJI cleans the board and then coats it.
The hit detector PCB have a similar coating.
I tried to upload a photo but the forum isn't letting me do so today.
I'll try to upload some photos to my Hadaday IO page later today.
https://hackaday.io/project/167276-dji-robomaster-s1-hacks
2019-9-2
Use props
albertr
lvl.3
United States
Offline

If anyone is thinking of trying to swap S1 motion controller board out for robomaster type A board, be aware that the power voltage is not compatible. S1 has 3S battery, while robomaster boards need 4S-6S one.
I started to get feeling that DJI made S1 intentionally not compatible with the real thing. Actually thinking of all these discrepancies (connectors, battery voltage, CPU type), it won't be surprising if they have changed CAN Bus protocol for M3508I motor controllers to be incompatible with its big brother.  I think one should not assume that reading the source code in robomaster github repositories we can rely on the same protocols, architecture and logic in S1.

-albertr

2019-9-2
Use props
albertr
lvl.3
United States
Offline

Does anyone have idea of what is the purpose of having a dedicated "motion controller" board in S1? I guess there must be the reasons to have a 500MHz CPU in there with only 256KB of RAM? Just LED management and hit detection shouldn't need that much processing power? Maybe calculating motion with mecanum wheels is that complicated? Does anyone have any pointers on the math used to operate mecanum wheeled platform?

-albertr
2019-9-2
Use props
albertr
lvl.3
United States
Offline

Duane, do you have any pix of the "Intelligent Controller" board sitting on top of the S1 turret?
Any luck interfacing into serial port yet?

-albertr
2019-9-2
Use props
gpvillamil
lvl.4
Flight distance : 210226 ft
United States
Offline

albertr Posted at 9-2 08:47
Does anyone have idea of what is the purpose of having a dedicated "motion controller" board in S1? I guess there must be the reasons to have a 500MHz CPU in there with only 256KB of RAM? Just LED management and hit detection shouldn't need that much processing power? Maybe calculating motion with mecanum wheels is that complicated? Does anyone have any pointers on the math used to operate mecanum wheeled platform?

-albertr

CAN Bus decoding with minimal latency. Chip is overkill, but is still probably extremely inexpensive.
2019-9-2
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

albertr Posted at 9-2 08:47
Does anyone have idea of what is the purpose of having a dedicated "motion controller" board in S1? I guess there must be the reasons to have a 500MHz CPU in there with only 256KB of RAM? Just LED management and hit detection shouldn't need that much processing power? Maybe calculating motion with mecanum wheels is that complicated? Does anyone have any pointers on the math used to operate mecanum wheeled platform?

-albertr

"Does anyone have any pointers on the math used to operate mecanum wheeled platform?"
The math for Mecanum wheels isn't very intense. It's just a single trig equation for each motor. There's a thread on this forum which discusses the Mecanum equations. I haven't compared the equations with the ones I used but I doubt there's much difference.
I used a Rover 5 chassis with a set of Vex Mecanum wheels. I documented the project on my Hackaday IO page.
https://hackaday.io/project/4039-mecanum-wheeled-rover-5
I used a Parallax Propeller to receive the inputs from the radio and calculate the needed speed for each motor. The same Propeller microcontroller also monitored the 4 quadrature encoders to maintain the desired speed of each motor.
The motors of the S1 have an internal control which takes care of the speed/power management.

"do you have any pix of the "Intelligent Controller" board"
No, not yet. I've opened up the enclosure but I didn't take any photos at the time. I plan to do so in the future.

"Any luck interfacing into serial port yet?"
Not yet. My day job keeps getting in the way.
2019-9-2
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
United States
Offline

gpvillamil Posted at 9-2 11:44
CAN Bus decoding with minimal latency. Chip is overkill, but is still probably extremely inexpensive.

"CAN Bus decoding with minimal latency."
Agreed. I'm attempting to do with my favorite microcontroller (the Parallax Propeller) but the high baud makes capturing the data a challenge.

As I've mentioned elsewhere, the black CAN Bus uses 2Mpbs. The Motor Bus uses 921,600 some of the time. The baud is not consistent on the Motor Bus. My guess is the motors don't reply with the same precision timing as the Motion Control Board. This adds difficulty to trying to monitor the communication on the bus. I may need to resort to a dedicated CAN Bus chip to monitor the communications.
The microcontroller on the Motion Control Board had two FlexCAN ports. I'm pretty sure one of these ports uses pins 21 and 22 of the control chip. I looked at the schematic of a development board which uses the larger chip (144 pins) of the same family and the pin names used for the CAN bus match the pin names of pins 21 and 22 of the smaller chip (100 pins).
The CAN port pins don't directly connect with the CAN Bus ports. There's additional hardware between the pins and the physical port. The chip doesn't produce the differential signal directly. There's an external chip and some passives to convert the signal.
2019-9-2
Use props
albertr
lvl.3
United States
Offline

I would suggest to try any PIC/STM32 or even teensy board which has CAN buses. Any modern MCU nowadays has 100+ MHz clock frequency and if it has hardware integrated CAN controller (not external add-on on SPI bus),  it should have no trouble running 2Mbaud and beyond. As alternative you can try cheap USB2CAN adapters (which most likely have low spec STM32 inside), but then you limit yourself into using the code somebody wrote (unless you will re-flush it with your own code). I think for a short distance (within a lab work bench) you might get away without using differential CAN transceivers, maybe just replacing them with diodes?

-albertr
2019-9-2
Use props
albertr
lvl.3
United States
Offline

"The CAN port pins don't directly connect with the CAN Bus ports. There's additional hardware between the pins and the physical port. The chip doesn't produce the differential signal directly. There's an external chip and some passives to convert the signal."

If they are using CAN Bus, there should be a CAN Bus transceiver chip somewhere on the PCB of this board.

-albertr

2019-9-2
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
Offline

albertr Posted at 9-2 14:09
"The CAN port pins don't directly connect with the CAN Bus ports. There's additional hardware between the pins and the physical port. The chip doesn't produce the differential signal directly. There's an external chip and some passives to convert the signal."

If they are using CAN Bus, there should be a CAN Bus transceiver chip somewhere on the PCB of this board.

"there should be a CAN Bus transceiver chip somewhere on the PCB of this board."
There are chips on all the PCBs I've looked at which look like CAN transceivers. Here's an example of the type of chip I'm seeing.
https://www.mouser.com/ProductDetail/595-TCAN330GDCNR
Here's the chip on one of the hit detectors.

"try any PIC/STM32 or even teensy board which has CAN buses."
That's a good suggestion. I'll likely try a Teensy board since I've used those in the past.
"I think for a short distance (within a lab work bench) you might get away without using differential CAN transceivers, maybe just replacing them with diodes?"
Diodes might work for listening in on the CAN traffic but I doubt you're suggesting they can be used transmit on the  bus?
I can listen in on the bus with a RS-485 chip. I don't know if this sort of chip would work to transmit or not.
I'll likely make some small boards with the correct transceiver chip like the one I linked at Mouser. I'll try interfacing the chip with a Teensy microcontroller.
I took some photos of the inside of my Intelligent Controller. I'll likely post the photos to my Hackaday IO project since the forum complains if I upload photos which are too large.
2019-9-2
Use props
albertr
lvl.3
Offline

Duane Degn Posted at 9-2 19:13
"there should be a CAN Bus transceiver chip somewhere on the PCB of this board."
There are chips on all the PCBs I've looked at which look like CAN transceivers. Here's an example of the type of chip I'm seeing.
https://www.mouser.com/ProductDetail/595-TCAN330GDCNR

Meant only receiving the CAN packets for analysis,  not trying to send anything on the bus without proper transceivers. If you can post pictures of that intelligent controller board, that would be great!

Any luck with getting anything on a serial UART port?

-albertr
2019-9-2
Use props
albertr
lvl.3
Offline

Oh just realized that 2M baud requires a CAN FD controller, I think the MCU on teensy might not be capable of that.

-albertr
2019-9-3
Use props
rhoude57 - YUL
lvl.4
Offline

Duane Degn Posted at 9-2 12:29
"Does anyone have any pointers on the math used to operate mecanum wheeled platform?"
The math for Mecanum wheels isn't very intense. It's just a single trig equation for each motor. There's a thread on this forum which discusses the Mecanum equations. I haven't compared the equations with the ones I used but I doubt there's much difference.
I used a Rover 5 chassis with a set of Vex Mecanum wheels. I documented the project on my Hackaday IO page.

Here is a link to a paper on Mecanum wheel drive system kinematics:
https://www.fh-dortmund.de/roehrig/papers/roehrigCCTA17.pdf
2019-9-3
Use props
rhoude57 - YUL
lvl.4
Offline

Duane Degn Posted at 9-2 12:29
"Does anyone have any pointers on the math used to operate mecanum wheeled platform?"
The math for Mecanum wheels isn't very intense. It's just a single trig equation for each motor. There's a thread on this forum which discusses the Mecanum equations. I haven't compared the equations with the ones I used but I doubt there's much difference.
I used a Rover 5 chassis with a set of Vex Mecanum wheels. I documented the project on my Hackaday IO page.

And here is a link to a PowerPoint presentation that discusses the kinematics and computation of wheel controls for a variety of omindirectional drive systems, including Mecanum:
http://first.wpi.edu/Images/CMS/First/2008CON_Omni_Mackenzie.ppt
2019-9-3
Use props
albertr
lvl.3
Offline

Thanks, rhoude57. I have researched and have found some references too. Doesn't look too complicated, so I'm thinking of getting S1 now. Even if we cannot hack its controller boards, I can add an STM32 MCU capable of CAN FD   to try to control its motors. Basically, all I need from S1 is its four motors with speed controllers and mecanum wheels. It would be nice if DJI will release the code for M3508I speed controllers so we can see which capabilities they have. I specifically interested in odometry data. Are M3508I motors available for sale separately? I was trying to find them, but was not successful. One possible problems I see with these motors is that they are being powered by the 3S battery, would be interesting to see if this  controller/motor can take 6S voltage...

-albertr
2019-9-3
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
Offline

albertr Posted at 9-2 11:03
Duane, do you have any pix of the "Intelligent Controller" board sitting on top of the S1 turret?
Any luck interfacing into serial port yet?

Here's a photo of the top of the Intelligent Controller.


There are additional photos on my Hackday IO project page.
https://hackaday.io/project/1672 ... elligent-controller

I haven't tried interfacing with the serial port yet. It's still on my list of things to try.
2019-9-3
Use props
albertr
lvl.3
Offline

Great, thanks for the photos! Does anyone know what make/model are the CAN Bus connectors on the S1 boards and there they can be sourced from?

-albertr  
2019-9-3
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
Offline

albertr Posted at 9-3 16:07
Great, thanks for the photos! Does anyone know what make/model are the CAN Bus connectors on the S1 boards and there they can be sourced from?

-albertr

I haven't been able to find any connectors which match the ones used on the S1. I search all of the 2x2 0.1" pitch connectors at Mouser without finding a match. Searching Google also didn't bring success.
The pins are spaced 0.1" apart from each other. The plastic portion of the connector is larger than a standard 2x2 0.1' pitch connector.
A connector like the ones in the photo would work but they wouldn't be secure.

A connector like those in the photo could be used on the cable and the socket could be made using standard 0.1" male headers.
Of course using standard 0.1" parts could be connected incorrectly and cause serious problems.
It would certainly be possible to make matching connectors using Polymorph or other plastics. I imagine a 3D printed housing could be made to look presentable.
I wanted to charge my battery while inside the robot so I made this monstrosity.

By soldering wires to appropriate pads inside the charger, I can charge the S1's battery while inside the robot.
Something less hideous could be made to mate with the CAN bus connectors.
A commercially available connector would certainly make life easier.
2019-9-3
Use props
MarkusXL
lvl.4
Offline

That is a remarkable mod!  Can you please post some details?

>>Basically, all I need from S1 is its four motors with speed controllers and mecanum wheels.

Well, for $499...  that is still not a bad deal!  The wheels motor chassis are well designed and solid.  Looking around, pretty much impossible to duplicate for less $$$.
2019-9-3
Use props
albertr
lvl.3
Offline

If anyone from DJI is reading this, can you please share info on CAN Bus connectors used in S1 and where they can be sourced from?

-albertr
2019-9-3
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
Offline

MarkusXL Posted at 9-3 19:11
That is a remarkable mod!  Can you please post some details?

>>Basically, all I need from S1 is its four motors with speed controllers and mecanum wheels.

"Can you please post some details?"
I combined a XT30 connector with 2mm male header to make a mating connector for the S1's power cable.

The charger only uses the data line of the battery's I2C bus. So while the Motion Controller requires four connections, the charger only requires three connections with the battery.
The 2mm pitched header required some support in order to stay in position. I used the thermal plastic Polymorth to hold the small pins in place against the XT30 connector. Only one of the two 2mm pitched pins is electrically connected to the charger.

Here's the charger side of the cable.

It turns out once the S1's battery is pried open, it never quite fits in its slot the same. I made a loop of Tyvek which allowed me to pull the battery from it's slot but I wanted a way of charging the battery in situ.
While the battery was never quite the same after I opened it, the battery wasn't obviously mangled after my surgery. The charger wasn't so fortunate.

The photos shown here are linked from my Hackaday IO project page.
https://hackaday.io/project/167276-dji-robomaster-s1-hacks/log/168044-charger-investigation-and-modification

"Looking around, pretty much impossible to duplicate for less $$$."

I'll agree it just about impossible to duplicate in such a nice looking design. If all someone wants is a platform with motors and Mecanum wheels, then it's possible to make something for considerably less money.
While not nearly as sleek as the S1, I think my Mecanum wheeled robot using Vex wheels and a Rover 5 chassis was a lot of fun for about $200.
Of course by the time one adds computer vision, brushless motors, a turret mounted gun and all the other cool bells and whistles, $500 starts to look like a bargain. As soon I saw the price of the Robomaster S1, I immediately hit the "purchase" button. After watching a video of the robot in action, I was sure it was going to cost at least twice as much.
I won't link to my Hackday project page showing the Vex wheeled robot since I've already linked to one of my project pages. The Mecanum wheeled robot can easily be found by checking my other projects.
Here's the only linkable photo of the ~$200 robot I could find online. (The "Gallery" images won't let me link to them.)

Mecanum wheels really need motor controllers which can regulate the speed of the wheels not just the power to the wheels. I had initially tried making my robot by just adjusting the PWM to motors. This did not work well. The motors really need a PID type controller in order to move the motors at the desired speed. Motor (especially if under powered) don't necessarily move at a speed proportional to the PWM duty cycle. The S1's motor controllers are likely smart enough to control the speed with an appropriate PID type algorithm. I'm pretty sure the motor controllers are internal on the S1's motors.
2019-9-3
Use props
Duane Degn
Second Officer
Flight distance : 622234 ft
Offline

djiuser_1LAFG2ESJmOM Posted at 8-30 13:19
Amazon sells a few CAN hats for PI's. for between $16 and $32, depending what you're looking for.

"Amazon sells a few CAN hats"
I wasn't able to find a CAN interface on Amazon capable of 2Mbps. Most them max out at 1Mbps.
I'm thinking of making a small PCB for this chip.
https://www.mouser.com/ProductDetail/595-TCAN330GDCNR
These Texas Instruments chips claim 5Mbps speed.
I ordered a couple Teensy 4.0 boards today. I haven't found the exact specs of the CAN bus, but I'm hoping it can handle 2Mbps.
I think albertr is correct about needing a microcontroller with a dedicated CAN bus support in order to communicate with the S1's hardware.
Once I have the PCB designed (it will be a simple breakout board with a few passives), I'll certainly be willing to share the Gerber files in case anyone else is interested in using the above linked chips.
Small PCBs are very inexpensive at OSH Park.
2019-9-3
Use props
123Next >
Advanced
You need to log in before you can reply Login | Register now

Credit Rules