Archon X1 Programming Thread (questions and experiences)

Here is the PDF file with vector graphics you can use to cut the bulk capacitors isolators to prevent the possible shortage. I laser cut it out of 1mm thick copper free fiberglass sheet



1748479158847.png


1748478740459.png


1748478766025.png


1748478793494.png


1748478816394.png
 
Please keep the updates coming. I am very interested in where this is going for possible use in the future.
 
Sure.

Here is how you can connect ST-Link 2 externally outside the motor for firmware flashing so you do not need to disassemble the motor and even do not need to remove the motor from the frame (you can route the cables under the side plastic cover of the motor).

Here is the list of parts you need

One Molex Picoblade 6 positions plug cable with long wires (part number 0151340606 should work)


One Molex SL 10 positions receptacle (part number 0022552102 )


At least 5 of Molex terminals for the SL receptacle for 24-30AWG wires (part number 0016021116 )


1748543398651.png


Plug one end of the Molex Picoblade cable to the Molex connector on the controller and route the cable to the motor opening where the rubber grommet of the controller wiring harness seats


1748543497577.png


1748543548944.png


1748543588058.png


Mark the wires where you want to trim them and cut it to the necessary length

1748543704564.png



1748543743836.png


Strip the wires and crimp the terminals on them

1748543822463.png


1748543849679.png


Stick the terminals in the receptacle matching the pins markings on the ST-Link 2 and the markings on the controller Molex connector.

You need to connect 5 wires (NRST to RST, SWDIO to SWDIO, GND to GND, SWCLK to SWCLK, +3.3V to 3.3V. The SWO wire on the Molex plug can be removed from the plug and from the cable, you just need 5 wires).


1748544311484.png


1748544576998.png


Round or chamfer the edge of the motor gears plastic shroud at the controller wiring harness grommet with a file to avoid damaging the wires


1748544651412.png


1748544666769.png


Connect the programming cable to the controller and route it outside the motor laying the cable on top of the rubber grommet and securing it with vinyl tape.

1748544813132.png


1748544848310.png


Assemble the motor laying the gasket on top of the cable (the new cable should be sandwiched between the rubber grommet and the gasket on top of it)

1748544995832.png


Connect the ST-Link 2 dongle and check if it works.

IMPORTANT: Before connecting the ST-Link 2 make sure the battery is disconnected from the motor and the capacitors of the controller are discharged otherwise you can brick the ST-Link 2 dongle. To discharge the capacitors of the controller disconnect the battery from the controller and press and hold POWER button on the bicycle display (it will briefly turn the display on and suck the rest of the energy from the capacitors). Press and hold the display power button for a few times and maybe wait for a few minutes after this before sticking the ST-Link 2 dongle into the cable.

I recommend to use this ST-Link 2. Those have plastic bodies so there is no risk of internal shortage on the aluminum body (some ST-Link 2 dongles have aluminum body) and they are cheap (you can purchase 5 of those for cheap and if one of them does not work or bricked you can use other one)


1748545042447.png


So now you can connect both VESC Express dongle and ST-Link 2 dongle externally without disassembling the motor and even probably without removing the motor from the bicycle frame

1748545705421.png


This is a good setup for VESC firmware developing stage and probably is not necessary once we have figured out how to make the VESC firmware works. But if you are planning to use it permanently you can also isolate the back side of that new receptacle with some marine adhesive sealant and tape the other openings with electrical tape to protect it from the environment.

1748545855561.png
 
Last edited:
The motor with controller CAD model can be downloaded or checked on the GrabCAD


1748631251695.jpeg


1748631467186.png


You can use it for reference to see the cables connections and proper cables routing.

The motor controller area is precisely reverse engineered and can be used as a reliable reference.
 
I designed a cheap version of the AMPLIFIER board for regular copper weight (1oz) and regular through hole vias (the original design of the AMPLIFIER board with heavy copper and blind vias is quite expensive) and this cheap version it is about $2 per PCB if you order 5 of those on JLCPCB website. I have not built it yet and have not uploaded the files but if you want to build it and experiment with VESC firmware I can share the KiCAD and Gerber files with you.

Two other PCB boards of the controller are even cheaper and are good as is.

