Menu

Curiosity Nano ( USB Support)

2022-12-10
2023-11-10
  • Jose Morales

    Jose Morales - 2022-12-10

    Hello Mikael et all!

    Quick question, I have been able to successfully compile AVR Code and Pic18 Code, now trying to target the Curiosity Nano... I followed the tutorial, successfully compiles after steep curve with version 6 of MPLAB and found that moving to windows was the only way to make it work...

    I have manged to create the config.c entry of the configuration bits for the PIC24FJ64GU205, it tells me that it is loaded, but I can find the right pins for the uart on the board. Also, the USB support is not working, not sure how to add that in the includes.

    Any tips? You don't have to give me step by step, just a guick do this... add that ect would help me.
    If you can . You mentioned a linker script, but I did not find one...

    This is what I tried,

    added include to your source... ff-pic24-30-33.S

    ;**********
    .include "xc.inc"
    .include "ff24.inc"
    .include "cdc-bss.S"

    ../src/cdc-bss.s: Assembler messages:
    ../src/cdc-bss.s:65: Error: symbol bdt_base' is already defined ../src/cdc-bss.s:66: Error: symbolep0ocnt' is already defined
    ../src/cdc-bss.s:67: Error: symbol ep0ostat' is already defined ../src/cdc-bss.s:68: Error: symbolep0oadr' is already defined
    ../src/cdc-bss.s:69: Error: symbol ep0icnt' is already defined ../src/cdc-bss.s:70: Error: symbolep0istat' is already defined
    ../src/cdc-bss.s:71: Error: symbol ep0iadr' is already defined ../src/cdc-bss.s:72: Error: symbolep1ocnt' is already defined
    ../src/cdc-bss.s:73: Error: symbol ep1ostat' is already defined ../src/cdc-bss.s:74: Error: symbolep1oadr' is already defined
    ../src/cdc-bss.s:75: Error: symbol ep1icnt' is already defined ../src/cdc-bss.s:76: Error: symbolep1istat' is already defined
    ../src/cdc-bss.s:77: Error: symbol ep1iadr' is already defined ../src/cdc-bss.s:78: Error: symbolep2ocnt' is already defined
    ../src/cdc-bss.s:79: Error: symbol ep2ostat' is already defined ../src/cdc-bss.s:80: Error: symbolep2oadr' is already defined
    ../src/cdc-bss.s:81: Error: symbol ep2icnt' is already defined ../src/cdc-bss.s:82: Error: symbolep2istat' is already defined
    ../src/cdc-bss.s:83: Error: symbol ep2iadr' is already defined ../src/cdc-bss.s:85: Error: symbolep0buf' is already defined
    nbproject/Makefile-default.mk:142: recipe for target 'build/default/production/_ext/1868380713/ff-pic24-30-33.o' failed
    ../src/cdc-bss.s:86: Error: symbol cdc_data_rx' is already defined make[2]: Leaving directory 'C:/Users/jose/ForthDev/flashforth-code/pic24/FF_24-30-33.X' ../src/cdc-bss.s:87: Error: symbolcdc_data_tx' is already defined
    ../src/cdc-bss.s:90: Error: symbol usb_status' is already defined ../src/cdc-bss.s:95: Error: symbolctrl_trf_state' is already defined
    ../src/cdc-bss.s:101: Error: symbol usb_device_state' is already defined ../src/cdc-bss.s:110: Error: symbolcount' is already defined
    ../src/cdc-bss.s:111: Error: symbol dPtr' is already defined ../src/cdc-bss.s:112: Error: symbolline_coding' is already defined
    ../src/cdc-bss.s:113: Error: symbol mem' is already defined ../src/cdc-bss.s:114: Error: symbolep2optr' is already defined
    ../src/cdc-bss.s:115: Error: symbol ep2iptr' is already defined ../src/cdc-bss.s:116: Error: symbolep2icount' is already defined
    ../src/cdc-bss.s:117: Error: symbol `ep2itmo' is already defined
    nbproject/Makefile-default.mk:91: recipe for target '.build-conf' failed
    make[1]: Leaving directory 'C:/Users/jemo0/ForthDev/flashforth-code/pic24/FF_24-30-33.X'
    nbproject/Makefile-impl.mk:39: recipe for target '.build-impl' failed
    make[2]: [build/default/production/_ext/1868380713/ff-pic24-30-33.o] Error 255
    make[1]:
    [.build-conf] Error 2
    make: *** [.build-impl] Error 2

    BUILD FAILED (exit value 2, total time: 1s)

    Look forward to hearing back... Cheers.

     
  • Mikael Nordman

    Mikael Nordman - 2022-12-10

    Hi Jose.
    You need to add this into ff24.inc

    .ifdef __24FJ64GU205
    .equ FLASH_SIZE,     0xa800
    .equ RAM_SIZE,       0x2000
    .include "p24fj_ga_config.inc"
    .endif
    

    Do not include the USB code in the beginning of the ff main source file.
    In p24fj_ga_config.inc you need to include the USB code with

    .equ USB_CDC, 1
    

    And you need to define the operator UART

    .equ OPERATOR_UART, 3   ; 1=UART1 or 2=UART2 or 3=USB interface
    

    The serial port pins can be found in this document
    PIC24FJ64GU205_Curiosity_Nano_Schematics

     

    Last edit: Mikael Nordman 2022-12-10
  • Jose Morales

    Jose Morales - 2022-12-19

    Hello Mikael, great to greet you, and thank you so much for following up and giving us FlashForth.

    I was writing the message bellow, this is what is capture on Linux, I will follow up with the files this afternoon, as I don't have access to the windows system where I compiled the code and send the config files to make sure there is nothing strange going on.
    I also noticed that I was not able to establish a serial correction through RC9 RA11 like in the documentation and I did previously see a serial connection of FF on the board before I compiled.

    There is a error in the USB driver, I get error (43) in windows, and in Linux, this is the output:

    sudo dmesg | tail
    [719714.870501] usb usb1-port5: attempt power cycle
    [719715.526399] usb 1-5: new full-speed USB device number 64 using xhci_hcd
    [719715.526545] usb 1-5: Device not responding to setup address.
    [719715.734563] usb 1-5: Device not responding to setup address.
    [719715.942393] usb 1-5: device not accepting address 64, error -71
    [719716.070418] usb 1-5: new full-speed USB device number 65 using xhci_hcd
    [719716.070587] usb 1-5: Device not responding to setup address.
    [719716.278567] usb 1-5: Device not responding to setup address.
    [719716.486465] usb 1-5: device not accepting address 65, error -71
    [719716.486601] usb usb1-port5: unable to enumerate USB device

    ==> /var/log/syslog <==
    Dec 19 09:50:55 jemo-MBP kernel: [719714.870501] usb usb1-port5: attempt power cycle
    Dec 19 09:50:55 jemo-MBP kernel: [719715.526399] usb 1-5: new full-speed USB device number 64 using xhci_hcd
    Dec 19 09:50:55 jemo-MBP kernel: [719715.526545] usb 1-5: Device not responding to setup address.
    Dec 19 09:50:56 jemo-MBP kernel: [719715.734563] usb 1-5: Device not responding to setup address.
    Dec 19 09:50:56 jemo-MBP kernel: [719715.942393] usb 1-5: device not accepting address 64, error -71
    Dec 19 09:50:56 jemo-MBP kernel: [719716.070418] usb 1-5: new full-speed USB device number 65 using xhci_hcd
    Dec 19 09:50:56 jemo-MBP kernel: [719716.070587] usb 1-5: Device not responding to setup address.
    Dec 19 09:50:56 jemo-MBP kernel: [719716.278567] usb 1-5: Device not responding to setup address.
    Dec 19 09:50:56 jemo-MBP kernel: [719716.486465] usb 1-5: device not accepting address 65, error -71
    Dec 19 09:50:56 jemo-MBP kernel: [719716.486601] usb usb1-port5: unable to enumerate USB device

    Will follow up with the files...

    hyvää joulua!

     
  • Mikael Nordman

    Mikael Nordman - 2022-12-19

    The USB peripheral should be the same as the PIC24FJ128GB202 which is known to be working.
    What is your oscillator setup? The 24FJGU205 seems to have a bit different setup than the 24FJ128GB202.

     
  • Bernard Mentink

    Bernard Mentink - 2023-11-09

    @Jose Morales Did you manage to get this to work?

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.