New tinyprog problems under Ubuntu


#1

Just a quick note. For people (late to) upgrading their Ubuntu installation to Ubuntu 18.04.2 LTS (or near version) the helpful /etc/udev rules that have been successfully separating us from nasty ModemManager issues are no longer being processed.

It was a nasty shock returning to my beloved TinyFPGA after a month with Icarus to find that the board would no longer program.

The remedy (once again) is to disable the ModemManager.

Here’s an Arduino person talking to someone from ModemManager team

Mr ModemManager seems mystified as to why we should be saying we’re a AT device… Perhaps if we find where that happens all this ModemManager horror will go away.

Meanwhile

sudo systemctl stop ModemManager.service

Will stop the service. And the following will disable it.

sudo systemctl disable ModemManager.service


#2

I wonder if this is it… @ `h022

usb_serial_ctrl_ep.v

  // interface descriptor, USB spec 9.6.5, page 267-269, Table 9-12
  'h01B : in_ep_data <= 9; // bLength
  'h01C : in_ep_data <= 4; // bDescriptorType
  'h01D : in_ep_data <= 0; // bInterfaceNumber
  'h01E : in_ep_data <= 0; // bAlternateSetting
  'h01F : in_ep_data <= 1; // bNumEndpoints
  'h020 : in_ep_data <= 2; // bInterfaceClass (Communications Device Class)
  'h021 : in_ep_data <= 2; // bInterfaceSubClass (Abstract Control Model)
  'h022 : in_ep_data <= 1; // bInterfaceProtocol (AT Commands: V.250 etc)  <<<<<<<<<<<<<<
  'h023 : in_ep_data <= 0; // iInterface

Or maybe there are many others.

There are many fields in the USB spec… !!

I’ll experiment a little when I’m more awake.

Here is some more discussion supporting the idea that a zero in the bInterfaceProtocol field @ 'h022 will fix this…