The import on a Kobo ereader not completing is usually caused by a book with an error in it. Each time you eject the device, it searches for changes (new, changed or removed books). If it finds any changes, it will start remove from the database the missing books and the changed books. It will then start the import process for the new books. At this point the changed books are treated as new books.
If a book cannot be imported, the complete import process is stopped. Any books that imported before the book in error will be shown in the interface, and are in the database on the device. The rest will not be shown. If you connect and disconnect again, the import will be attempted again, but, the same error will probably happen for the book in error and no more books will be imported. When you connect to calibre, these books are not displayed in the device list as they are not in the database on the device. The KoboTouch driver reads the database to find the books and does not look for any books that are not in the database.
To fix this, you need to find the book that is causing the problem and remove it. Then fix the errors in it before before sending it to the device again. Unfortunately, there is no indication of what book is the problem. If you remove all books that have not been imported to the database, you can then send them in smaller batches, or one at a time, until you find the one in error. When you find it you can attempt to fix it. If the problem book is an epub, open it in the calibre editor. Then, run the error check and fix any errors that are found. That should solve things. For other formats, or if this does not fix the problem, I would need to see the book to work out what is happening.
One other thing possibility happens if you are using the KoboTouchExtended driver to transform the books to kepubs when sent. If the driver cannot do the transformation, it options for what happens. It is possible it won't actually send the book to the device. But, I think from your screenshots, the books are on the device after the after the send-to-device jobs are finished.
Note: After sending a new book to the device and before ejecting it, calibre will show the book as on the device. This is basically because it has recorded it sent the book and has not refreshed the list of books from the device. If that is done, such as by restarting calibre, the newly sent books will not be seen.
|