This board should to be 0.8 mm thick and you have to cut and glue 0.4mm thick isolation layer on the bottom of the board after soldering the components. The isolation layer can be cut out of 0.4mm thick fiberglass board and glued on the bottom of the AMPLIFIER board with high temperature epoxy glue or potting compound.


1748661495266.png


1748666031615.png


1748666058237.png
 
Last edited:
Alright, great news, I think I fixed it. Just soldered a new AD8418WBRMZ chip, and the shortage is gone. So it looks like it is going to work. Now I need to repair the motor shaft (the current one wobbles and can hit the rotary encoder again). I am planning to use the new 15 teeth rotor with new second gear and hope the motor will work without issues.

View attachment 189838

View attachment 189839
Wow, that's interesting. If you're still looking for software, Exforce offers it. Look https://www.facebook.com/profile.php?id=61564436789646 , I had my controller flashed to the software and I'm thrilled.
 
I played around a little bit and was finally able to connect via VESC Tool to my Innotrace X1!

First I made connection using a simple USB to CAN adapter (e.g. canable) and tried to send common VESC CAN commands (VESC CAN-Bus Communication). I got no response and assumed it has been either completely disabled or hidden.. Its known for manufacturers that they wanna hide the fact, that they are stealing code: Here is another example, where a Torp TC500 controller has been torn apart. I gave it a try and brute-forced, by sending every combination possible... It took a few months, but one day, when I checked for my logs, the controller started talking back, because of one specific message I sent: 00D431FF # 14 78 00 00 00 00 00 00. It appears to be a "magic message", that enables usage with VESC Tool, once sent:

View attachment 165484

For connecting I used CAN-Forward on a VESC-Express. You can do the same thing with any VESC controller. I used a VESC-Express which is simpler, because it's powered by USB-C. It pops up as secondary CAN-device out of nowhere and it's possible to read and write motor parameters like maximum wattage, motor current, ...

View attachment 165485

CAN-connection is already available from the outside! Here is the pinout for the black connector (04R-JWPF-VSLE-S) of the M620-motor:
Code:
      ╭──╮
╭─────┘══┖─────╮
│ ☐  ☐  ☐  ⨯ │
╰──────────────╯
  │   │   │  ┖> x not used
  │   │   ┖───> H CAN-H ───┐    green
  │   ┖───────> G GND    [120Ω] is already in place!
  ┖───────────> L CAN-L ───┚    yellow

Here is the exact instruction:

- Download and install VESC Tool program on your computer


- Obtain VESC Express dongle


- Connect the VESC Express dongle to the black connector (04R-JWPF-VSLE-S) of the M620-motor (Please note the VESC Express dongle requires 5V power source also to work so you might need to figure out this additionally)



- Connect USB cable to the computer and to the VESC Express dongle as Dedo posted earlier

You can make a cable also for convenience


The display with wiring harness should be connected to the motor too (to be able to turn the controller ON)

1748967923823.png


- Connect the battery

1748967955301.png


- Turn the display ON (to power the controller)

1748968009371.png


-Launch the VESC Tool program on your computer and make sure the VESC Express is supplied with 5V power.

-Follow these steps:

1) Press "CONNECT" button in the VESC Tool program

1748968344267.jpeg


2) Select "CAN Analyzer" in the menu
3) Select option "True" in the "Extended" field
4) Print 0x00D431FF in the "ID" field
5) Print 20 in the "D0" field
6) Print 120 in the "D1" field
7) Click "Send"

1748968451724.jpeg



8) Click "Scan CAN"

1748968723480.jpeg


9) Select "X1" in the menu
10) Click "OK" on the appeared message

1748968792009.jpeg


11) Select "General" in the menu under the "Motor Settings"

1748968824551.jpeg


Now you can change the motor settings.

Please note the Bafang display has time set after which it will turn the controller off if it is inactive. You can press + or - buttons on the display time to time to prevent turning the controller off while you work with it in the VESC Tool program.

Here are the settings for 14S 52V 60A battery you can start with

1748969182567.jpeg


1748969191574.jpeg



1748969198804.jpeg



1748969206641.jpeg



1748969215537.jpeg


1748969225327.jpeg



1748969234747.jpeg




1748969242300.jpeg


1748969252609.jpeg


After changing the settings click the write motor configuration button.

Do not change the settings if you do not know what you are doing because of you can damage your motor or your controller.

1748969927201.png
 
Last edited:
Back